first commit
9
.editorconfig
Normal file
@ -0,0 +1,9 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
21
.gitignore
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
pnpm-debug.log*
|
||||
lerna-debug.log*
|
||||
|
||||
node_modules
|
||||
.DS_Store
|
||||
dist
|
||||
*.local
|
||||
|
||||
# Editor directories and files
|
||||
.idea
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
3
.npmrc
Normal file
@ -0,0 +1,3 @@
|
||||
strict-peer-dependencies=false
|
||||
auto-install-peers=true
|
||||
shamefully-hoist=true
|
11
.vscode/extensions.json
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"recommendations": [
|
||||
"antfu.vite",
|
||||
"antfu.iconify",
|
||||
"antfu.unocss",
|
||||
"vue.volar",
|
||||
"dbaeumer.vscode-eslint",
|
||||
"editorConfig.editorConfig",
|
||||
"uni-helper.uni-helper-vscode"
|
||||
]
|
||||
}
|
16
.vscode/launch.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Debug h5",
|
||||
"type": "chrome",
|
||||
"runtimeArgs": [
|
||||
"--remote-debugging-port=9222"
|
||||
],
|
||||
"request": "launch",
|
||||
"url": "http://localhost:5173",
|
||||
"webRoot": "${workspaceFolder}",
|
||||
"preLaunchTask": "uni:h5"
|
||||
}
|
||||
]
|
||||
}
|
56
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,56 @@
|
||||
{
|
||||
// Disable the default formatter, use eslint instead
|
||||
"prettier.enable": false,
|
||||
"editor.formatOnSave": false,
|
||||
|
||||
// Auto fix
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.fixAll.eslint": "explicit",
|
||||
"source.organizeImports": "never"
|
||||
},
|
||||
|
||||
// Silent the stylistic rules in you IDE, but still auto fix them
|
||||
"eslint.rules.customizations": [
|
||||
{ "rule": "style/*", "severity": "off", "fixable": true },
|
||||
{ "rule": "format/*", "severity": "off", "fixable": true },
|
||||
{ "rule": "*-indent", "severity": "off", "fixable": true },
|
||||
{ "rule": "*-spacing", "severity": "off", "fixable": true },
|
||||
{ "rule": "*-spaces", "severity": "off", "fixable": true },
|
||||
{ "rule": "*-order", "severity": "off", "fixable": true },
|
||||
{ "rule": "*-dangle", "severity": "off", "fixable": true },
|
||||
{ "rule": "*-newline", "severity": "off", "fixable": true },
|
||||
{ "rule": "*quotes", "severity": "off", "fixable": true },
|
||||
{ "rule": "*semi", "severity": "off", "fixable": true }
|
||||
],
|
||||
|
||||
// Enable eslint for all supported languages
|
||||
"eslint.validate": [
|
||||
"javascript",
|
||||
"javascriptreact",
|
||||
"typescript",
|
||||
"typescriptreact",
|
||||
"vue",
|
||||
"html",
|
||||
"markdown",
|
||||
"json",
|
||||
"jsonc",
|
||||
"yaml",
|
||||
"toml",
|
||||
"xml",
|
||||
"gql",
|
||||
"graphql",
|
||||
"astro",
|
||||
"svelte",
|
||||
"css",
|
||||
"less",
|
||||
"scss",
|
||||
"pcss",
|
||||
"postcss"
|
||||
],
|
||||
|
||||
// Enable file nesting
|
||||
"explorer.fileNesting.enabled": true,
|
||||
"explorer.fileNesting.patterns": {
|
||||
"vite.config.*": "pages.config.*, manifest.config.*, uno.config.*, volar.config.*, *.env, .env.*"
|
||||
}
|
||||
}
|
16
.vscode/tasks.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"label": "uni:h5",
|
||||
"type": "npm",
|
||||
"script": "dev --devtools",
|
||||
"isBackground": true,
|
||||
"problemMatcher": "$vite",
|
||||
"group": {
|
||||
"kind": "build",
|
||||
"isDefault": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
21
LICENSE
Normal file
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2023-PRESENT KeJun
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
31
README.md
Normal file
@ -0,0 +1,31 @@
|
||||
<p align="center">
|
||||
<img src="https://github.com/uni-helper/vitesse-uni-app/raw/main/.github/images/preview.png" width="300"/>
|
||||
</p>
|
||||
|
||||
<h2 align="center">
|
||||
Vitesse for uni-app
|
||||
</h2>
|
||||
<p align="center">
|
||||
<a href="https://vitesse-uni-app.netlify.app/">📱 在线预览</a>
|
||||
<a href="https://vitesse-docs.netlify.app/">📖 阅读文档</a>
|
||||
</p>
|
||||
|
||||
## 特性
|
||||
|
||||
- ⚡️ [Vue 3](https://github.com/vuejs/core), [Vite](https://github.com/vitejs/vite), [pnpm](https://pnpm.io/), [esbuild](https://github.com/evanw/esbuild) - 就是快!
|
||||
|
||||
- 🗂 [基于文件的路由](./src/pages)
|
||||
|
||||
- 📦 [组件自动化加载](./src/components)
|
||||
|
||||
- 📑 [布局系统](./src/layouts)
|
||||
|
||||
- 🎨 [UnoCSS](https://github.com/unocss/unocss) - 高性能且极具灵活性的即时原子化 CSS 引擎
|
||||
|
||||
- 😃 [各种图标集为你所用](https://github.com/antfu/unocss/tree/main/packages/preset-icons)
|
||||
|
||||
- 🔥 使用 [新的 `<script setup>` 语法](https://github.com/vuejs/rfcs/pull/227)
|
||||
|
||||
- 📥 [API 自动加载](https://github.com/antfu/unplugin-auto-import) - 直接使用 Composition API 无需引入
|
||||
|
||||
- 🦾 [TypeScript](https://www.typescriptlang.org/) & [ESLint](https://eslint.org/) - 保证代码质量
|
251
dataRender/1.json
Normal file
@ -0,0 +1,251 @@
|
||||
{
|
||||
"code": "00",
|
||||
"data": {
|
||||
"als_m12_id_max_monnum": "2",
|
||||
"als_m1_cell_nbank_allnum": "1",
|
||||
"als_d15_cell_nbank_week_allnum": "0",
|
||||
"als_d15_id_nbank_allnum": "1",
|
||||
"als_m12_id_min_monnum": "0",
|
||||
"als_m3_id_max_monnum": "1",
|
||||
"als_m12_cell_min_inteday": "14",
|
||||
"als_m6_cell_nbank_max_inteday": "46",
|
||||
"als_d15_cell_nbank_selfnum": "0",
|
||||
"als_d15_cell_nbank_sloan_allnum": "1",
|
||||
"als_m3_id_nbank_orgnum": "2",
|
||||
"als_m12_cell_nbank_ca_allnum": "2",
|
||||
"als_m1_id_nbank_week_orgnum": "0",
|
||||
"als_m6_id_nbank_orgnum": "2",
|
||||
"als_m3_cell_min_monnum": "1",
|
||||
"als_m6_id_avg_monnum": "1.00",
|
||||
"als_m6_cell_nbank_orgnum": "2",
|
||||
"DataStrategy": {
|
||||
"strategy_version": "1.0",
|
||||
"product_type": "100099",
|
||||
"strategy_id": "DTA_BR0007512",
|
||||
"product_name": "预置_借贷意向验证",
|
||||
"scene": "lend"
|
||||
},
|
||||
"als_d15_id_rel_orgnum": "1",
|
||||
"als_m3_cell_nbank_cf_orgnum": "1",
|
||||
"als_m12_cell_nbank_sloan_orgnum": "2",
|
||||
"als_fst_id_nbank_inteday": "264",
|
||||
"als_m1_id_nbank_allnum": "1",
|
||||
"als_m6_cell_nbank_max_monnum": "1",
|
||||
"als_m12_cell_caon_allnum": "2",
|
||||
"als_m1_cell_nbank_cf_allnum": "1",
|
||||
"als_m6_cell_nbank_night_allnum": "1",
|
||||
"als_m12_id_nbank_night_allnum": "1",
|
||||
"als_m3_cell_caon_orgnum": "1",
|
||||
"als_m12_id_nbank_avg_monnum": "1.20",
|
||||
"als_d15_cell_nbank_orgnum": "1",
|
||||
"als_m12_id_nbank_cf_allnum": "4",
|
||||
"als_m3_cell_nbank_orgnum": "2",
|
||||
"als_m12_id_nbank_sloan_allnum": "6",
|
||||
"als_m3_cell_min_inteday": "31",
|
||||
"als_m6_cell_nbank_sloan_allnum": "4",
|
||||
"als_m3_id_nbank_cf_allnum": "2",
|
||||
"als_m6_cell_nbank_avg_monnum": "1.00",
|
||||
"als_m12_id_nbank_max_monnum": "2",
|
||||
"als_m1_cell_nbank_sloan_allnum": "1",
|
||||
"als_m6_cell_nbank_ca_allnum": "2",
|
||||
"als_m3_id_min_inteday": "31",
|
||||
"als_m3_cell_caon_allnum": "1",
|
||||
"als_m6_id_nbank_cf_orgnum": "1",
|
||||
"als_m1_cell_nbank_night_orgnum": "0",
|
||||
"als_m1_id_nbank_cf_orgnum": "1",
|
||||
"als_m3_id_nbank_cf_orgnum": "1",
|
||||
"als_d15_cell_nbank_night_orgnum": "0",
|
||||
"als_m6_cell_nbank_night_orgnum": "1",
|
||||
"als_m12_id_nbank_night_orgnum": "1",
|
||||
"als_m3_id_nbank_avg_monnum": "1.00",
|
||||
"als_m3_id_min_monnum": "1",
|
||||
"als_lst_cell_nbank_csinteday": "1",
|
||||
"als_m12_cell_nbank_max_inteday": "128",
|
||||
"als_m6_cell_max_monnum": "1",
|
||||
"als_d15_cell_nbank_night_allnum": "0",
|
||||
"als_m12_cell_min_monnum": "0",
|
||||
"als_m3_id_nbank_max_monnum": "1",
|
||||
"als_m3_cell_max_monnum": "1",
|
||||
"als_m1_id_rel_orgnum": "1",
|
||||
"als_m1_cell_nbank_cf_orgnum": "1",
|
||||
"als_m12_id_nbank_orgnum": "2",
|
||||
"als_m1_cell_nbank_night_allnum": "0",
|
||||
"als_m3_cell_nbank_allnum": "3",
|
||||
"als_m3_id_nbank_night_allnum": "1",
|
||||
"als_d15_cell_rel_orgnum": "1",
|
||||
"als_d15_cell_nbank_cf_allnum": "1",
|
||||
"als_m6_cell_nbank_selfnum": "0",
|
||||
"als_m6_cell_caon_orgnum": "1",
|
||||
"als_m12_cell_nbank_sloan_allnum": "6",
|
||||
"als_m3_id_caon_allnum": "1",
|
||||
"als_m12_cell_nbank_night_orgnum": "1",
|
||||
"als_m12_id_min_inteday": "14",
|
||||
"als_m12_id_nbank_sloan_orgnum": "2",
|
||||
"als_m6_id_nbank_ca_allnum": "2",
|
||||
"als_d15_id_nbank_orgnum": "1",
|
||||
"als_m6_cell_nbank_cf_orgnum": "1",
|
||||
"swift_number": "3034309_20241022220649_604904CBA19",
|
||||
"als_m6_cell_nbank_tot_mons": "4",
|
||||
"als_m12_id_tot_mons": "5",
|
||||
"als_m12_id_avg_monnum": "1.20",
|
||||
"als_m3_id_nbank_sloan_orgnum": "2",
|
||||
"als_m3_cell_nbank_max_inteday": "38",
|
||||
"als_m1_id_nbank_orgnum": "1",
|
||||
"als_m12_id_nbank_cf_orgnum": "1",
|
||||
"als_m1_cell_nbank_orgnum": "1",
|
||||
"als_d15_cell_nbank_allnum": "1",
|
||||
"als_m6_id_max_monnum": "1",
|
||||
"als_m12_id_max_inteday": "128",
|
||||
"als_m3_cell_nbank_selfnum": "0",
|
||||
"als_m1_cell_nbank_selfnum": "0",
|
||||
"als_m12_id_nbank_ca_allnum": "2",
|
||||
"als_m6_id_nbank_night_allnum": "1",
|
||||
"als_m3_id_nbank_max_inteday": "38",
|
||||
"als_d15_id_nbank_selfnum": "0",
|
||||
"als_m6_id_nbank_avg_monnum": "1.00",
|
||||
"als_m12_cell_nbank_max_monnum": "2",
|
||||
"als_m6_cell_min_monnum": "0",
|
||||
"als_d15_cell_rel_allnum": "1",
|
||||
"als_m6_cell_nbank_cf_allnum": "2",
|
||||
"als_m12_id_nbank_selfnum": "0",
|
||||
"als_m6_id_nbank_sloan_orgnum": "2",
|
||||
"als_m1_cell_rel_allnum": "1",
|
||||
"als_m12_id_nbank_max_inteday": "128",
|
||||
"als_m6_cell_max_inteday": "46",
|
||||
"als_m6_id_caon_allnum": "2",
|
||||
"als_m6_id_nbank_night_orgnum": "1",
|
||||
"als_lst_id_nbank_consnum": "1",
|
||||
"als_m3_cell_nbank_max_monnum": "1",
|
||||
"als_m6_id_rel_allnum": "2",
|
||||
"als_m6_id_rel_orgnum": "1",
|
||||
"als_m6_id_nbank_sloan_allnum": "4",
|
||||
"als_m1_cell_rel_orgnum": "1",
|
||||
"als_m6_cell_tot_mons": "4",
|
||||
"als_m12_cell_nbank_min_inteday": "14",
|
||||
"als_m12_id_nbank_ca_orgnum": "1",
|
||||
"als_m6_id_caon_orgnum": "1",
|
||||
"als_m3_id_max_inteday": "38",
|
||||
"als_m6_cell_min_inteday": "31",
|
||||
"als_m3_cell_nbank_sloan_orgnum": "2",
|
||||
"als_m12_id_caon_orgnum": "1",
|
||||
"als_m1_id_nbank_night_orgnum": "0",
|
||||
"als_m6_cell_nbank_week_orgnum": "2",
|
||||
"als_m3_cell_rel_orgnum": "1",
|
||||
"als_m6_cell_rel_orgnum": "1",
|
||||
"als_m3_id_nbank_sloan_allnum": "3",
|
||||
"als_m12_cell_avg_monnum": "1.20",
|
||||
"flag_datastrategy": "1",
|
||||
"als_d15_id_nbank_cf_allnum": "1",
|
||||
"als_m3_cell_max_inteday": "38",
|
||||
"als_m12_cell_nbank_cf_allnum": "4",
|
||||
"flag_applyloanstr": "1",
|
||||
"als_m6_id_nbank_ca_orgnum": "1",
|
||||
"als_m3_id_rel_orgnum": "1",
|
||||
"als_m12_id_nbank_week_orgnum": "2",
|
||||
"als_m3_cell_nbank_tot_mons": "3",
|
||||
"als_m6_id_nbank_min_inteday": "31",
|
||||
"als_m3_id_nbank_ca_orgnum": "1",
|
||||
"als_m3_id_caon_orgnum": "1",
|
||||
"als_m12_cell_nbank_week_allnum": "2",
|
||||
"als_m1_cell_nbank_week_allnum": "0",
|
||||
"als_m12_id_nbank_week_allnum": "2",
|
||||
"als_m1_id_nbank_sloan_allnum": "1",
|
||||
"als_m3_cell_nbank_min_inteday": "31",
|
||||
"als_m12_id_nbank_allnum": "6",
|
||||
"als_m1_id_nbank_cf_allnum": "1",
|
||||
"als_m3_cell_avg_monnum": "1.00",
|
||||
"als_m6_id_nbank_tot_mons": "4",
|
||||
"als_lst_cell_nbank_inteday": "7",
|
||||
"als_m3_id_nbank_ca_allnum": "1",
|
||||
"als_m6_cell_caon_allnum": "2",
|
||||
"als_m6_id_max_inteday": "46",
|
||||
"als_m12_cell_rel_orgnum": "1",
|
||||
"als_m12_id_nbank_tot_mons": "5",
|
||||
"als_m12_cell_nbank_min_monnum": "0",
|
||||
"als_m6_id_tot_mons": "4",
|
||||
"als_m3_cell_tot_mons": "3",
|
||||
"als_m3_id_nbank_night_orgnum": "1",
|
||||
"als_m12_id_nbank_min_inteday": "14",
|
||||
"als_m12_id_rel_allnum": "4",
|
||||
"als_m6_cell_nbank_week_allnum": "2",
|
||||
"als_m3_id_rel_allnum": "2",
|
||||
"als_m12_cell_nbank_selfnum": "0",
|
||||
"als_m12_id_caon_allnum": "2",
|
||||
"als_m3_id_nbank_min_inteday": "31",
|
||||
"als_m12_cell_tot_mons": "5",
|
||||
"als_m12_id_rel_orgnum": "1",
|
||||
"als_m6_cell_nbank_ca_orgnum": "1",
|
||||
"als_d15_id_nbank_cf_orgnum": "1",
|
||||
"als_m6_id_nbank_min_monnum": "0",
|
||||
"als_m6_cell_avg_monnum": "1.00",
|
||||
"als_m12_cell_nbank_night_allnum": "1",
|
||||
"als_d15_cell_nbank_cf_orgnum": "1",
|
||||
"als_m6_id_nbank_week_allnum": "2",
|
||||
"als_m3_id_nbank_tot_mons": "3",
|
||||
"als_m3_cell_nbank_night_orgnum": "1",
|
||||
"als_m6_cell_nbank_sloan_orgnum": "2",
|
||||
"als_m3_cell_nbank_ca_allnum": "1",
|
||||
"als_m1_id_nbank_selfnum": "0",
|
||||
"als_m6_id_nbank_cf_allnum": "2",
|
||||
"als_m1_id_nbank_sloan_orgnum": "1",
|
||||
"als_m6_id_nbank_week_orgnum": "2",
|
||||
"als_m1_id_rel_allnum": "1",
|
||||
"als_m3_cell_nbank_min_monnum": "1",
|
||||
"als_m12_cell_max_monnum": "2",
|
||||
"als_m12_cell_nbank_allnum": "6",
|
||||
"als_d15_id_nbank_week_orgnum": "0",
|
||||
"als_m1_id_nbank_night_allnum": "0",
|
||||
"als_m6_id_min_inteday": "31",
|
||||
"als_m12_cell_rel_allnum": "4",
|
||||
"als_m6_id_nbank_max_inteday": "46",
|
||||
"als_m12_cell_caon_orgnum": "1",
|
||||
"als_d15_cell_nbank_week_orgnum": "0",
|
||||
"als_d15_cell_nbank_sloan_orgnum": "1",
|
||||
"als_m1_cell_nbank_sloan_orgnum": "1",
|
||||
"als_m3_id_nbank_selfnum": "0",
|
||||
"als_m1_cell_nbank_week_orgnum": "0",
|
||||
"als_d15_id_nbank_sloan_allnum": "1",
|
||||
"als_m3_cell_rel_allnum": "2",
|
||||
"als_d15_id_nbank_sloan_orgnum": "1",
|
||||
"als_m6_id_nbank_max_monnum": "1",
|
||||
"als_m6_cell_nbank_allnum": "4",
|
||||
"als_m3_cell_nbank_cf_allnum": "2",
|
||||
"als_m1_id_nbank_week_allnum": "0",
|
||||
"als_d15_id_rel_allnum": "1",
|
||||
"als_m12_cell_nbank_tot_mons": "5",
|
||||
"als_m3_id_tot_mons": "3",
|
||||
"als_m6_cell_rel_allnum": "2",
|
||||
"als_m12_cell_nbank_week_orgnum": "2",
|
||||
"als_lst_id_nbank_inteday": "7",
|
||||
"als_m6_id_nbank_selfnum": "0",
|
||||
"als_m6_id_min_monnum": "0",
|
||||
"code": "00",
|
||||
"als_m12_cell_nbank_ca_orgnum": "1",
|
||||
"als_m3_id_nbank_week_orgnum": "1",
|
||||
"als_d15_id_nbank_week_allnum": "0",
|
||||
"als_m3_id_nbank_min_monnum": "1",
|
||||
"als_m3_id_avg_monnum": "1.00",
|
||||
"als_d15_id_nbank_night_orgnum": "0",
|
||||
"als_m3_cell_nbank_night_allnum": "1",
|
||||
"als_fst_cell_nbank_inteday": "264",
|
||||
"als_m3_id_nbank_week_allnum": "1",
|
||||
"als_d15_id_nbank_night_allnum": "0",
|
||||
"als_m12_cell_nbank_orgnum": "2",
|
||||
"als_m3_cell_nbank_ca_orgnum": "1",
|
||||
"als_m3_cell_nbank_sloan_allnum": "3",
|
||||
"als_m12_cell_max_inteday": "128",
|
||||
"als_m6_cell_nbank_min_inteday": "31",
|
||||
"als_m12_id_nbank_min_monnum": "0",
|
||||
"als_lst_id_nbank_csinteday": "1",
|
||||
"als_lst_cell_nbank_consnum": "1",
|
||||
"als_m3_cell_nbank_week_orgnum": "1",
|
||||
"als_m12_cell_nbank_avg_monnum": "1.20",
|
||||
"als_m3_id_nbank_allnum": "3",
|
||||
"als_m6_id_nbank_allnum": "4",
|
||||
"als_m12_cell_nbank_cf_orgnum": "1",
|
||||
"als_m3_cell_nbank_avg_monnum": "1.00",
|
||||
"als_m6_cell_nbank_min_monnum": "0",
|
||||
"als_m3_cell_nbank_week_allnum": "1"
|
||||
},
|
||||
"flag_applyloanstr": "1"
|
||||
}
|
2093
dataRender/jdyx.txt
Normal file
55
dataRender/jdyxRender.js
Normal file
@ -0,0 +1,55 @@
|
||||
const fs = require('node:fs')
|
||||
const path = require('node:path')
|
||||
|
||||
// 读取文件路径
|
||||
const filePath = path.join(__dirname, 'jdyx.txt')
|
||||
|
||||
// 输出文件路径
|
||||
const outputFilePath = path.join(__dirname, 'output.json')
|
||||
|
||||
// 读取文件内容
|
||||
fs.readFile(filePath, 'utf8', (err, data) => {
|
||||
if (err) {
|
||||
console.error('读取文件失败:', err)
|
||||
return
|
||||
}
|
||||
|
||||
const records = []
|
||||
let currentRecord = ''
|
||||
let capturing = false // 是否正在捕获一条记录
|
||||
|
||||
// 按字符处理数据
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
const char = data[i]
|
||||
|
||||
// 检查是否找到 `als`
|
||||
if (!capturing && data.slice(i, i + 3) === 'als') {
|
||||
capturing = true // 开始捕获
|
||||
currentRecord = 'als' // 初始化记录
|
||||
i += 2 // 跳过已匹配的 "als"
|
||||
continue
|
||||
}
|
||||
|
||||
// 捕获状态下,遇到空格时结束记录
|
||||
if (capturing) {
|
||||
if (char === ' ') {
|
||||
records.push(currentRecord) // 保存当前记录
|
||||
capturing = false // 停止捕获
|
||||
currentRecord = '' // 重置记录
|
||||
}
|
||||
else {
|
||||
currentRecord += char // 继续捕获字符
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 将结果写入到JSON文件中
|
||||
fs.writeFile(outputFilePath, JSON.stringify(records, null, 2), (err) => {
|
||||
if (err) {
|
||||
console.error('写入文件失败:', err)
|
||||
}
|
||||
else {
|
||||
console.log(`记录已保存到文件: ${outputFilePath}`)
|
||||
}
|
||||
})
|
||||
})
|
41
dataRender/jdyxRender2.js
Normal file
@ -0,0 +1,41 @@
|
||||
const fs = require('node:fs')
|
||||
const path = require('node:path')
|
||||
|
||||
// 读取文件路径
|
||||
const inputFilePath = path.join(__dirname, 'output.json')
|
||||
|
||||
// 输出文件路径
|
||||
const outputFilePath = path.join(__dirname, 'word_list.json')
|
||||
|
||||
// 读取JSON文件
|
||||
fs.readFile(inputFilePath, 'utf8', (err, data) => {
|
||||
if (err) {
|
||||
console.error('读取文件失败:', err)
|
||||
return
|
||||
}
|
||||
|
||||
// 解析JSON内容
|
||||
const records = JSON.parse(data)
|
||||
|
||||
// 用于存储所有分割后的单词
|
||||
const wordSet = new Set()
|
||||
|
||||
// 遍历每个元素,将其按下划线分割
|
||||
records.forEach((record) => {
|
||||
const words = record.split('_')
|
||||
words.forEach(word => wordSet.add(word)) // 去重
|
||||
})
|
||||
|
||||
// 将Set转换为数组
|
||||
const uniqueWords = Array.from(wordSet)
|
||||
|
||||
// 将结果写入到新的JSON文件
|
||||
fs.writeFile(outputFilePath, JSON.stringify(uniqueWords, null, 2), (err) => {
|
||||
if (err) {
|
||||
console.error('写入文件失败:', err)
|
||||
}
|
||||
else {
|
||||
console.log(`单词列表已保存到文件: ${outputFilePath}`)
|
||||
}
|
||||
})
|
||||
})
|
822
dataRender/output.json
Normal file
@ -0,0 +1,822 @@
|
||||
[
|
||||
"als_d7_id_pdl_allnum",
|
||||
"als_d7_id_pdl_orgnum",
|
||||
"als_d7_id_caon_allnum",
|
||||
"als_d7_id_caon_orgnum",
|
||||
"als_d7_id_rel_allnum",
|
||||
"als_d7_id_rel_orgnum",
|
||||
"als_d7_id_caoff_allnum",
|
||||
"als_d7_id_caoff_orgnum",
|
||||
"als_d7_id_cooff_allnum",
|
||||
"als_d7_id_cooff_orgnum",
|
||||
"als_d7_id_af_allnum",
|
||||
"als_d7_id_af_orgnum",
|
||||
"als_d7_id_coon_allnum",
|
||||
"als_d7_id_coon_orgnum",
|
||||
"als_d7_id_oth_allnum",
|
||||
"als_d7_id_oth_orgnum",
|
||||
"als_d7_id_bank_selfnum",
|
||||
"als_d7_id_bank_allnum",
|
||||
"als_d7_id_bank_tra_allnum",
|
||||
"als_d7_id_bank_ret_allnum",
|
||||
"als_d7_id_bank_orgnum",
|
||||
"als_d7_id_bank_tra_orgnum",
|
||||
"als_d7_id_bank_ret_orgnum",
|
||||
"als_d7_id_bank_week_allnum",
|
||||
"als_d7_id_bank_week_orgnum",
|
||||
"als_d7_id_bank_night_allnum",
|
||||
"als_d7_id_bank_night_orgnum",
|
||||
"als_d7_id_nbank_selfnum",
|
||||
"als_d7_id_nbank_allnum",
|
||||
"als_d7_id_nbank_p2p_allnum",
|
||||
"als_d7_id_nbank_mc_allnum",
|
||||
"als_d7_id_nbank_ca_allnum",
|
||||
"als_d7_id_nbank_cf_allnum",
|
||||
"als_d7_id_nbank_com_allnum",
|
||||
"als_d7_id_nbank_oth_allnum",
|
||||
"als_d7_id_nbank_nsloan_allnum",
|
||||
"als_d7_id_nbank_autofin_allnum",
|
||||
"als_d7_id_nbank_sloan_allnum",
|
||||
"als_d7_id_nbank_cons_allnum",
|
||||
"als_d7_id_nbank_finlea_allnum",
|
||||
"als_d7_id_nbank_else_allnum",
|
||||
"als_d7_id_nbank_orgnum",
|
||||
"als_d7_id_nbank_p2p_orgnum",
|
||||
"als_d7_id_nbank_mc_orgnum",
|
||||
"als_d7_id_nbank_ca_orgnum",
|
||||
"als_d7_id_nbank_cf_orgnum",
|
||||
"als_d7_id_nbank_com_orgnum",
|
||||
"als_d7_id_nbank_oth_orgnum",
|
||||
"als_d7_id_nbank_nsloan_orgnum",
|
||||
"als_d7_id_nbank_autofin_orgnum",
|
||||
"als_d7_id_nbank_sloan_orgnum",
|
||||
"als_d7_id_nbank_cons_orgnum",
|
||||
"als_d7_id_nbank_finlea_orgnum",
|
||||
"als_d7_id_nbank_else_orgnum",
|
||||
"als_d7_id_nbank_week_allnum",
|
||||
"als_d7_id_nbank_week_orgnum",
|
||||
"als_d7_id_nbank_night_allnum",
|
||||
"als_d7_id_nbank_night_orgnum",
|
||||
"als_d7_cell_pdl_allnum",
|
||||
"als_d7_cell_pdl_orgnum",
|
||||
"als_d7_cell_caon_allnum",
|
||||
"als_d7_cell_caon_orgnum",
|
||||
"als_d7_cell_rel_allnum",
|
||||
"als_d7_cell_rel_orgnum",
|
||||
"als_d7_cell_caoff_allnum",
|
||||
"als_d7_cell_caoff_orgnum",
|
||||
"als_d7_cell_cooff_allnum",
|
||||
"als_d7_cell_cooff_orgnum",
|
||||
"als_d7_cell_af_allnum",
|
||||
"als_d7_cell_af_orgnum",
|
||||
"als_d7_cell_coon_allnum",
|
||||
"als_d7_cell_coon_orgnum",
|
||||
"als_d7_cell_oth_allnum",
|
||||
"als_d7_cell_oth_orgnum",
|
||||
"als_d7_cell_bank_selfnum",
|
||||
"als_d7_cell_bank_allnum",
|
||||
"als_d7_cell_bank_tra_allnum",
|
||||
"als_d7_cell_bank_ret_allnum",
|
||||
"als_d7_cell_bank_orgnum",
|
||||
"als_d7_cell_bank_tra_orgnum",
|
||||
"als_d7_cell_bank_ret_orgnum",
|
||||
"als_d7_cell_bank_week_allnum",
|
||||
"als_d7_cell_bank_week_orgnum",
|
||||
"als_d7_cell_bank_night_allnum",
|
||||
"als_d7_cell_bank_night_orgnum",
|
||||
"als_d7_cell_nbank_selfnum",
|
||||
"als_d7_cell_nbank_allnum",
|
||||
"als_d7_cell_nbank_p2p_allnum",
|
||||
"als_d7_cell_nbank_mc_allnum",
|
||||
"als_d7_cell_nbank_ca_allnum",
|
||||
"als_d7_cell_nbank_cf_allnum",
|
||||
"als_d7_cell_nbank_com_allnum",
|
||||
"als_d7_cell_nbank_oth_allnum",
|
||||
"als_d7_cell_nbank_nsloan_allnum",
|
||||
"als_d7_cell_nbank_autofin_allnum",
|
||||
"als_d7_cell_nbank_sloan_allnum",
|
||||
"als_d7_cell_nbank_cons_allnum",
|
||||
"als_d7_cell_nbank_finlea_allnum",
|
||||
"als_d7_cell_nbank_else_allnum",
|
||||
"als_d7_cell_nbank_orgnum",
|
||||
"als_d7_cell_nbank_p2p_orgnum",
|
||||
"als_d7_cell_nbank_mc_orgnum",
|
||||
"als_d7_cell_nbank_ca_orgnum",
|
||||
"als_d7_cell_nbank_cf_orgnum",
|
||||
"als_d7_cell_nbank_com_orgnum",
|
||||
"als_d7_cell_nbank_oth_orgnum",
|
||||
"als_d7_cell_nbank_nsloan_orgnum",
|
||||
"als_d7_cell_nbank_autofin_orgnum",
|
||||
"als_d7_cell_nbank_sloan_orgnum",
|
||||
"als_d7_cell_nbank_cons_orgnum",
|
||||
"als_d7_cell_nbank_finlea_orgnum",
|
||||
"als_d7_cell_nbank_else_orgnum",
|
||||
"als_d7_cell_nbank_week_allnum",
|
||||
"als_d7_cell_nbank_week_orgnum",
|
||||
"als_d7_cell_nbank_night_allnum",
|
||||
"als_d7_cell_nbank_night_orgnum",
|
||||
"als_d15_id_pdl_allnum",
|
||||
"als_d15_id_pdl_orgnum",
|
||||
"als_d15_id_caon_allnum",
|
||||
"als_d15_id_caon_orgnum",
|
||||
"als_d15_id_rel_allnum",
|
||||
"als_d15_id_rel_orgnum",
|
||||
"als_d15_id_caoff_allnum",
|
||||
"als_d15_id_caoff_orgnum",
|
||||
"als_d15_id_cooff_allnum",
|
||||
"als_d15_id_cooff_orgnum",
|
||||
"als_d15_id_af_allnum",
|
||||
"als_d15_id_af_orgnum",
|
||||
"als_d15_id_coon_allnum",
|
||||
"als_d15_id_coon_orgnum",
|
||||
"als_d15_id_oth_allnum",
|
||||
"als_d15_id_oth_orgnum",
|
||||
"als_d15_id_bank_selfnum",
|
||||
"als_d15_id_bank_allnum",
|
||||
"als_d15_id_bank_tra_allnum",
|
||||
"als_d15_id_bank_ret_allnum",
|
||||
"als_d15_id_bank_orgnum",
|
||||
"als_d15_id_bank_tra_orgnum",
|
||||
"als_d15_id_bank_ret_orgnum",
|
||||
"als_d15_id_bank_week_allnum",
|
||||
"als_d15_id_bank_week_orgnum",
|
||||
"als_d15_id_bank_night_allnum",
|
||||
"als_d15_id_bank_night_orgnum",
|
||||
"als_d15_id_nbank_selfnum",
|
||||
"als_d15_id_nbank_allnum",
|
||||
"als_d15_id_nbank_p2p_allnum",
|
||||
"als_d15_id_nbank_mc_allnum",
|
||||
"als_d15_id_nbank_ca_allnum",
|
||||
"als_d15_id_nbank_cf_allnum",
|
||||
"als_d15_id_nbank_com_allnum",
|
||||
"als_d15_id_nbank_oth_allnum",
|
||||
"als_d15_id_nbank_nsloan_allnum",
|
||||
"als_d15_id_nbank_autofin_allnum",
|
||||
"als_d15_id_nbank_sloan_allnum",
|
||||
"als_d15_id_nbank_cons_allnum",
|
||||
"als_d15_id_nbank_finlea_allnum",
|
||||
"als_d15_id_nbank_else_allnum",
|
||||
"als_d15_id_nbank_orgnum",
|
||||
"als_d15_id_nbank_p2p_orgnum",
|
||||
"als_d15_id_nbank_mc_orgnum",
|
||||
"als_d15_id_nbank_ca_orgnum",
|
||||
"als_d15_id_nbank_cf_orgnum",
|
||||
"als_d15_id_nbank_com_orgnum",
|
||||
"als_d15_id_nbank_oth_orgnum",
|
||||
"als_d15_id_nbank_nsloan_orgnum",
|
||||
"als_d15_id_nbank_autofin_orgnum",
|
||||
"als_d15_id_nbank_sloan_orgnum",
|
||||
"als_d15_id_nbank_cons_orgnum",
|
||||
"als_d15_id_nbank_finlea_orgnum",
|
||||
"als_d15_id_nbank_else_orgnum",
|
||||
"als_d15_id_nbank_week_allnum",
|
||||
"als_d15_id_nbank_week_orgnum",
|
||||
"als_d15_id_nbank_night_allnum",
|
||||
"als_d15_id_nbank_night_orgnum",
|
||||
"als_d15_cell_pdl_allnum",
|
||||
"als_d15_cell_pdl_orgnum",
|
||||
"als_d15_cell_caon_allnum",
|
||||
"als_d15_cell_caon_orgnum",
|
||||
"als_d15_cell_rel_allnum",
|
||||
"als_d15_cell_rel_orgnum",
|
||||
"als_d15_cell_caoff_allnum",
|
||||
"als_d15_cell_caoff_orgnum",
|
||||
"als_d15_cell_cooff_allnum",
|
||||
"als_d15_cell_cooff_orgnum",
|
||||
"als_d15_cell_af_allnum",
|
||||
"als_d15_cell_af_orgnum",
|
||||
"als_d15_cell_coon_allnum",
|
||||
"als_d15_cell_coon_orgnum",
|
||||
"als_d15_cell_oth_allnum",
|
||||
"als_d15_cell_oth_orgnum",
|
||||
"als_d15_cell_bank_selfnum",
|
||||
"als_d15_cell_bank_allnum",
|
||||
"als_d15_cell_bank_tra_allnum",
|
||||
"als_d15_cell_bank_ret_allnum",
|
||||
"als_d15_cell_bank_orgnum",
|
||||
"als_d15_cell_bank_tra_orgnum",
|
||||
"als_d15_cell_bank_ret_orgnum",
|
||||
"als_d15_cell_bank_week_allnum",
|
||||
"als_d15_cell_bank_week_orgnum",
|
||||
"als_d15_cell_bank_night_allnum",
|
||||
"als_d15_cell_bank_night_orgnum",
|
||||
"als_d15_cell_nbank_selfnum",
|
||||
"als_d15_cell_nbank_allnum",
|
||||
"als_d15_cell_nbank_p2p_allnum",
|
||||
"als_d15_cell_nbank_mc_allnum",
|
||||
"als_d15_cell_nbank_ca_allnum",
|
||||
"als_d15_cell_nbank_cf_allnum",
|
||||
"als_d15_cell_nbank_com_allnum",
|
||||
"als_d15_cell_nbank_oth_allnum",
|
||||
"als_d15_cell_nbank_nsloan_allnum",
|
||||
"als_d15_cell_nbank_autofin_allnum",
|
||||
"als_d15_cell_nbank_sloan_allnum",
|
||||
"als_d15_cell_nbank_cons_allnum",
|
||||
"als_d15_cell_nbank_finlea_allnum",
|
||||
"als_d15_cell_nbank_else_allnum",
|
||||
"als_d15_cell_nbank_orgnum",
|
||||
"als_d15_cell_nbank_p2p_orgnum",
|
||||
"als_d15_cell_nbank_mc_orgnum",
|
||||
"als_d15_cell_nbank_ca_orgnum",
|
||||
"als_d15_cell_nbank_cf_orgnum",
|
||||
"als_d15_cell_nbank_com_orgnum",
|
||||
"als_d15_cell_nbank_oth_orgnum",
|
||||
"als_d15_cell_nbank_nsloan_orgnum",
|
||||
"als_d15_cell_nbank_autofin_orgnum",
|
||||
"als_d15_cell_nbank_sloan_orgnum",
|
||||
"als_d15_cell_nbank_cons_orgnum",
|
||||
"als_d15_cell_nbank_finlea_orgnum",
|
||||
"als_d15_cell_nbank_else_orgnum",
|
||||
"als_d15_cell_nbank_week_allnum",
|
||||
"als_d15_cell_nbank_week_orgnum",
|
||||
"als_d15_cell_nbank_night_allnum",
|
||||
"als_d15_cell_nbank_night_orgnum",
|
||||
"als_m1_id_pdl_allnum",
|
||||
"als_m1_id_pdl_orgnum",
|
||||
"als_m1_id_caon_allnum",
|
||||
"als_m1_id_caon_orgnum",
|
||||
"als_m1_id_rel_allnum",
|
||||
"als_m1_id_rel_orgnum",
|
||||
"als_m1_id_caoff_allnum",
|
||||
"als_m1_id_caoff_orgnum",
|
||||
"als_m1_id_cooff_allnum",
|
||||
"als_m1_id_cooff_orgnum",
|
||||
"als_m1_id_af_allnum",
|
||||
"als_m1_id_af_orgnum",
|
||||
"als_m1_id_coon_allnum",
|
||||
"als_m1_id_coon_orgnum",
|
||||
"als_m1_id_oth_allnum",
|
||||
"als_m1_id_oth_orgnum",
|
||||
"als_m1_id_bank_selfnum",
|
||||
"als_m1_id_bank_allnum",
|
||||
"als_m1_id_bank_tra_allnum",
|
||||
"als_m1_id_bank_ret_allnum",
|
||||
"als_m1_id_bank_orgnum",
|
||||
"als_m1_id_bank_tra_orgnum",
|
||||
"als_m1_id_bank_ret_orgnum",
|
||||
"als_m1_id_bank_week_allnum",
|
||||
"als_m1_id_bank_week_orgnum",
|
||||
"als_m1_id_bank_night_allnum",
|
||||
"als_m1_id_bank_night_orgnum",
|
||||
"als_m1_id_nbank_selfnum",
|
||||
"als_m1_id_nbank_allnum",
|
||||
"als_m1_id_nbank_p2p_allnum",
|
||||
"als_m1_id_nbank_mc_allnum",
|
||||
"als_m1_id_nbank_ca_allnum",
|
||||
"als_m1_id_nbank_cf_allnum",
|
||||
"als_m1_id_nbank_com_allnum",
|
||||
"als_m1_id_nbank_oth_allnum",
|
||||
"als_m1_id_nbank_nsloan_allnum",
|
||||
"als_m1_id_nbank_autofin_allnum",
|
||||
"als_m1_id_nbank_sloan_allnum",
|
||||
"als_m1_id_nbank_cons_allnum",
|
||||
"als_m1_id_nbank_finlea_allnum",
|
||||
"als_m1_id_nbank_else_allnum",
|
||||
"als_m1_id_nbank_orgnum",
|
||||
"als_m1_id_nbank_p2p_orgnum",
|
||||
"als_m1_id_nbank_mc_orgnum",
|
||||
"als_m1_id_nbank_ca_orgnum",
|
||||
"als_m1_id_nbank_cf_orgnum",
|
||||
"als_m1_id_nbank_com_orgnum",
|
||||
"als_m1_id_nbank_oth_orgnum",
|
||||
"als_m1_id_nbank_nsloan_orgnum",
|
||||
"als_m1_id_nbank_autofin_orgnum",
|
||||
"als_m1_id_nbank_sloan_orgnum",
|
||||
"als_m1_id_nbank_cons_orgnum",
|
||||
"als_m1_id_nbank_finlea_orgnum",
|
||||
"als_m1_id_nbank_else_orgnum",
|
||||
"als_m1_id_nbank_week_allnum",
|
||||
"als_m1_id_nbank_week_orgnum",
|
||||
"als_m1_id_nbank_night_allnum",
|
||||
"als_m1_id_nbank_night_orgnum",
|
||||
"als_m1_cell_pdl_allnum",
|
||||
"als_m1_cell_pdl_orgnum",
|
||||
"als_m1_cell_caon_allnum",
|
||||
"als_m1_cell_caon_orgnum",
|
||||
"als_m1_cell_rel_allnum",
|
||||
"als_m1_cell_rel_orgnum",
|
||||
"als_m1_cell_caoff_allnum",
|
||||
"als_m1_cell_caoff_orgnum",
|
||||
"als_m1_cell_cooff_allnum",
|
||||
"als_m1_cell_cooff_orgnum",
|
||||
"als_m1_cell_af_allnum",
|
||||
"als_m1_cell_af_orgnum",
|
||||
"als_m1_cell_coon_allnum",
|
||||
"als_m1_cell_coon_orgnum",
|
||||
"als_m1_cell_oth_allnum",
|
||||
"als_m1_cell_oth_orgnum",
|
||||
"als_m1_cell_bank_selfnum",
|
||||
"als_m1_cell_bank_allnum",
|
||||
"als_m1_cell_bank_tra_allnum",
|
||||
"als_m1_cell_bank_ret_allnum",
|
||||
"als_m1_cell_bank_orgnum",
|
||||
"als_m1_cell_bank_tra_orgnum",
|
||||
"als_m1_cell_bank_ret_orgnum",
|
||||
"als_m1_cell_bank_week_allnum",
|
||||
"als_m1_cell_bank_week_orgnum",
|
||||
"als_m1_cell_bank_night_allnum",
|
||||
"als_m1_cell_bank_night_orgnum",
|
||||
"als_m1_cell_nbank_selfnum",
|
||||
"als_m1_cell_nbank_allnum",
|
||||
"als_m1_cell_nbank_p2p_allnum",
|
||||
"als_m1_cell_nbank_mc_allnum",
|
||||
"als_m1_cell_nbank_ca_allnum",
|
||||
"als_m1_cell_nbank_cf_allnum",
|
||||
"als_m1_cell_nbank_com_allnum",
|
||||
"als_m1_cell_nbank_oth_allnum",
|
||||
"als_m1_cell_nbank_nsloan_allnum",
|
||||
"als_m1_cell_nbank_autofin_allnum",
|
||||
"als_m1_cell_nbank_sloan_allnum",
|
||||
"als_m1_cell_nbank_cons_allnum",
|
||||
"als_m1_cell_nbank_finlea_allnum",
|
||||
"als_m1_cell_nbank_else_allnum",
|
||||
"als_m1_cell_nbank_orgnum",
|
||||
"als_m1_cell_nbank_p2p_orgnum",
|
||||
"als_m1_cell_nbank_mc_orgnum",
|
||||
"als_m1_cell_nbank_ca_orgnum",
|
||||
"als_m1_cell_nbank_cf_orgnum",
|
||||
"als_m1_cell_nbank_com_orgnum",
|
||||
"als_m1_cell_nbank_oth_orgnum",
|
||||
"als_m1_cell_nbank_nsloan_orgnum",
|
||||
"als_m1_cell_nbank_autofin_orgnum",
|
||||
"als_m1_cell_nbank_sloan_orgnum",
|
||||
"als_m1_cell_nbank_cons_orgnum",
|
||||
"als_m1_cell_nbank_finlea_orgnum",
|
||||
"als_m1_cell_nbank_else_orgnum",
|
||||
"als_m1_cell_nbank_week_allnum",
|
||||
"als_m1_cell_nbank_week_orgnum",
|
||||
"als_m1_cell_nbank_night_allnum",
|
||||
"als_m1_cell_nbank_night_orgnum",
|
||||
"als_m3_id_max_inteday",
|
||||
"als_m3_id_min_inteday",
|
||||
"als_m3_id_tot_mons",
|
||||
"als_m3_id_avg_monnum",
|
||||
"als_m3_id_max_monnum",
|
||||
"als_m3_id_min_monnum",
|
||||
"als_m3_id_pdl_allnum",
|
||||
"als_m3_id_pdl_orgnum",
|
||||
"als_m3_id_caon_allnum",
|
||||
"als_m3_id_caon_orgnum",
|
||||
"als_m3_id_rel_allnum",
|
||||
"als_m3_id_rel_orgnum",
|
||||
"als_m3_id_caoff_allnum",
|
||||
"als_m3_id_caoff_orgnum",
|
||||
"als_m3_id_cooff_allnum",
|
||||
"als_m3_id_cooff_orgnum",
|
||||
"als_m3_id_af_allnum",
|
||||
"als_m3_id_af_orgnum",
|
||||
"als_m3_id_coon_allnum",
|
||||
"als_m3_id_coon_orgnum",
|
||||
"als_m3_id_oth_allnum",
|
||||
"als_m3_id_oth_orgnum",
|
||||
"als_m3_id_bank_selfnum",
|
||||
"als_m3_id_bank_allnum",
|
||||
"als_m3_id_bank_tra_allnum",
|
||||
"als_m3_id_bank_ret_allnum",
|
||||
"als_m3_id_bank_orgnum",
|
||||
"als_m3_id_bank_tra_orgnum",
|
||||
"als_m3_id_bank_ret_orgnum",
|
||||
"als_m3_id_bank_tot_mons",
|
||||
"als_m3_id_bank_avg_monnum",
|
||||
"als_m3_id_bank_max_monnum",
|
||||
"als_m3_id_bank_min_monnum",
|
||||
"als_m3_id_bank_max_inteday",
|
||||
"als_m3_id_bank_min_inteday",
|
||||
"als_m3_id_bank_week_allnum",
|
||||
"als_m3_id_bank_week_orgnum",
|
||||
"als_m3_id_bank_night_allnum",
|
||||
"als_m3_id_bank_night_orgnum",
|
||||
"als_m3_id_nbank_selfnum",
|
||||
"als_m3_id_nbank_allnum",
|
||||
"als_m3_id_nbank_p2p_allnum",
|
||||
"als_m3_id_nbank_mc_allnum",
|
||||
"als_m3_id_nbank_ca_allnum",
|
||||
"als_m3_id_nbank_cf_allnum",
|
||||
"als_m3_id_nbank_com_allnum",
|
||||
"als_m3_id_nbank_oth_allnum",
|
||||
"als_m3_id_nbank_nsloan_allnum",
|
||||
"als_m3_id_nbank_autofin_allnum",
|
||||
"als_m3_id_nbank_sloan_allnum",
|
||||
"als_m3_id_nbank_cons_allnum",
|
||||
"als_m3_id_nbank_finlea_allnum",
|
||||
"als_m3_id_nbank_else_allnum",
|
||||
"als_m3_id_nbank_orgnum",
|
||||
"als_m3_id_nbank_p2p_orgnum",
|
||||
"als_m3_id_nbank_mc_orgnum",
|
||||
"als_m3_id_nbank_ca_orgnum",
|
||||
"als_m3_id_nbank_cf_orgnum",
|
||||
"als_m3_id_nbank_com_orgnum",
|
||||
"als_m3_id_nbank_oth_orgnum",
|
||||
"als_m3_id_nbank_nsloan_orgnum",
|
||||
"als_m3_id_nbank_autofin_orgnum",
|
||||
"als_m3_id_nbank_sloan_orgnum",
|
||||
"als_m3_id_nbank_cons_orgnum",
|
||||
"als_m3_id_nbank_finlea_orgnum",
|
||||
"als_m3_id_nbank_else_orgnum",
|
||||
"als_m3_id_nbank_tot_mons",
|
||||
"als_m3_id_nbank_avg_monnum",
|
||||
"als_m3_id_nbank_max_monnum",
|
||||
"als_m3_id_nbank_min_monnum",
|
||||
"als_m3_id_nbank_max_inteday",
|
||||
"als_m3_id_nbank_min_inteday",
|
||||
"als_m3_id_nbank_week_allnum",
|
||||
"als_m3_id_nbank_week_orgnum",
|
||||
"als_m3_id_nbank_night_allnum",
|
||||
"als_m3_id_nbank_night_orgnum",
|
||||
"als_m3_cell_max_inteday",
|
||||
"als_m3_cell_min_inteday",
|
||||
"als_m3_cell_tot_mons",
|
||||
"als_m3_cell_avg_monnum",
|
||||
"als_m3_cell_max_monnum",
|
||||
"als_m3_cell_min_monnum",
|
||||
"als_m3_cell_pdl_allnum",
|
||||
"als_m3_cell_pdl_orgnum",
|
||||
"als_m3_cell_caon_allnum",
|
||||
"als_m3_cell_caon_orgnum",
|
||||
"als_m3_cell_rel_allnum",
|
||||
"als_m3_cell_rel_orgnum",
|
||||
"als_m3_cell_caoff_allnum",
|
||||
"als_m3_cell_caoff_orgnum",
|
||||
"als_m3_cell_cooff_allnum",
|
||||
"als_m3_cell_cooff_orgnum",
|
||||
"als_m3_cell_af_allnum",
|
||||
"als_m3_cell_af_orgnum",
|
||||
"als_m3_cell_coon_allnum",
|
||||
"als_m3_cell_coon_orgnum",
|
||||
"als_m3_cell_oth_allnum",
|
||||
"als_m3_cell_oth_orgnum",
|
||||
"als_m3_cell_bank_selfnum",
|
||||
"als_m3_cell_bank_allnum",
|
||||
"als_m3_cell_bank_tra_allnum",
|
||||
"als_m3_cell_bank_ret_allnum",
|
||||
"als_m3_cell_bank_orgnum",
|
||||
"als_m3_cell_bank_tra_orgnum",
|
||||
"als_m3_cell_bank_ret_orgnum",
|
||||
"als_m3_cell_bank_tot_mons",
|
||||
"als_m3_cell_bank_avg_monnum",
|
||||
"als_m3_cell_bank_max_monnum",
|
||||
"als_m3_cell_bank_min_monnum",
|
||||
"als_m3_cell_bank_max_inteday",
|
||||
"als_m3_cell_bank_min_inteday",
|
||||
"als_m3_cell_bank_week_allnum",
|
||||
"als_m3_cell_bank_week_orgnum",
|
||||
"als_m3_cell_bank_night_allnum",
|
||||
"als_m3_cell_bank_night_orgnum",
|
||||
"als_m3_cell_nbank_selfnum",
|
||||
"als_m3_cell_nbank_allnum",
|
||||
"als_m3_cell_nbank_p2p_allnum",
|
||||
"als_m3_cell_nbank_mc_allnum",
|
||||
"als_m3_cell_nbank_ca_allnum",
|
||||
"als_m3_cell_nbank_cf_allnum",
|
||||
"als_m3_cell_nbank_com_allnum",
|
||||
"als_m3_cell_nbank_oth_allnum",
|
||||
"als_m3_cell_nbank_nsloan_allnum",
|
||||
"als_m3_cell_nbank_autofin_allnum",
|
||||
"als_m3_cell_nbank_sloan_allnum",
|
||||
"als_m3_cell_nbank_cons_allnum",
|
||||
"als_m3_cell_nbank_finlea_allnum",
|
||||
"als_m3_cell_nbank_else_allnum",
|
||||
"als_m3_cell_nbank_orgnum",
|
||||
"als_m3_cell_nbank_p2p_orgnum",
|
||||
"als_m3_cell_nbank_mc_orgnum",
|
||||
"als_m3_cell_nbank_ca_orgnum",
|
||||
"als_m3_cell_nbank_cf_orgnum",
|
||||
"als_m3_cell_nbank_com_orgnum",
|
||||
"als_m3_cell_nbank_oth_orgnum",
|
||||
"als_m3_cell_nbank_nsloan_orgnum",
|
||||
"als_m3_cell_nbank_autofin_orgnum",
|
||||
"als_m3_cell_nbank_sloan_orgnum",
|
||||
"als_m3_cell_nbank_cons_orgnum",
|
||||
"als_m3_cell_nbank_finlea_orgnum",
|
||||
"als_m3_cell_nbank_else_orgnum",
|
||||
"als_m3_cell_nbank_tot_mons",
|
||||
"als_m3_cell_nbank_avg_monnum",
|
||||
"als_m3_cell_nbank_max_monnum",
|
||||
"als_m3_cell_nbank_min_monnum",
|
||||
"als_m3_cell_nbank_max_inteday",
|
||||
"als_m3_cell_nbank_min_inteday",
|
||||
"als_m3_cell_nbank_week_allnum",
|
||||
"als_m3_cell_nbank_week_orgnum",
|
||||
"als_m3_cell_nbank_night_allnum",
|
||||
"als_m3_cell_nbank_night_orgnum",
|
||||
"als_m6_id_max_inteday",
|
||||
"als_m6_id_min_inteday",
|
||||
"als_m6_id_tot_mons",
|
||||
"als_m6_id_avg_monnum",
|
||||
"als_m6_id_max_monnum",
|
||||
"als_m6_id_min_monnum",
|
||||
"als_m6_id_pdl_allnum",
|
||||
"als_m6_id_pdl_orgnum",
|
||||
"als_m6_id_caon_allnum",
|
||||
"als_m6_id_caon_orgnum",
|
||||
"als_m6_id_rel_allnum",
|
||||
"als_m6_id_rel_orgnum",
|
||||
"als_m6_id_caoff_allnum",
|
||||
"als_m6_id_caoff_orgnum",
|
||||
"als_m6_id_cooff_allnum",
|
||||
"als_m6_id_cooff_orgnum",
|
||||
"als_m6_id_af_allnum",
|
||||
"als_m6_id_af_orgnum",
|
||||
"als_m6_id_coon_allnum",
|
||||
"als_m6_id_coon_orgnum",
|
||||
"als_m6_id_oth_allnum",
|
||||
"als_m6_id_oth_orgnum",
|
||||
"als_m6_id_bank_selfnum",
|
||||
"als_m6_id_bank_allnum",
|
||||
"als_m6_id_bank_tra_allnum",
|
||||
"als_m6_id_bank_ret_allnum",
|
||||
"als_m6_id_bank_orgnum",
|
||||
"als_m6_id_bank_tra_orgnum",
|
||||
"als_m6_id_bank_ret_orgnum",
|
||||
"als_m6_id_bank_tot_mons",
|
||||
"als_m6_id_bank_avg_monnum",
|
||||
"als_m6_id_bank_max_monnum",
|
||||
"als_m6_id_bank_min_monnum",
|
||||
"als_m6_id_bank_max_inteday",
|
||||
"als_m6_id_bank_min_inteday",
|
||||
"als_m6_id_bank_week_allnum",
|
||||
"als_m6_id_bank_week_orgnum",
|
||||
"als_m6_id_bank_night_allnum",
|
||||
"als_m6_id_bank_night_orgnum",
|
||||
"als_m6_id_nbank_selfnum",
|
||||
"als_m6_id_nbank_allnum",
|
||||
"als_m6_id_nbank_p2p_allnum",
|
||||
"als_m6_id_nbank_mc_allnum",
|
||||
"als_m6_id_nbank_ca_allnum",
|
||||
"als_m6_id_nbank_cf_allnum",
|
||||
"als_m6_id_nbank_com_allnum",
|
||||
"als_m6_id_nbank_oth_allnum",
|
||||
"als_m6_id_nbank_nsloan_allnum",
|
||||
"als_m6_id_nbank_autofin_allnum",
|
||||
"als_m6_id_nbank_sloan_allnum",
|
||||
"als_m6_id_nbank_cons_allnum",
|
||||
"als_m6_id_nbank_finlea_allnum",
|
||||
"als_m6_id_nbank_else_allnum",
|
||||
"als_m6_id_nbank_orgnum",
|
||||
"als_m6_id_nbank_p2p_orgnum",
|
||||
"als_m6_id_nbank_mc_orgnum",
|
||||
"als_m6_id_nbank_ca_orgnum",
|
||||
"als_m6_id_nbank_cf_orgnum",
|
||||
"als_m6_id_nbank_com_orgnum",
|
||||
"als_m6_id_nbank_oth_orgnum",
|
||||
"als_m6_id_nbank_nsloan_orgnum",
|
||||
"als_m6_id_nbank_autofin_orgnum",
|
||||
"als_m6_id_nbank_sloan_orgnum",
|
||||
"als_m6_id_nbank_cons_orgnum",
|
||||
"als_m6_id_nbank_finlea_orgnum",
|
||||
"als_m6_id_nbank_else_orgnum",
|
||||
"als_m6_id_nbank_tot_mons",
|
||||
"als_m6_id_nbank_avg_monnum",
|
||||
"als_m6_id_nbank_max_monnum",
|
||||
"als_m6_id_nbank_min_monnum",
|
||||
"als_m6_id_nbank_max_inteday",
|
||||
"als_m6_id_nbank_min_inteday",
|
||||
"als_m6_id_nbank_week_allnum",
|
||||
"als_m6_id_nbank_week_orgnum",
|
||||
"als_m6_id_nbank_night_allnum",
|
||||
"als_m6_id_nbank_night_orgnum",
|
||||
"als_m6_cell_max_inteday",
|
||||
"als_m6_cell_min_inteday",
|
||||
"als_m6_cell_tot_mons",
|
||||
"als_m6_cell_avg_monnum",
|
||||
"als_m6_cell_max_monnum",
|
||||
"als_m6_cell_min_monnum",
|
||||
"als_m6_cell_pdl_allnum",
|
||||
"als_m6_cell_pdl_orgnum",
|
||||
"als_m6_cell_caon_allnum",
|
||||
"als_m6_cell_caon_orgnum",
|
||||
"als_m6_cell_rel_allnum",
|
||||
"als_m6_cell_rel_orgnum",
|
||||
"als_m6_cell_caoff_allnum",
|
||||
"als_m6_cell_caoff_orgnum",
|
||||
"als_m6_cell_cooff_allnum",
|
||||
"als_m6_cell_cooff_orgnum",
|
||||
"als_m6_cell_af_allnum",
|
||||
"als_m6_cell_af_orgnum",
|
||||
"als_m6_cell_coon_allnum",
|
||||
"als_m6_cell_coon_orgnum",
|
||||
"als_m6_cell_oth_allnum",
|
||||
"als_m6_cell_oth_orgnum",
|
||||
"als_m6_cell_bank_selfnum",
|
||||
"als_m6_cell_bank_allnum",
|
||||
"als_m6_cell_bank_tra_allnum",
|
||||
"als_m6_cell_bank_ret_allnum",
|
||||
"als_m6_cell_bank_orgnum",
|
||||
"als_m6_cell_bank_tra_orgnum",
|
||||
"als_m6_cell_bank_ret_orgnum",
|
||||
"als_m6_cell_bank_tot_mons",
|
||||
"als_m6_cell_bank_avg_monnum",
|
||||
"als_m6_cell_bank_max_monnum",
|
||||
"als_m6_cell_bank_min_monnum",
|
||||
"als_m6_cell_bank_max_inteday",
|
||||
"als_m6_cell_bank_min_inteday",
|
||||
"als_m6_cell_bank_week_allnum",
|
||||
"als_m6_cell_bank_week_orgnum",
|
||||
"als_m6_cell_bank_night_allnum",
|
||||
"als_m6_cell_bank_night_orgnum",
|
||||
"als_m6_cell_nbank_selfnum",
|
||||
"als_m6_cell_nbank_allnum",
|
||||
"als_m6_cell_nbank_p2p_allnum",
|
||||
"als_m6_cell_nbank_mc_allnum",
|
||||
"als_m6_cell_nbank_ca_allnum",
|
||||
"als_m6_cell_nbank_cf_allnum",
|
||||
"als_m6_cell_nbank_com_allnum",
|
||||
"als_m6_cell_nbank_oth_allnum",
|
||||
"als_m6_cell_nbank_nsloan_allnum",
|
||||
"als_m6_cell_nbank_autofin_allnum",
|
||||
"als_m6_cell_nbank_sloan_allnum",
|
||||
"als_m6_cell_nbank_cons_allnum",
|
||||
"als_m6_cell_nbank_finlea_allnum",
|
||||
"als_m6_cell_nbank_else_allnum",
|
||||
"als_m6_cell_nbank_orgnum",
|
||||
"als_m6_cell_nbank_p2p_orgnum",
|
||||
"als_m6_cell_nbank_mc_orgnum",
|
||||
"als_m6_cell_nbank_ca_orgnum",
|
||||
"als_m6_cell_nbank_cf_orgnum",
|
||||
"als_m6_cell_nbank_com_orgnum",
|
||||
"als_m6_cell_nbank_oth_orgnum",
|
||||
"als_m6_cell_nbank_nsloan_orgnum",
|
||||
"als_m6_cell_nbank_autofin_orgnum",
|
||||
"als_m6_cell_nbank_sloan_orgnum",
|
||||
"als_m6_cell_nbank_cons_orgnum",
|
||||
"als_m6_cell_nbank_finlea_orgnum",
|
||||
"als_m6_cell_nbank_else_orgnum",
|
||||
"als_m6_cell_nbank_tot_mons",
|
||||
"als_m6_cell_nbank_avg_monnum",
|
||||
"als_m6_cell_nbank_max_monnum",
|
||||
"als_m6_cell_nbank_min_monnum",
|
||||
"als_m6_cell_nbank_max_inteday",
|
||||
"als_m6_cell_nbank_min_inteday",
|
||||
"als_m6_cell_nbank_week_allnum",
|
||||
"als_m6_cell_nbank_week_orgnum",
|
||||
"als_m6_cell_nbank_night_allnum",
|
||||
"als_m6_cell_nbank_night_orgnum",
|
||||
"als_m12_id_max_inteday",
|
||||
"als_m12_id_min_inteday",
|
||||
"als_m12_id_tot_mons",
|
||||
"als_m12_id_avg_monnum",
|
||||
"als_m12_id_max_monnum",
|
||||
"als_m12_id_min_monnum",
|
||||
"als_m12_id_pdl_allnum",
|
||||
"als_m12_id_pdl_orgnum",
|
||||
"als_m12_id_caon_allnum",
|
||||
"als_m12_id_caon_orgnum",
|
||||
"als_m12_id_rel_allnum",
|
||||
"als_m12_id_rel_orgnum",
|
||||
"als_m12_id_caoff_allnum",
|
||||
"als_m12_id_caoff_orgnum",
|
||||
"als_m12_id_cooff_allnum",
|
||||
"als_m12_id_cooff_orgnum",
|
||||
"als_m12_id_af_allnum",
|
||||
"als_m12_id_af_orgnum",
|
||||
"als_m12_id_coon_allnum",
|
||||
"als_m12_id_coon_orgnum",
|
||||
"als_m12_id_oth_allnum",
|
||||
"als_m12_id_oth_orgnum",
|
||||
"als_m12_id_bank_selfnum",
|
||||
"als_m12_id_bank_allnum",
|
||||
"als_m12_id_bank_tra_allnum",
|
||||
"als_m12_id_bank_ret_allnum",
|
||||
"als_m12_id_bank_orgnum",
|
||||
"als_m12_id_bank_tra_orgnum",
|
||||
"als_m12_id_bank_ret_orgnum",
|
||||
"als_m12_id_bank_tot_mons",
|
||||
"als_m12_id_bank_avg_monnum",
|
||||
"als_m12_id_bank_max_monnum",
|
||||
"als_m12_id_bank_min_monnum",
|
||||
"als_m12_id_bank_max_inteday",
|
||||
"als_m12_id_bank_min_inteday",
|
||||
"als_m12_id_bank_week_allnum",
|
||||
"als_m12_id_bank_week_orgnum",
|
||||
"als_m12_id_bank_night_allnum",
|
||||
"als_m12_id_bank_night_orgnum",
|
||||
"als_m12_id_nbank_selfnum",
|
||||
"als_m12_id_nbank_allnum",
|
||||
"als_m12_id_nbank_p2p_allnum",
|
||||
"als_m12_id_nbank_mc_allnum",
|
||||
"als_m12_id_nbank_ca_allnum",
|
||||
"als_m12_id_nbank_cf_allnum",
|
||||
"als_m12_id_nbank_com_allnum",
|
||||
"als_m12_id_nbank_oth_allnum",
|
||||
"als_m12_id_nbank_nsloan_allnum",
|
||||
"als_m12_id_nbank_autofin_allnum",
|
||||
"als_m12_id_nbank_sloan_allnum",
|
||||
"als_m12_id_nbank_cons_allnum",
|
||||
"als_m12_id_nbank_finlea_allnum",
|
||||
"als_m12_id_nbank_else_allnum",
|
||||
"als_m12_id_nbank_orgnum",
|
||||
"als_m12_id_nbank_p2p_orgnum",
|
||||
"als_m12_id_nbank_mc_orgnum",
|
||||
"als_m12_id_nbank_ca_orgnum",
|
||||
"als_m12_id_nbank_cf_orgnum",
|
||||
"als_m12_id_nbank_com_orgnum",
|
||||
"als_m12_id_nbank_oth_orgnum",
|
||||
"als_m12_id_nbank_nsloan_orgnum",
|
||||
"als_m12_id_nbank_autofin_orgnum",
|
||||
"als_m12_id_nbank_sloan_orgnum",
|
||||
"als_m12_id_nbank_cons_orgnum",
|
||||
"als_m12_id_nbank_finlea_orgnum",
|
||||
"als_m12_id_nbank_else_orgnum",
|
||||
"als_m12_id_nbank_tot_mons",
|
||||
"als_m12_id_nbank_avg_monnum",
|
||||
"als_m12_id_nbank_max_monnum",
|
||||
"als_m12_id_nbank_min_monnum",
|
||||
"als_m12_id_nbank_max_inteday",
|
||||
"als_m12_id_nbank_min_inteday",
|
||||
"als_m12_id_nbank_week_allnum",
|
||||
"als_m12_id_nbank_week_orgnum",
|
||||
"als_m12_id_nbank_night_allnum",
|
||||
"als_m12_id_nbank_night_orgnum",
|
||||
"als_m12_cell_max_inteday",
|
||||
"als_m12_cell_min_inteday",
|
||||
"als_m12_cell_tot_mons",
|
||||
"als_m12_cell_avg_monnum",
|
||||
"als_m12_cell_max_monnum",
|
||||
"als_m12_cell_min_monnum",
|
||||
"als_m12_cell_pdl_allnum",
|
||||
"als_m12_cell_pdl_orgnum",
|
||||
"als_m12_cell_caon_allnum",
|
||||
"als_m12_cell_caon_orgnum",
|
||||
"als_m12_cell_rel_allnum",
|
||||
"als_m12_cell_rel_orgnum",
|
||||
"als_m12_cell_caoff_allnum",
|
||||
"als_m12_cell_caoff_orgnum",
|
||||
"als_m12_cell_cooff_allnum",
|
||||
"als_m12_cell_cooff_orgnum",
|
||||
"als_m12_cell_af_allnum",
|
||||
"als_m12_cell_af_orgnum",
|
||||
"als_m12_cell_coon_allnum",
|
||||
"als_m12_cell_coon_orgnum",
|
||||
"als_m12_cell_oth_allnum",
|
||||
"als_m12_cell_oth_orgnum",
|
||||
"als_m12_cell_bank_selfnum",
|
||||
"als_m12_cell_bank_allnum",
|
||||
"als_m12_cell_bank_tra_allnum",
|
||||
"als_m12_cell_bank_ret_allnum",
|
||||
"als_m12_cell_bank_orgnum",
|
||||
"als_m12_cell_bank_tra_orgnum",
|
||||
"als_m12_cell_bank_ret_orgnum",
|
||||
"als_m12_cell_bank_tot_mons",
|
||||
"als_m12_cell_bank_avg_monnum",
|
||||
"als_m12_cell_bank_max_monnum",
|
||||
"als_m12_cell_bank_min_monnum",
|
||||
"als_m12_cell_bank_max_inteday",
|
||||
"als_m12_cell_bank_min_inteday",
|
||||
"als_m12_cell_bank_week_allnum",
|
||||
"als_m12_cell_bank_week_orgnum",
|
||||
"als_m12_cell_bank_night_allnum",
|
||||
"als_m12_cell_bank_night_orgnum",
|
||||
"als_m12_cell_nbank_selfnum",
|
||||
"als_m12_cell_nbank_allnum",
|
||||
"als_m12_cell_nbank_p2p_allnum",
|
||||
"als_m12_cell_nbank_mc_allnum",
|
||||
"als_m12_cell_nbank_ca_allnum",
|
||||
"als_m12_cell_nbank_cf_allnum",
|
||||
"als_m12_cell_nbank_com_allnum",
|
||||
"als_m12_cell_nbank_oth_allnum",
|
||||
"als_m12_cell_nbank_nsloan_allnum",
|
||||
"als_m12_cell_nbank_autofin_allnum",
|
||||
"als_m12_cell_nbank_sloan_allnum",
|
||||
"als_m12_cell_nbank_cons_allnum",
|
||||
"als_m12_cell_nbank_finlea_allnum",
|
||||
"als_m12_cell_nbank_else_allnum",
|
||||
"als_m12_cell_nbank_orgnum",
|
||||
"als_m12_cell_nbank_p2p_orgnum",
|
||||
"als_m12_cell_nbank_mc_orgnum",
|
||||
"als_m12_cell_nbank_ca_orgnum",
|
||||
"als_m12_cell_nbank_cf_orgnum",
|
||||
"als_m12_cell_nbank_com_orgnum",
|
||||
"als_m12_cell_nbank_oth_orgnum",
|
||||
"als_m12_cell_nbank_nsloan_orgnum",
|
||||
"als_m12_cell_nbank_autofin_orgnum",
|
||||
"als_m12_cell_nbank_sloan_orgnum",
|
||||
"als_m12_cell_nbank_cons_orgnum",
|
||||
"als_m12_cell_nbank_finlea_orgnum",
|
||||
"als_m12_cell_nbank_else_orgnum",
|
||||
"als_m12_cell_nbank_tot_mons",
|
||||
"als_m12_cell_nbank_avg_monnum",
|
||||
"als_m12_cell_nbank_max_monnum",
|
||||
"als_m12_cell_nbank_min_monnum",
|
||||
"als_m12_cell_nbank_max_inteday",
|
||||
"als_m12_cell_nbank_min_inteday",
|
||||
"als_m12_cell_nbank_week_allnum",
|
||||
"als_m12_cell_nbank_week_orgnum",
|
||||
"als_m12_cell_nbank_night_allnum",
|
||||
"als_m12_cell_nbank_night_orgnum",
|
||||
"als_fst_id_bank_inteday",
|
||||
"als_fst_id_nbank_inteday",
|
||||
"als_fst_cell_bank_inteday",
|
||||
"als_fst_cell_nbank_inteday",
|
||||
"als_lst_id_bank_inteday",
|
||||
"als_lst_id_bank_consnum",
|
||||
"als_lst_id_bank_csinteday",
|
||||
"als_lst_id_nbank_inteday",
|
||||
"als_lst_id_nbank_consnum",
|
||||
"als_lst_id_nbank_csinteday",
|
||||
"als_lst_cell_bank_inteday",
|
||||
"als_lst_cell_bank_consnum",
|
||||
"als_lst_cell_bank_csinteday",
|
||||
"als_lst_cell_nbank_inteday",
|
||||
"als_lst_cell_nbank_consnum",
|
||||
"als_lst_cell_nbank_csinteday"
|
||||
]
|
0
dataRender/word2.js
Normal file
51
dataRender/word_list.js
Normal file
@ -0,0 +1,51 @@
|
||||
const keyword = [
|
||||
'als',
|
||||
'd7', // 近7日
|
||||
'id', // 身份证号
|
||||
'pdl', // 线上小额现金贷
|
||||
'allnum', // 次数
|
||||
'orgnum', // 机构数、
|
||||
'week', // 周末
|
||||
'night', // 夜间申请
|
||||
'caon', // 线上现金分期
|
||||
'rel', // 信用卡(类信用卡)
|
||||
'caoff', // 线下现金分期
|
||||
'cooff', // 线下消费分期
|
||||
'af', // 汽车金融
|
||||
'coon', // 线上消费分期
|
||||
'oth', // 申请其他
|
||||
'bank', // 银行机构
|
||||
'selfnum', // 本银行机构
|
||||
'tra', // 传统银行
|
||||
'ret', // 网络银行
|
||||
'nbank', // 非银行机构
|
||||
'p2p', // 改制机构
|
||||
'mc', // 小贷机构
|
||||
'ca', // 现金类分期机构
|
||||
'cf', // 消费类分期机构
|
||||
'com', // 代偿类分期机构
|
||||
'nsloan', // 持牌网络小贷
|
||||
'autofin', // 持牌汽车金融机构
|
||||
'sloan', // 持牌小贷机构
|
||||
'cons', // 持牌消费金融机构
|
||||
'finlea', // 持牌融资租赁机构
|
||||
'else', // 其他申请
|
||||
'cell', // 10 按手机号查询,
|
||||
'd15', // 近 15 天申
|
||||
'm1', // 近 1 个月
|
||||
'm3', // 3 个月
|
||||
'max', // 最大
|
||||
'inteday', // 间隔天数
|
||||
'min', // 最小
|
||||
'tot', // 申请记录
|
||||
'mons', // 月份数
|
||||
'avg', // 平均
|
||||
'monnum', // 最大月
|
||||
'm6', // 6 个月
|
||||
'm12', // 12个月
|
||||
'fst', // 最早
|
||||
'lst', // 最近
|
||||
'consnum', // 连续申请
|
||||
'csinteday', // 连续申请持续天数
|
||||
]
|
||||
console.log(keyword)
|
65
dataRender/人企关系.json
Normal file
@ -0,0 +1,65 @@
|
||||
{
|
||||
"msg": "查询成功",
|
||||
"code": "0000",
|
||||
"orderNo": "20241028112921367340619",
|
||||
"data": {
|
||||
"total": 1,
|
||||
"datalist": [
|
||||
{
|
||||
"orgName": "海南省学宇思网络科技有限公司",
|
||||
"pName": "刘福思",
|
||||
"stockHolderItem": {
|
||||
"orgHolderType": "自然人",
|
||||
"investDate": "",
|
||||
"investRate": "40%",
|
||||
"subscriptAmt": "40.000000",
|
||||
"orgHolderName": "刘福思"
|
||||
},
|
||||
"relationship": [
|
||||
"lp",
|
||||
"sh",
|
||||
"tm"
|
||||
],
|
||||
"fsource": "",
|
||||
"basicInfo": {
|
||||
"regStatus": "存续",
|
||||
"regCapital": "100.0000万人民币",
|
||||
"reccap": 0,
|
||||
"city": "海口市",
|
||||
"industry_code": "I",
|
||||
"industry": "互联网和相关服务",
|
||||
"type": "1",
|
||||
"staffList": {
|
||||
"result": [
|
||||
{
|
||||
"name": "刘福思",
|
||||
"type": "2",
|
||||
"typeJoin": [
|
||||
"执行董事兼总经理"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"nic_code": "I64",
|
||||
"legalPersonName": "刘福思",
|
||||
"regNumber": "460108011261916",
|
||||
"creditCode": "91460108MADNY3F43W",
|
||||
"province": "海南省",
|
||||
"regorg": "海南省市场监督管理局",
|
||||
"companyOrgType": "有限责任公司(自然人投资或控股)",
|
||||
"revdate": "",
|
||||
"estiblishTime": "2024-06-20",
|
||||
"opscope": "一般经营项目:品牌管理;5G通信技术服务;人工智能应用软件开发;互联网安全服务;量子计算技术服务;技术服务、技术开发、技术咨询、技术交流、技术转让、技术推广;网络技术服务;专业设计服务;互联网数据服务;互联网销售(除销售需要许可的商品);食品互联网销售(仅销售预包装食品);软件开发;动漫游戏开发;计算机软硬件及辅助设备零售;计算机软硬件及辅助设备批发;计算器设备销售;机械设备销售;五金产品零售;五金产品批发;电子产品销售;人工智能硬件销售;通信设备销售;光通信设备销售;通信设备制造;信息系统集成服务;图文设计制作;广告设计、代理;广告发布;数字内容制作服务(不含出版发行);数字文化创意软件开发;软件销售;市场营销策划;企业管理咨询;信息咨询服务(不含许可类信息咨询服务);市场调查(不含涉外调查);工业设计服务;玩具销售;化妆品零售;化妆品批发;摄像及视频制作服务;平面设计;法律咨询(不含依法须律师事务所执业许可的业务);旅游开发项目策划咨询;体育用品及器材批发;体育用品及器材零售;户外用品销售;体育赛事策划;体育健康服务;组织体育表演活动;体育中介代理服务;信息技术咨询服务;数据处理服务;数据处理和存储支持服务;大数据服务;云计算装备技术服务;电子、机械设备维护(不含特种设备);智能机器人的研发(经营范围中的一般经营项目依法自主开展经营活动,通过国家企业信用信息公示系统(海南)向社会公示)许可经营项目:食品进出口;货物进出口;技术进出口;在线数据处理与交易处理业务(经营类电子商务);互联网游戏服务;第二类增值电信业务;互联网信息服务(许可经营项目凭许可证件经营)",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "信息传输、软件和信息技术服务业-互联网和相关服务",
|
||||
"candate": "",
|
||||
"district": "秀英区",
|
||||
"name": "海南省学宇思网络科技有限公司",
|
||||
"base": "han",
|
||||
"apprdate": "2024-09-14"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
646
dataRender/人企关系2.json
Normal file
@ -0,0 +1,646 @@
|
||||
{
|
||||
"msg": "查询成功",
|
||||
"code": "0000",
|
||||
"orderNo": "20241113191941335900073",
|
||||
"data": {
|
||||
"total": 8,
|
||||
"datalist": [
|
||||
{
|
||||
"executedPerson": [
|
||||
{
|
||||
"caseCode": "(2014)城中执字第00062号",
|
||||
"partyCardNum": "45252819740****3016",
|
||||
"pname": "李强",
|
||||
"caseCreateTime": "2014-02-11",
|
||||
"execCourtName": "",
|
||||
"execMoney": 220605
|
||||
}
|
||||
],
|
||||
"dishonestExecutedPerson": [
|
||||
{
|
||||
"businessentity": "",
|
||||
"areaname": "广西",
|
||||
"courtname": "柳州市城中区人民法院",
|
||||
"unperformPart": "",
|
||||
"type": "0",
|
||||
"performedPart": "",
|
||||
"iname": "李强",
|
||||
"disrupttypename": "其他有履行能力而拒不履行生效法律文书确定义务",
|
||||
"casecode": "(2014)城中执字第00062号",
|
||||
"cardnum": "4525281974****3016",
|
||||
"performance": "全部未履行",
|
||||
"regdate": "2014-02-11",
|
||||
"duty": "中国农业银行股份有限公司柳州城中支行申请执行李强220604.73元",
|
||||
"gistunit": "柳州市城中区人民法院",
|
||||
"publishdate": "2014-06-19",
|
||||
"gistid": "(2010)城中民二初字第480号民事判决书"
|
||||
}
|
||||
],
|
||||
"orgName": "广西鼎铭房地产开发有限公司",
|
||||
"pName": "李强",
|
||||
"stockHolderItem": {
|
||||
"orgHolderType": "自然人",
|
||||
"investDate": "",
|
||||
"investRate": "10.0%",
|
||||
"subscriptAmt": 100,
|
||||
"orgHolderName": "李强"
|
||||
},
|
||||
"relationship": [
|
||||
"sh",
|
||||
"lp",
|
||||
"tm"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "1000.000000万人民币",
|
||||
"reccap": 0,
|
||||
"city": "",
|
||||
"industry_code": "K",
|
||||
"industry": "房地产业",
|
||||
"type": "1",
|
||||
"nic_code": "K7010",
|
||||
"staffList": {
|
||||
"result": [
|
||||
{
|
||||
"name": "李强",
|
||||
"type": "2",
|
||||
"typeJoin": [
|
||||
"监事"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"legalPersonName": "李强",
|
||||
"regNumber": "450000200012318",
|
||||
"creditCode": "91450100742080353R",
|
||||
"province": "广西壮族自治区",
|
||||
"regorg": "南宁市市场监督管理局高新技术产业开发区分局",
|
||||
"companyOrgType": "有限责任公司(自然人投资或控股)",
|
||||
"revdate": "2016-03-19",
|
||||
"estiblishTime": "2002-10-16",
|
||||
"opscope": "房地产开发经营(取得相应资质后方可在其资质等级核定范围内从事房地产开发经营活动);建筑材料、装饰材料、农副土特产品、日用百货、五金交电、汽车零配件的购销;计算机销售及维修。",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "房地产业-房地产业-房地产开发经营-房地产开发经营",
|
||||
"candate": "",
|
||||
"district": "",
|
||||
"name": "广西鼎铭房地产开发有限公司",
|
||||
"base": "gx",
|
||||
"apprdate": "2016-03-19"
|
||||
},
|
||||
"adminPenalty": [
|
||||
{
|
||||
"departmentName": "南宁市工商行政管理局高新技术产业开发区分局",
|
||||
"reason": "公司成立后无正当理由超过6个月未开业的,或者开业后自行停业连续6个月以上",
|
||||
"punishNumber": "南工商高新处字(2016)500010024号",
|
||||
"type": "",
|
||||
"content": "",
|
||||
"decisionDate": "2016-03-19",
|
||||
"legalPersonName": "李强"
|
||||
},
|
||||
{
|
||||
"departmentName": "45011101",
|
||||
"reason": "南宁恒发网络科技有限公司等3177户企业,未依法进行企业信息网上年报公示。经我分局执法人员在以上企业的执照注册住所检查,发现上述企业已不在其注册住所经营或办公,根据企业注册登记时所留电话也联系不上上述企业。",
|
||||
"punishNumber": "南工商高新处字(2016)500010024号",
|
||||
"type": "吊销执照(登记证)",
|
||||
"content": "-",
|
||||
"decisionDate": "2016-03-19",
|
||||
"legalPersonName": "李强"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"executedPerson": [
|
||||
{
|
||||
"caseCode": "(2010)青执字第01000号",
|
||||
"partyCardNum": "452528********3012",
|
||||
"pname": "李健",
|
||||
"caseCreateTime": "2010-09-06",
|
||||
"execCourtName": "",
|
||||
"execMoney": 283845
|
||||
},
|
||||
{
|
||||
"caseCode": "(2010)青执字第00188号",
|
||||
"partyCardNum": "45252819691****3012",
|
||||
"pname": "李健",
|
||||
"caseCreateTime": "2010-02-08",
|
||||
"execCourtName": "",
|
||||
"execMoney": 308464
|
||||
}
|
||||
],
|
||||
"orgName": "南宁市铭鼎商贸有限公司",
|
||||
"pName": "李强",
|
||||
"stockHolderItem": {
|
||||
"orgHolderType": "自然人",
|
||||
"investDate": "",
|
||||
"investRate": "20.0%",
|
||||
"subscriptAmt": 20,
|
||||
"orgHolderName": "李强"
|
||||
},
|
||||
"relationship": [
|
||||
"sh"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "100.000000万人民币",
|
||||
"reccap": 0,
|
||||
"city": "南宁市",
|
||||
"industry_code": "F",
|
||||
"industry": "零售业",
|
||||
"type": "1",
|
||||
"nic_code": "F5211",
|
||||
"legalPersonName": "李健",
|
||||
"regNumber": "4501002508737",
|
||||
"creditCode": "91450107MA5KK3PU6A",
|
||||
"province": "广西壮族自治区",
|
||||
"regorg": "南宁市西乡塘区市场监督管理局",
|
||||
"companyOrgType": "有限责任公司(自然人投资或控股)",
|
||||
"revdate": "2016-05-28",
|
||||
"estiblishTime": "2004-07-02",
|
||||
"opscope": "窗帘布艺,家居用品,装饰材料(危险化学品除外),日用百货,服装,纺织品。",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "批发和零售业-零售业-综合零售-百货零售",
|
||||
"candate": "",
|
||||
"district": "",
|
||||
"name": "南宁市铭鼎商贸有限公司",
|
||||
"base": "gx",
|
||||
"apprdate": "2016-05-28"
|
||||
}
|
||||
},
|
||||
{
|
||||
"executedPerson": [
|
||||
{
|
||||
"caseCode": "(2014)城中执字第00062号",
|
||||
"partyCardNum": "45252819740****3016",
|
||||
"pname": "李强",
|
||||
"caseCreateTime": "2014-02-11",
|
||||
"execCourtName": "",
|
||||
"execMoney": 220605
|
||||
}
|
||||
],
|
||||
"dishonestExecutedPerson": [
|
||||
{
|
||||
"businessentity": "",
|
||||
"areaname": "广西",
|
||||
"courtname": "柳州市城中区人民法院",
|
||||
"unperformPart": "",
|
||||
"type": "0",
|
||||
"performedPart": "",
|
||||
"iname": "李强",
|
||||
"disrupttypename": "其他有履行能力而拒不履行生效法律文书确定义务",
|
||||
"casecode": "(2014)城中执字第00062号",
|
||||
"cardnum": "4525281974****3016",
|
||||
"performance": "全部未履行",
|
||||
"regdate": "2014-02-11",
|
||||
"duty": "中国农业银行股份有限公司柳州城中支行申请执行李强220604.73元",
|
||||
"gistunit": "柳州市城中区人民法院",
|
||||
"publishdate": "2014-06-19",
|
||||
"gistid": "(2010)城中民二初字第480号民事判决书"
|
||||
}
|
||||
],
|
||||
"orgName": "广西鼎铭房地产置换服务有限公司南宁分公司",
|
||||
"pName": "李强",
|
||||
"relationship": [
|
||||
"lp",
|
||||
"tm",
|
||||
"his_tm"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "5.0万人民币",
|
||||
"reccap": 0,
|
||||
"city": "南宁市",
|
||||
"industry_code": "K",
|
||||
"industry": "房地产业",
|
||||
"type": "1",
|
||||
"nic_code": "K7030",
|
||||
"staffList": {
|
||||
"result": [
|
||||
{
|
||||
"name": "李强",
|
||||
"type": "2",
|
||||
"typeJoin": [
|
||||
""
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"legalPersonName": "李强",
|
||||
"regNumber": "4501001005198",
|
||||
"creditCode": "",
|
||||
"province": "广西壮族自治区",
|
||||
"his_staffList": {
|
||||
"result": [
|
||||
{
|
||||
"name": "李强",
|
||||
"type": "2",
|
||||
"typeJoin": [
|
||||
""
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"regorg": "南宁市青秀区市场监督管理局",
|
||||
"companyOrgType": "有限责任公司分公司(自然人投资或控股)",
|
||||
"revdate": "2018-06-25",
|
||||
"estiblishTime": "2002-01-28",
|
||||
"opscope": "房地产信息咨询服务,房地产交易居间、代理、行纪;商品信息咨询(不含期货、金融、保险、证券等国家专项规定),商品交易居间、代理、行纪。",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "房地产业-房地产业-房地产中介服务-房地产中介服务",
|
||||
"candate": "",
|
||||
"district": "青秀区",
|
||||
"name": "广西鼎铭房地产置换服务有限公司南宁分公司",
|
||||
"base": "gx",
|
||||
"apprdate": "2018-06-25"
|
||||
}
|
||||
},
|
||||
{
|
||||
"executedPerson": [
|
||||
{
|
||||
"caseCode": "(2014)城中执字第00062号",
|
||||
"partyCardNum": "45252819740****3016",
|
||||
"pname": "李强",
|
||||
"caseCreateTime": "2014-02-11",
|
||||
"execCourtName": "",
|
||||
"execMoney": 220605
|
||||
}
|
||||
],
|
||||
"dishonestExecutedPerson": [
|
||||
{
|
||||
"businessentity": "",
|
||||
"areaname": "广西",
|
||||
"courtname": "柳州市城中区人民法院",
|
||||
"unperformPart": "",
|
||||
"type": "0",
|
||||
"performedPart": "",
|
||||
"iname": "李强",
|
||||
"disrupttypename": "其他有履行能力而拒不履行生效法律文书确定义务",
|
||||
"casecode": "(2014)城中执字第00062号",
|
||||
"cardnum": "4525281974****3016",
|
||||
"performance": "全部未履行",
|
||||
"regdate": "2014-02-11",
|
||||
"duty": "中国农业银行股份有限公司柳州城中支行申请执行李强220604.73元",
|
||||
"gistunit": "柳州市城中区人民法院",
|
||||
"publishdate": "2014-06-19",
|
||||
"gistid": "(2010)城中民二初字第480号民事判决书"
|
||||
}
|
||||
],
|
||||
"orgName": "深圳市亿讯时空信息技术有限公司北京分公司",
|
||||
"pName": "李强",
|
||||
"relationship": [
|
||||
"lp",
|
||||
"tm"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销",
|
||||
"regCapital": "",
|
||||
"reccap": 0,
|
||||
"city": "北京市",
|
||||
"industry_code": "I",
|
||||
"industry": "软件和信息技术服务业",
|
||||
"type": "1",
|
||||
"nic_code": "I659",
|
||||
"staffList": {
|
||||
"result": [
|
||||
{
|
||||
"name": "李强",
|
||||
"type": "2",
|
||||
"typeJoin": [
|
||||
"负责人"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"legalPersonName": "李强",
|
||||
"regNumber": "1101081949120",
|
||||
"creditCode": "91110108MA0464P97H",
|
||||
"province": "北京市",
|
||||
"regorg": "北京市工商行政管理局海淀分局",
|
||||
"companyOrgType": "其他有限责任公司分公司",
|
||||
"revdate": "2010-11-25",
|
||||
"estiblishTime": "2006-04-13",
|
||||
"opscope": "计算机软件和系统集成及辅助设备;网络工程;通讯设备的技术开发、咨询;广告设计。",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "信息传输、软件和信息技术服务业-软件和信息技术服务业-其他信息技术服务业",
|
||||
"candate": "",
|
||||
"district": "海淀区",
|
||||
"name": "深圳市亿讯时空信息技术有限公司北京分公司",
|
||||
"base": "bj",
|
||||
"apprdate": "2006-04-13"
|
||||
},
|
||||
"adminPenalty": [
|
||||
{
|
||||
"departmentName": "海淀分局",
|
||||
"reason": "",
|
||||
"punishNumber": "京工商海处字(2010)第D2389号",
|
||||
"type": "逾期年检",
|
||||
"content": "",
|
||||
"decisionDate": "2010-08-23",
|
||||
"legalPersonName": "李强"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"executedPerson": [
|
||||
{
|
||||
"caseCode": "(2014)城中执字第00062号",
|
||||
"partyCardNum": "45252819740****3016",
|
||||
"pname": "李强",
|
||||
"caseCreateTime": "2014-02-11",
|
||||
"execCourtName": "",
|
||||
"execMoney": 220605
|
||||
},
|
||||
{
|
||||
"caseCode": "(2010)青执字第00198号",
|
||||
"partyCardNum": "36042819721****0037",
|
||||
"pname": "秦学文",
|
||||
"caseCreateTime": "2010-02-08",
|
||||
"execCourtName": "",
|
||||
"execMoney": 444028
|
||||
}
|
||||
],
|
||||
"dishonestExecutedPerson": [
|
||||
{
|
||||
"businessentity": "",
|
||||
"areaname": "广西",
|
||||
"courtname": "柳州市城中区人民法院",
|
||||
"unperformPart": "",
|
||||
"type": "0",
|
||||
"performedPart": "",
|
||||
"iname": "李强",
|
||||
"disrupttypename": "其他有履行能力而拒不履行生效法律文书确定义务",
|
||||
"casecode": "(2014)城中执字第00062号",
|
||||
"cardnum": "4525281974****3016",
|
||||
"performance": "全部未履行",
|
||||
"regdate": "2014-02-11",
|
||||
"duty": "中国农业银行股份有限公司柳州城中支行申请执行李强220604.73元",
|
||||
"gistunit": "柳州市城中区人民法院",
|
||||
"publishdate": "2014-06-19",
|
||||
"gistid": "(2010)城中民二初字第480号民事判决书"
|
||||
}
|
||||
],
|
||||
"orgName": "深圳市亿讯时空信息技术有限公司",
|
||||
"pName": "李强",
|
||||
"stockHolderItem": {
|
||||
"orgHolderType": "自然人",
|
||||
"investDate": "",
|
||||
"investRate": "17.0%",
|
||||
"subscriptAmt": 170,
|
||||
"orgHolderName": "李强"
|
||||
},
|
||||
"relationship": [
|
||||
"sh",
|
||||
"tm"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "1000.000000万人民币",
|
||||
"reccap": 0,
|
||||
"city": "深圳市",
|
||||
"industry_code": "M",
|
||||
"industry": "科技推广和应用服务业",
|
||||
"type": "1",
|
||||
"nic_code": "M7590",
|
||||
"staffList": {
|
||||
"result": [
|
||||
{
|
||||
"name": "李强",
|
||||
"type": "2",
|
||||
"typeJoin": [
|
||||
"董事,总经理"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"legalPersonName": "李铭",
|
||||
"regNumber": "440301103603769",
|
||||
"creditCode": "91440300786556245H",
|
||||
"province": "广东省",
|
||||
"regorg": "福田局",
|
||||
"companyOrgType": "有限责任公司",
|
||||
"revdate": "2020-04-07",
|
||||
"estiblishTime": "2006-03-23",
|
||||
"opscope": "一般经营项目是:计算机软件和系统集成及辅助设备、网络工程、通讯设备的技术开发、咨询、销售,国内贸易(不含专营、专控、专卖商品),从事货物、技术进出口业务(不含分销、国家专营专控商品);广告业务。,许可经营项目是:",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "科学研究和技术服务业-科技推广和应用服务业-其他科技推广服务业-其他科技推广服务业",
|
||||
"candate": "2020-04-07",
|
||||
"district": "福田区",
|
||||
"name": "深圳市亿讯时空信息技术有限公司",
|
||||
"base": "gd",
|
||||
"apprdate": "2008-09-04"
|
||||
}
|
||||
},
|
||||
{
|
||||
"executedPerson": [
|
||||
{
|
||||
"caseCode": "(2010)青执字第01000号",
|
||||
"partyCardNum": "452528********3012",
|
||||
"pname": "李健",
|
||||
"caseCreateTime": "2010-09-06",
|
||||
"execCourtName": "",
|
||||
"execMoney": 283845
|
||||
},
|
||||
{
|
||||
"caseCode": "(2010)青执字第00188号",
|
||||
"partyCardNum": "45252819691****3012",
|
||||
"pname": "李健",
|
||||
"caseCreateTime": "2010-02-08",
|
||||
"execCourtName": "",
|
||||
"execMoney": 308464
|
||||
}
|
||||
],
|
||||
"orgName": "南宁市豆花香食品有限公司",
|
||||
"pName": "李强",
|
||||
"stockHolderItem": {
|
||||
"orgHolderType": "自然人",
|
||||
"investDate": "2003-08-06",
|
||||
"investRate": "50.0%",
|
||||
"subscriptAmt": 25,
|
||||
"orgHolderName": "李强"
|
||||
},
|
||||
"relationship": [
|
||||
"sh"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "50万元人民币",
|
||||
"reccap": 0,
|
||||
"city": "南宁市",
|
||||
"industry_code": "F",
|
||||
"industry": "零售业",
|
||||
"type": "1",
|
||||
"nic_code": "F5227",
|
||||
"legalPersonName": "李健",
|
||||
"regNumber": "4501002505675",
|
||||
"creditCode": "91450100MA5KJ83P3J",
|
||||
"province": "广西壮族自治区",
|
||||
"regorg": "南宁市行政审批局",
|
||||
"companyOrgType": "有限责任公司(自然人投资或控股)",
|
||||
"revdate": "2007-02-08",
|
||||
"estiblishTime": "2003-08-06",
|
||||
"opscope": "豆制品的生产及销售;农副土特产品,日用百货,五金交电的销售。",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "批发和零售业-零售业-食品、饮料及烟草制品专门零售-烟草制品零售",
|
||||
"candate": "",
|
||||
"district": "",
|
||||
"name": "南宁市豆花香食品有限公司",
|
||||
"base": "gx",
|
||||
"apprdate": "2004-06-30"
|
||||
}
|
||||
},
|
||||
{
|
||||
"executedPerson": [
|
||||
{
|
||||
"caseCode": "(2010)青执字第01000号",
|
||||
"partyCardNum": "452528********3012",
|
||||
"pname": "李健",
|
||||
"caseCreateTime": "2010-09-06",
|
||||
"execCourtName": "",
|
||||
"execMoney": 283845
|
||||
},
|
||||
{
|
||||
"caseCode": "(2010)青执字第00188号",
|
||||
"partyCardNum": "45252819691****3012",
|
||||
"pname": "李健",
|
||||
"caseCreateTime": "2010-02-08",
|
||||
"execCourtName": "",
|
||||
"execMoney": 308464
|
||||
},
|
||||
{
|
||||
"caseCode": "(2014)城中执字第00062号",
|
||||
"partyCardNum": "45252819740****3016",
|
||||
"pname": "李强",
|
||||
"caseCreateTime": "2014-02-11",
|
||||
"execCourtName": "",
|
||||
"execMoney": 220605
|
||||
}
|
||||
],
|
||||
"dishonestExecutedPerson": [
|
||||
{
|
||||
"businessentity": "",
|
||||
"areaname": "广西",
|
||||
"courtname": "柳州市城中区人民法院",
|
||||
"unperformPart": "",
|
||||
"type": "0",
|
||||
"performedPart": "",
|
||||
"iname": "李强",
|
||||
"disrupttypename": "其他有履行能力而拒不履行生效法律文书确定义务",
|
||||
"casecode": "(2014)城中执字第00062号",
|
||||
"cardnum": "4525281974****3016",
|
||||
"performance": "全部未履行",
|
||||
"regdate": "2014-02-11",
|
||||
"duty": "中国农业银行股份有限公司柳州城中支行申请执行李强220604.73元",
|
||||
"gistunit": "柳州市城中区人民法院",
|
||||
"publishdate": "2014-06-19",
|
||||
"gistid": "(2010)城中民二初字第480号民事判决书"
|
||||
}
|
||||
],
|
||||
"orgName": "广西鼎铭房地产置换服务有限公司",
|
||||
"pName": "李强",
|
||||
"stockHolderItem": {
|
||||
"orgHolderType": "自然人",
|
||||
"investDate": "",
|
||||
"investRate": "10.87%",
|
||||
"subscriptAmt": 50,
|
||||
"orgHolderName": "李强"
|
||||
},
|
||||
"relationship": [
|
||||
"sh",
|
||||
"tm"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "250万元人民币",
|
||||
"reccap": 200,
|
||||
"city": "柳州市",
|
||||
"industry_code": "I",
|
||||
"industry": "软件和信息技术服务业",
|
||||
"type": "1",
|
||||
"nic_code": "I6513",
|
||||
"staffList": {
|
||||
"result": [
|
||||
{
|
||||
"name": "李强",
|
||||
"type": "2",
|
||||
"typeJoin": [
|
||||
"监事"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"legalPersonName": "李健",
|
||||
"regNumber": "4502002501968",
|
||||
"creditCode": "91450200MA5KPNEG3T",
|
||||
"province": "广西壮族自治区",
|
||||
"regorg": "柳州市市场监督管理局",
|
||||
"companyOrgType": "有限责任公司(自然人投资或控股)",
|
||||
"revdate": "2009-01-04",
|
||||
"estiblishTime": "2001-04-11",
|
||||
"opscope": "连锁经营:房地产信息咨询服务,房地产交易居间、代理、行纪;商品信息咨询(不含期货、金融、保险、证券等国家专项规定),商品交易居间、代理、行纪。",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "信息传输、软件和信息技术服务业-软件和信息技术服务业-软件开发-应用软件开发",
|
||||
"candate": "",
|
||||
"district": "",
|
||||
"name": "广西鼎铭房地产置换服务有限公司",
|
||||
"base": "gx",
|
||||
"apprdate": "2005-09-26"
|
||||
}
|
||||
},
|
||||
{
|
||||
"orgName": "广西鼎铭装饰工程有限公司",
|
||||
"pName": "李强",
|
||||
"stockHolderItem": {
|
||||
"orgHolderType": "自然人",
|
||||
"investDate": "",
|
||||
"investRate": "5.26%",
|
||||
"subscriptAmt": 30,
|
||||
"orgHolderName": "李强"
|
||||
},
|
||||
"relationship": [
|
||||
"sh"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "300万元人民币",
|
||||
"reccap": 0,
|
||||
"city": "南宁市",
|
||||
"industry_code": "E",
|
||||
"industry": "建筑装饰、装修和其他建筑业",
|
||||
"type": "1",
|
||||
"nic_code": "E5011",
|
||||
"legalPersonName": "李健",
|
||||
"regNumber": "4500002501464",
|
||||
"creditCode": "914500007479525012",
|
||||
"province": "广西壮族自治区",
|
||||
"regorg": "广西壮族自治区市场监督管理局",
|
||||
"companyOrgType": "有限责任公司(自然人投资或控股)",
|
||||
"revdate": "2007-09-14",
|
||||
"estiblishTime": "2003-02-27",
|
||||
"opscope": "建筑装修装饰工程专业承包(暂定)叁级;五金交电、日用百货、建筑材料、装饰材料、机电产品、汽车配件、摩托车配件的购销。",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "建筑业-建筑装饰、装修和其他建筑业-建筑装饰和装修业-公共建筑装饰和装修",
|
||||
"candate": "",
|
||||
"district": "",
|
||||
"name": "广西鼎铭装饰工程有限公司",
|
||||
"base": "gx",
|
||||
"apprdate": "2005-03-10"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
150
dataRender/人企关系3.json
Normal file
@ -0,0 +1,150 @@
|
||||
{
|
||||
"msg": "查询成功",
|
||||
"code": "0000",
|
||||
"orderNo": "20241113214538120270654",
|
||||
"data": {
|
||||
"total": 4,
|
||||
"datalist": [
|
||||
{
|
||||
"orgName": "厦门市湖里区肖山泗建材店",
|
||||
"pName": "李金桂",
|
||||
"relationship": [
|
||||
"lp"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "",
|
||||
"reccap": 0,
|
||||
"city": "厦门市",
|
||||
"industry_code": "F",
|
||||
"industry": "批发业",
|
||||
"type": "1",
|
||||
"nic_code": "F516",
|
||||
"legalPersonName": "李金桂",
|
||||
"regNumber": "350206800393889",
|
||||
"creditCode": "92350206MA3212DY6N",
|
||||
"province": "福建省",
|
||||
"regorg": "厦门市湖里区市场监督管理局",
|
||||
"companyOrgType": "个体",
|
||||
"revdate": "2024-09-06",
|
||||
"estiblishTime": "2018-08-21",
|
||||
"opscope": "",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "批发和零售业-批发业-矿产品、建材及化工产品批发",
|
||||
"candate": "",
|
||||
"district": "湖里区",
|
||||
"name": "厦门市湖里区肖山泗建材店",
|
||||
"base": "fj",
|
||||
"apprdate": "2018-08-21"
|
||||
}
|
||||
},
|
||||
{
|
||||
"orgName": "南安市仑苍巢李水暖配件店",
|
||||
"pName": "李金桂",
|
||||
"relationship": [
|
||||
"lp"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "存续(在营、开业、在册)",
|
||||
"regCapital": "",
|
||||
"reccap": 0,
|
||||
"city": "泉州市",
|
||||
"industry_code": "F",
|
||||
"industry": "零售业",
|
||||
"type": "1",
|
||||
"nic_code": "F5281",
|
||||
"legalPersonName": "李金桂",
|
||||
"regNumber": "350583601550067",
|
||||
"creditCode": "92350583MA34MA8K8Y",
|
||||
"province": "福建省",
|
||||
"regorg": "福建省南安市市场监督管理局",
|
||||
"companyOrgType": "个体",
|
||||
"revdate": "",
|
||||
"estiblishTime": "2020-09-08",
|
||||
"opscope": "",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "批发和零售业-零售业-五金、家具及室内装饰材料专门零售-五金零售",
|
||||
"candate": "",
|
||||
"district": "南安市",
|
||||
"name": "南安市仑苍巢李水暖配件店",
|
||||
"base": "fj",
|
||||
"apprdate": "2021-03-22"
|
||||
}
|
||||
},
|
||||
{
|
||||
"orgName": "厦门市湖里区苑熙照建材店",
|
||||
"pName": "李金桂",
|
||||
"relationship": [
|
||||
"lp"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "",
|
||||
"reccap": 0,
|
||||
"city": "厦门市",
|
||||
"industry_code": "F",
|
||||
"industry": "零售业",
|
||||
"type": "1",
|
||||
"nic_code": "F528",
|
||||
"legalPersonName": "李金桂",
|
||||
"regNumber": "350206800392843",
|
||||
"creditCode": "92350206MA320UEM5W",
|
||||
"province": "福建省",
|
||||
"regorg": "厦门市湖里区市场监督管理局",
|
||||
"companyOrgType": "个体",
|
||||
"revdate": "2024-09-06",
|
||||
"estiblishTime": "2018-08-17",
|
||||
"opscope": "",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "批发和零售业-零售业-五金、家具及室内装饰材料专门零售",
|
||||
"candate": "",
|
||||
"district": "湖里区",
|
||||
"name": "厦门市湖里区苑熙照建材店",
|
||||
"base": "fj",
|
||||
"apprdate": "2018-08-17"
|
||||
}
|
||||
},
|
||||
{
|
||||
"orgName": "厦门市湖里区镜永捷亦服饰店",
|
||||
"pName": "李金桂",
|
||||
"relationship": [
|
||||
"lp"
|
||||
],
|
||||
"fsource": "1",
|
||||
"basicInfo": {
|
||||
"regStatus": "吊销,未注销",
|
||||
"regCapital": "",
|
||||
"reccap": 0,
|
||||
"city": "厦门市",
|
||||
"industry_code": "F",
|
||||
"industry": "零售业",
|
||||
"type": "1",
|
||||
"nic_code": "F523",
|
||||
"legalPersonName": "李金桂",
|
||||
"regNumber": "350206800389905",
|
||||
"creditCode": "92350206MA320JJ58B",
|
||||
"province": "福建省",
|
||||
"regorg": "厦门市湖里区市场监督管理局",
|
||||
"companyOrgType": "个体",
|
||||
"revdate": "2024-09-06",
|
||||
"estiblishTime": "2018-08-15",
|
||||
"opscope": "",
|
||||
"reccapcur": "人民币",
|
||||
"regCapitalCurrency": "人民币",
|
||||
"nic_name": "批发和零售业-零售业-纺织、服装及日用品专门零售",
|
||||
"candate": "",
|
||||
"district": "湖里区",
|
||||
"name": "厦门市湖里区镜永捷亦服饰店",
|
||||
"base": "fj",
|
||||
"apprdate": "2018-08-15"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
154
dataRender/借贷意向1.json
Normal file
@ -0,0 +1,154 @@
|
||||
{
|
||||
"als_fst_cell_nbank_inteday": "290",
|
||||
"als_fst_id_nbank_inteday": "138",
|
||||
"als_lst_cell_nbank_consnum": "1",
|
||||
"als_lst_cell_nbank_csinteday": "1",
|
||||
"als_lst_cell_nbank_inteday": "33",
|
||||
"als_lst_id_nbank_consnum": "1",
|
||||
"als_lst_id_nbank_csinteday": "1",
|
||||
"als_lst_id_nbank_inteday": "94",
|
||||
"als_m12_cell_avg_monnum": "1.20",
|
||||
"als_m12_cell_caon_allnum": "2",
|
||||
"als_m12_cell_caon_orgnum": "1",
|
||||
"als_m12_cell_max_inteday": "128",
|
||||
"als_m12_cell_max_monnum": "2",
|
||||
"als_m12_cell_min_inteday": "14",
|
||||
"als_m12_cell_min_monnum": "0",
|
||||
"als_m12_cell_nbank_allnum": "6",
|
||||
"als_m12_cell_nbank_avg_monnum": "1.20",
|
||||
"als_m12_cell_nbank_ca_allnum": "2",
|
||||
"als_m12_cell_nbank_ca_orgnum": "1",
|
||||
"als_m12_cell_nbank_cf_allnum": "4",
|
||||
"als_m12_cell_nbank_cf_orgnum": "1",
|
||||
"als_m12_cell_nbank_max_inteday": "128",
|
||||
"als_m12_cell_nbank_max_monnum": "2",
|
||||
"als_m12_cell_nbank_min_inteday": "14",
|
||||
"als_m12_cell_nbank_min_monnum": "0",
|
||||
"als_m12_cell_nbank_night_allnum": "1",
|
||||
"als_m12_cell_nbank_night_orgnum": "1",
|
||||
"als_m12_cell_nbank_orgnum": "2",
|
||||
"als_m12_cell_nbank_selfnum": "0",
|
||||
"als_m12_cell_nbank_sloan_allnum": "6",
|
||||
"als_m12_cell_nbank_sloan_orgnum": "2",
|
||||
"als_m12_cell_nbank_tot_mons": "5",
|
||||
"als_m12_cell_nbank_week_allnum": "2",
|
||||
"als_m12_cell_nbank_week_orgnum": "2",
|
||||
"als_m12_cell_rel_allnum": "4",
|
||||
"als_m12_cell_rel_orgnum": "1",
|
||||
"als_m12_cell_tot_mons": "5",
|
||||
"als_m12_id_avg_monnum": "1.00",
|
||||
"als_m12_id_caon_allnum": "2",
|
||||
"als_m12_id_caon_orgnum": "2",
|
||||
"als_m12_id_max_inteday": "44",
|
||||
"als_m12_id_max_monnum": "1",
|
||||
"als_m12_id_min_inteday": "44",
|
||||
"als_m12_id_min_monnum": "0",
|
||||
"als_m12_id_nbank_allnum": "2",
|
||||
"als_m12_id_nbank_avg_monnum": "1.00",
|
||||
"als_m12_id_nbank_ca_allnum": "1",
|
||||
"als_m12_id_nbank_ca_orgnum": "1",
|
||||
"als_m12_id_nbank_max_inteday": "44",
|
||||
"als_m12_id_nbank_max_monnum": "1",
|
||||
"als_m12_id_nbank_min_inteday": "44",
|
||||
"als_m12_id_nbank_min_monnum": "0",
|
||||
"als_m12_id_nbank_night_allnum": "0",
|
||||
"als_m12_id_nbank_night_orgnum": "0",
|
||||
"als_m12_id_nbank_nsloan_allnum": "1",
|
||||
"als_m12_id_nbank_nsloan_orgnum": "1",
|
||||
"als_m12_id_nbank_orgnum": "2",
|
||||
"als_m12_id_nbank_oth_allnum": "1",
|
||||
"als_m12_id_nbank_oth_orgnum": "1",
|
||||
"als_m12_id_nbank_selfnum": "0",
|
||||
"als_m12_id_nbank_sloan_allnum": "1",
|
||||
"als_m12_id_nbank_sloan_orgnum": "1",
|
||||
"als_m12_id_nbank_tot_mons": "2",
|
||||
"als_m12_id_nbank_week_allnum": "0",
|
||||
"als_m12_id_nbank_week_orgnum": "0",
|
||||
"als_m12_id_tot_mons": "2",
|
||||
"als_m3_cell_avg_monnum": "1.00",
|
||||
"als_m3_cell_max_inteday": "31",
|
||||
"als_m3_cell_max_monnum": "1",
|
||||
"als_m3_cell_min_inteday": "31",
|
||||
"als_m3_cell_min_monnum": "0",
|
||||
"als_m3_cell_nbank_allnum": "2",
|
||||
"als_m3_cell_nbank_avg_monnum": "1.00",
|
||||
"als_m3_cell_nbank_cf_allnum": "2",
|
||||
"als_m3_cell_nbank_cf_orgnum": "1",
|
||||
"als_m3_cell_nbank_max_inteday": "31",
|
||||
"als_m3_cell_nbank_max_monnum": "1",
|
||||
"als_m3_cell_nbank_min_inteday": "31",
|
||||
"als_m3_cell_nbank_min_monnum": "0",
|
||||
"als_m3_cell_nbank_night_allnum": "1",
|
||||
"als_m3_cell_nbank_night_orgnum": "1",
|
||||
"als_m3_cell_nbank_orgnum": "1",
|
||||
"als_m3_cell_nbank_selfnum": "0",
|
||||
"als_m3_cell_nbank_sloan_allnum": "2",
|
||||
"als_m3_cell_nbank_sloan_orgnum": "1",
|
||||
"als_m3_cell_nbank_tot_mons": "2",
|
||||
"als_m3_cell_nbank_week_allnum": "1",
|
||||
"als_m3_cell_nbank_week_orgnum": "1",
|
||||
"als_m3_cell_rel_allnum": "2",
|
||||
"als_m3_cell_rel_orgnum": "1",
|
||||
"als_m3_cell_tot_mons": "2",
|
||||
"als_m6_cell_avg_monnum": "1.00",
|
||||
"als_m6_cell_caon_allnum": "2",
|
||||
"als_m6_cell_caon_orgnum": "1",
|
||||
"als_m6_cell_max_inteday": "46",
|
||||
"als_m6_cell_max_monnum": "1",
|
||||
"als_m6_cell_min_inteday": "31",
|
||||
"als_m6_cell_min_monnum": "0",
|
||||
"als_m6_cell_nbank_allnum": "4",
|
||||
"als_m6_cell_nbank_avg_monnum": "1.00",
|
||||
"als_m6_cell_nbank_ca_allnum": "2",
|
||||
"als_m6_cell_nbank_ca_orgnum": "1",
|
||||
"als_m6_cell_nbank_cf_allnum": "2",
|
||||
"als_m6_cell_nbank_cf_orgnum": "1",
|
||||
"als_m6_cell_nbank_max_inteday": "46",
|
||||
"als_m6_cell_nbank_max_monnum": "1",
|
||||
"als_m6_cell_nbank_min_inteday": "31",
|
||||
"als_m6_cell_nbank_min_monnum": "0",
|
||||
"als_m6_cell_nbank_night_allnum": "1",
|
||||
"als_m6_cell_nbank_night_orgnum": "1",
|
||||
"als_m6_cell_nbank_orgnum": "2",
|
||||
"als_m6_cell_nbank_selfnum": "0",
|
||||
"als_m6_cell_nbank_sloan_allnum": "4",
|
||||
"als_m6_cell_nbank_sloan_orgnum": "2",
|
||||
"als_m6_cell_nbank_tot_mons": "4",
|
||||
"als_m6_cell_nbank_week_allnum": "2",
|
||||
"als_m6_cell_nbank_week_orgnum": "2",
|
||||
"als_m6_cell_rel_allnum": "2",
|
||||
"als_m6_cell_rel_orgnum": "1",
|
||||
"als_m6_cell_tot_mons": "4",
|
||||
"als_m6_id_avg_monnum": "1.00",
|
||||
"als_m6_id_caon_allnum": "2",
|
||||
"als_m6_id_caon_orgnum": "2",
|
||||
"als_m6_id_max_inteday": "44",
|
||||
"als_m6_id_max_monnum": "1",
|
||||
"als_m6_id_min_inteday": "44",
|
||||
"als_m6_id_min_monnum": "0",
|
||||
"als_m6_id_nbank_allnum": "2",
|
||||
"als_m6_id_nbank_avg_monnum": "1.00",
|
||||
"als_m6_id_nbank_ca_allnum": "1",
|
||||
"als_m6_id_nbank_ca_orgnum": "1",
|
||||
"als_m6_id_nbank_max_inteday": "44",
|
||||
"als_m6_id_nbank_max_monnum": "1",
|
||||
"als_m6_id_nbank_min_inteday": "44",
|
||||
"als_m6_id_nbank_min_monnum": "0",
|
||||
"als_m6_id_nbank_night_allnum": "0",
|
||||
"als_m6_id_nbank_night_orgnum": "0",
|
||||
"als_m6_id_nbank_nsloan_allnum": "1",
|
||||
"als_m6_id_nbank_nsloan_orgnum": "1",
|
||||
"als_m6_id_nbank_orgnum": "2",
|
||||
"als_m6_id_nbank_oth_allnum": "1",
|
||||
"als_m6_id_nbank_oth_orgnum": "1",
|
||||
"als_m6_id_nbank_selfnum": "0",
|
||||
"als_m6_id_nbank_sloan_allnum": "1",
|
||||
"als_m6_id_nbank_sloan_orgnum": "1",
|
||||
"als_m6_id_nbank_tot_mons": "2",
|
||||
"als_m6_id_nbank_week_allnum": "0",
|
||||
"als_m6_id_nbank_week_orgnum": "0",
|
||||
"als_m6_id_tot_mons": "2",
|
||||
"code": "00",
|
||||
"flag_applyloanstr": "1",
|
||||
"flag_datastrategy": "1"
|
||||
}
|
133
dataRender/借贷行为1.json
Normal file
@ -0,0 +1,133 @@
|
||||
{
|
||||
"code": "00",
|
||||
"data": {
|
||||
"tl_id_t11_nbank_org": "1",
|
||||
"tl_id_m6_nbank_passnum": "2",
|
||||
"tl_cell_t2_nbank_lendamt": "10",
|
||||
"tl_cell_t5_nbank_org": "1",
|
||||
"tl_id_t5_nbank_num": "1",
|
||||
"tl_id_t0_nbank_org": "1",
|
||||
"tl_cell_t9_nbank_num": "1",
|
||||
"tl_id_t7_nbank_org": "1",
|
||||
"tl_id_m1_nbank_passlendamt": "5",
|
||||
"tl_cell_m9_nbank_passnum": "2",
|
||||
"flag_datastrategy": "1",
|
||||
"tl_cell_m6_nbank_passorg": "1",
|
||||
"tl_cell_m1_nbank_passorg": "1",
|
||||
"tl_id_m12_nbank_passorg": "1",
|
||||
"tl_id_m3_nbank_passnum": "1",
|
||||
"DataStrategy": {
|
||||
"strategy_version": "1.0",
|
||||
"product_type": "",
|
||||
"strategy_id": "DTA_BR0008250",
|
||||
"product_name": "预置_借贷行为验证",
|
||||
"scene": "lend"
|
||||
},
|
||||
"tl_id_t6_nbank_lendamt": "9",
|
||||
"tl_id_t6_nbank_org": "1",
|
||||
"tl_cell_m12_nbank_passlendamt": "18",
|
||||
"tl_cell_m3_nbank_passlendamt": "9",
|
||||
"tl_cell_t7_nbank_lendamt": "9",
|
||||
"tl_cell_m12_nbank_passnum": "2",
|
||||
"tl_cell_t2_nbank_num": "2",
|
||||
"tl_cell_t6_nbank_org": "1",
|
||||
"tl_cell_t11_nbank_num": "1",
|
||||
"tl_id_m3_nbank_passlendamt": "9",
|
||||
"tl_cell_m6_nbank_passnum": "2",
|
||||
"tl_id_t7_nbank_lendamt": "9",
|
||||
"tl_cell_t11_nbank_org": "1",
|
||||
"tl_id_m3_nbank_passorg": "1",
|
||||
"tl_cell_t8_nbank_num": "1",
|
||||
"tl_id_t6_nbank_num": "1",
|
||||
"tl_cell_m12_nbank_passorg": "1",
|
||||
"tl_id_t6_nbank_reamt": "3",
|
||||
"tl_id_t7_nbank_reamt": "3",
|
||||
"tl_id_t3_nbank_num": "2",
|
||||
"tl_cell_t8_nbank_lendamt": "9",
|
||||
"tl_id_t9_nbank_org": "1",
|
||||
"tl_id_t1_nbank_lendamt": "14",
|
||||
"tl_cell_t7_nbank_org": "1",
|
||||
"tl_id_t9_nbank_reamt": "3",
|
||||
"tl_id_t8_nbank_reamt": "3",
|
||||
"tl_id_t1_nbank_org": "1",
|
||||
"tl_cell_t3_nbank_num": "2",
|
||||
"tl_id_t8_nbank_lendamt": "9",
|
||||
"tl_cell_t11_nbank_lendamt": "5",
|
||||
"tl_cell_m3_nbank_passorg": "1",
|
||||
"tl_id_t0_nbank_num": "2",
|
||||
"tl_cell_t4_nbank_org": "1",
|
||||
"tl_cell_t0_nbank_num": "2",
|
||||
"tl_id_t0_nbank_lendamt": "18",
|
||||
"tl_cell_t1_nbank_org": "1",
|
||||
"tl_id_t9_nbank_lendamt": "9",
|
||||
"tl_cell_t9_nbank_lendamt": "9",
|
||||
"tl_cell_t0_nbank_lendamt": "18",
|
||||
"tl_id_t1_nbank_num": "2",
|
||||
"tl_cell_t0_nbank_reamt": "7",
|
||||
"tl_cell_t1_nbank_reamt": "7",
|
||||
"tl_id_t5_nbank_lendamt": "9",
|
||||
"tl_cell_m3_nbank_passnum": "1",
|
||||
"tl_id_m6_nbank_passlendamt": "10",
|
||||
"tl_cell_t6_nbank_lendamt": "9",
|
||||
"tl_id_m1_nbank_passorg": "1",
|
||||
"tl_cell_t6_nbank_num": "1",
|
||||
"tl_id_t8_nbank_num": "1",
|
||||
"tl_id_t4_nbank_org": "1",
|
||||
"tl_cell_t1_nbank_lendamt": "14",
|
||||
"tl_cell_t2_nbank_org": "1",
|
||||
"tl_cell_t3_nbank_lendamt": "10",
|
||||
"tl_id_t2_nbank_num": "2",
|
||||
"tl_cell_t5_nbank_num": "1",
|
||||
"swift_number": "3034309_20241113153507_46522614A19",
|
||||
"tl_id_t5_nbank_reamt": "3",
|
||||
"tl_cell_t7_nbank_reamt": "3",
|
||||
"tl_cell_t9_nbank_org": "1",
|
||||
"tl_cell_t9_nbank_reamt": "3",
|
||||
"tl_id_t4_nbank_reamt": "3",
|
||||
"tl_id_t3_nbank_reamt": "4",
|
||||
"tl_cell_t8_nbank_reamt": "3",
|
||||
"tl_cell_t4_nbank_reamt": "3",
|
||||
"tl_id_t1_nbank_reamt": "7",
|
||||
"tl_id_t2_nbank_reamt": "4",
|
||||
"tl_cell_t5_nbank_reamt": "3",
|
||||
"tl_cell_t3_nbank_reamt": "4",
|
||||
"tl_cell_t6_nbank_reamt": "3",
|
||||
"tl_cell_m9_nbank_passorg": "1",
|
||||
"tl_cell_t2_nbank_reamt": "4",
|
||||
"tl_cell_m9_nbank_passlendamt": "10",
|
||||
"tl_id_m12_nbank_passlendamt": "18",
|
||||
"tl_id_t9_nbank_num": "1",
|
||||
"tl_id_m9_nbank_passorg": "1",
|
||||
"tl_id_t0_nbank_reamt": "7",
|
||||
"tl_id_t2_nbank_lendamt": "10",
|
||||
"tl_id_t3_nbank_org": "1",
|
||||
"tl_cell_t4_nbank_num": "1",
|
||||
"tl_cell_t3_nbank_org": "1",
|
||||
"tl_cell_m1_nbank_passnum": "1",
|
||||
"code": "00",
|
||||
"tl_id_t2_nbank_org": "1",
|
||||
"tl_id_m12_nbank_passnum": "2",
|
||||
"tl_cell_t4_nbank_lendamt": "9",
|
||||
"tl_id_m9_nbank_passlendamt": "10",
|
||||
"tl_cell_t0_nbank_org": "1",
|
||||
"tl_id_m9_nbank_passnum": "2",
|
||||
"tl_id_t3_nbank_lendamt": "10",
|
||||
"tl_cell_m1_nbank_passlendamt": "5",
|
||||
"tl_cell_t1_nbank_num": "2",
|
||||
"tl_id_m6_nbank_passorg": "1",
|
||||
"tl_id_t11_nbank_lendamt": "5",
|
||||
"tl_id_t11_nbank_num": "1",
|
||||
"tl_cell_t5_nbank_lendamt": "9",
|
||||
"tl_id_t5_nbank_org": "1",
|
||||
"tl_id_t4_nbank_lendamt": "9",
|
||||
"tl_cell_t8_nbank_org": "1",
|
||||
"tl_id_t7_nbank_num": "1",
|
||||
"tl_cell_m6_nbank_passlendamt": "10",
|
||||
"tl_id_t4_nbank_num": "1",
|
||||
"tl_id_m1_nbank_passnum": "1",
|
||||
"tl_id_t8_nbank_org": "1",
|
||||
"tl_cell_t7_nbank_num": "1",
|
||||
"flag_totalloan": "1"
|
||||
},
|
||||
"flag_totalloan": "1"
|
||||
}
|
17
dataRender/特殊名单1.json
Normal file
@ -0,0 +1,17 @@
|
||||
{
|
||||
"code": "100002",
|
||||
"flag_specialList_c": "0",
|
||||
"data": {
|
||||
"code": "100002",
|
||||
"flag_specialList_c": "0",
|
||||
"swift_number": "3034309_20241113140028_45772614A19",
|
||||
"flag_datastrategy": "0",
|
||||
"DataStrategy": {
|
||||
"strategy_version": "1.0",
|
||||
"product_type": "100099",
|
||||
"strategy_id": "DTA_BR0007511",
|
||||
"product_name": "预置_特殊名单验证",
|
||||
"scene": "lend"
|
||||
}
|
||||
}
|
||||
}
|
7
doc/个人风险评估.md
Normal file
@ -0,0 +1,7 @@
|
||||
1. 身份检测(三要素或二要素)姓名+身份证+手机号码
|
||||
2. 司法涉诉
|
||||
3. 风险人员检测(异常名单)
|
||||
4. 个人不良
|
||||
5. 人企关联
|
||||
6. 借贷意向
|
||||
7. 特殊名单(padding)
|
6
doc/婚恋报告.md
Normal file
@ -0,0 +1,6 @@
|
||||
1. 身份检测(三要素或二要素)姓名+身份证+手机号码
|
||||
2. 司法涉诉
|
||||
3. 个人不良 // 西部未启用
|
||||
4. 人企关联
|
||||
5. 借贷意向
|
||||
6. 单人婚姻状态
|
6
doc/家政服务.md
Normal file
@ -0,0 +1,6 @@
|
||||
1. 身份检测(三要素或二要素)姓名+身份证+手机号码
|
||||
2. 司法涉诉
|
||||
3. 特殊名单
|
||||
4. 个人不良
|
||||
5. 借贷意向
|
||||
6. 资格证书
|
6
doc/租赁服务.md
Normal file
@ -0,0 +1,6 @@
|
||||
1. 身份检测(三要素或二要素)姓名+身份证+手机号码
|
||||
2. 司法涉诉
|
||||
3. 风险人员检测(异常名单)
|
||||
4. 个人不良
|
||||
5. 借贷意向
|
||||
6. 特殊名单
|
9
doc/认识背景调查报告.md
Normal file
@ -0,0 +1,9 @@
|
||||
1. 身份检测(三要素或二要素)姓名+身份证+手机号码
|
||||
2. 司法涉诉
|
||||
3. 风险人员检测(异常名单)
|
||||
4. 个人不良
|
||||
5. 人企关联
|
||||
6. 借贷意向
|
||||
7. 特殊名单
|
||||
8. 借贷行为
|
||||
9. 婚姻信息调查
|
9
doc/贷前背调.md
Normal file
@ -0,0 +1,9 @@
|
||||
1. 身份检测(三要素或二要素)姓名+身份证+手机号码
|
||||
2. 司法涉诉
|
||||
3. 风险人员检测(异常名单)
|
||||
4. 个人不良
|
||||
5. 借贷行为
|
||||
6. 借贷意向
|
||||
7. 特殊名单
|
||||
8. 偿贷压力
|
||||
9. 婚姻状态
|
16
eslint.config.mjs
Normal file
@ -0,0 +1,16 @@
|
||||
import uni from '@uni-helper/eslint-config'
|
||||
|
||||
export default uni(
|
||||
{
|
||||
globals: {
|
||||
uni: true,
|
||||
wx: true, // 如果您同时使用了微信小程序的全局变量
|
||||
},
|
||||
unocss: true,
|
||||
rules: {
|
||||
'no-console': 'off', // 关闭 no-console 规则
|
||||
'no-unused-vars': 'warn',
|
||||
'no-require-imports': 'off',
|
||||
},
|
||||
},
|
||||
)
|
21
index.html
Normal file
@ -0,0 +1,21 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" href="static/logo.svg">
|
||||
<script>
|
||||
const coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)')
|
||||
|| CSS.supports('top: constant(a)'))
|
||||
document.write(
|
||||
`<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0${
|
||||
coverSupport ? ', viewport-fit=cover' : ''}" />`)
|
||||
</script>
|
||||
<title></title>
|
||||
<!--preload-links-->
|
||||
<!--app-context-->
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"><!--app-html--></div>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
</html>
|
80
manifest.config.ts
Normal file
@ -0,0 +1,80 @@
|
||||
import { defineManifestConfig } from '@uni-helper/vite-plugin-uni-manifest'
|
||||
|
||||
export default defineManifestConfig({
|
||||
'name': 'qnc-app',
|
||||
'appid': '__UNI__CC3DA09',
|
||||
'description': '',
|
||||
'versionName': '1.0.0',
|
||||
'versionCode': '100',
|
||||
'transformPx': false,
|
||||
/* 5+App特有相关 */
|
||||
'app-plus': {
|
||||
usingComponents: true,
|
||||
nvueStyleCompiler: 'uni-app',
|
||||
compilerVersion: 3,
|
||||
splashscreen: {
|
||||
alwaysShowBeforeRender: true,
|
||||
waiting: true,
|
||||
autoclose: true,
|
||||
delay: 0,
|
||||
},
|
||||
/* 模块配置 */
|
||||
modules: {},
|
||||
/* 应用发布信息 */
|
||||
distribute: {
|
||||
/* android打包配置 */
|
||||
android: {
|
||||
permissions: [
|
||||
'<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>',
|
||||
'<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>',
|
||||
'<uses-permission android:name="android.permission.VIBRATE"/>',
|
||||
'<uses-permission android:name="android.permission.READ_LOGS"/>',
|
||||
'<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>',
|
||||
'<uses-feature android:name="android.hardware.camera.autofocus"/>',
|
||||
'<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>',
|
||||
'<uses-permission android:name="android.permission.CAMERA"/>',
|
||||
'<uses-permission android:name="android.permission.GET_ACCOUNTS"/>',
|
||||
'<uses-permission android:name="android.permission.READ_PHONE_STATE"/>',
|
||||
'<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>',
|
||||
'<uses-permission android:name="android.permission.WAKE_LOCK"/>',
|
||||
'<uses-permission android:name="android.permission.FLASHLIGHT"/>',
|
||||
'<uses-feature android:name="android.hardware.camera"/>',
|
||||
'<uses-permission android:name="android.permission.WRITE_SETTINGS"/>',
|
||||
],
|
||||
},
|
||||
/* ios打包配置 */
|
||||
ios: {},
|
||||
/* SDK配置 */
|
||||
sdkConfigs: {},
|
||||
},
|
||||
},
|
||||
/* 快应用特有相关 */
|
||||
'quickapp': {},
|
||||
/* 小程序特有相关 */
|
||||
'mp-weixin': {
|
||||
appid: '',
|
||||
setting: {
|
||||
urlCheck: false,
|
||||
},
|
||||
usingComponents: true,
|
||||
darkmode: false,
|
||||
themeLocation: 'theme.json',
|
||||
},
|
||||
'mp-alipay': {
|
||||
usingComponents: true,
|
||||
},
|
||||
'mp-baidu': {
|
||||
usingComponents: true,
|
||||
},
|
||||
'mp-toutiao': {
|
||||
usingComponents: true,
|
||||
},
|
||||
'h5': {
|
||||
darkmode: false,
|
||||
themeLocation: 'theme.json',
|
||||
},
|
||||
'uniStatistics': {
|
||||
enable: false,
|
||||
},
|
||||
'vueVersion': '3',
|
||||
})
|
103
package.json
Normal file
@ -0,0 +1,103 @@
|
||||
{
|
||||
"name": "uni-qnc-mini",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"packageManager": "pnpm@9.9.0",
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
"dev": "uni",
|
||||
"dev:app": "uni -p app",
|
||||
"dev:app-android": "uni -p app-android",
|
||||
"dev:app-ios": "uni -p app-ios",
|
||||
"dev:custom": "uni -p",
|
||||
"dev:h5": "uni",
|
||||
"dev:h5:ssr": "uni --ssr",
|
||||
"dev:mp-alipay": "uni -p mp-alipay",
|
||||
"dev:mp-baidu": "uni -p mp-baidu",
|
||||
"dev:mp-kuaishou": "uni -p mp-kuaishou",
|
||||
"dev:mp-lark": "uni -p mp-lark",
|
||||
"dev:mp-qq": "uni -p mp-qq",
|
||||
"dev:mp-toutiao": "uni -p mp-toutiao",
|
||||
"dev:mp-weixin": "uni -p mp-weixin",
|
||||
"dev:quickapp-webview": "uni -p quickapp-webview",
|
||||
"dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei",
|
||||
"dev:quickapp-webview-union": "uni -p quickapp-webview-union",
|
||||
"build": "uni build",
|
||||
"build:app": "uni build -p app",
|
||||
"build:app-android": "uni build -p app-android",
|
||||
"build:app-ios": "uni build -p app-ios",
|
||||
"build:custom": "uni build -p",
|
||||
"build:h5": "uni build",
|
||||
"build:h5:ssr": "uni build --ssr",
|
||||
"build:mp-alipay": "uni build -p mp-alipay",
|
||||
"build:mp-baidu": "uni build -p mp-baidu",
|
||||
"build:mp-kuaishou": "uni build -p mp-kuaishou",
|
||||
"build:mp-lark": "uni build -p mp-lark",
|
||||
"build:mp-qq": "uni build -p mp-qq",
|
||||
"build:mp-toutiao": "uni build -p mp-toutiao",
|
||||
"build:mp-weixin": "uni build -p mp-weixin",
|
||||
"build:quickapp-webview": "uni build -p quickapp-webview",
|
||||
"build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei",
|
||||
"build:quickapp-webview-union": "uni build -p quickapp-webview-union",
|
||||
"type-check": "vue-tsc --noEmit",
|
||||
"lint": "eslint .",
|
||||
"lint:fix": "eslint . --fix",
|
||||
"postinstall": "npx simple-git-hooks"
|
||||
},
|
||||
"dependencies": {
|
||||
"@dcloudio/uni-app": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-app-plus": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-components": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-h5": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-alipay": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-baidu": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-jd": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-kuaishou": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-lark": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-qq": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-toutiao": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-weixin": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-mp-xhs": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-quickapp-webview": "3.0.0-4020420240722002",
|
||||
"@vueuse/core": "^11.1.0",
|
||||
"crypto-js": "^4.2.0",
|
||||
"jweixin-module": "^1.6.0",
|
||||
"vue": "~3.4.21",
|
||||
"vue-i18n": "^9.14.1",
|
||||
"wot-design-uni": "^1.3.12"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@dcloudio/types": "^3.4.12",
|
||||
"@dcloudio/uni-automator": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-cli-shared": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-stacktracey": "3.0.0-4020420240722002",
|
||||
"@dcloudio/uni-vue-devtools": "3.0.0-4020420240722002",
|
||||
"@dcloudio/vite-plugin-uni": "3.0.0-4020420240722002",
|
||||
"@iconify-json/carbon": "^1.2.3",
|
||||
"@mini-types/alipay": "^3.0.14",
|
||||
"@types/node": "^20.16.12",
|
||||
"@uni-helper/eslint-config": "^0.1.0",
|
||||
"@uni-helper/uni-env": "^0.1.4",
|
||||
"@uni-helper/uni-types": "1.0.0-alpha.4",
|
||||
"@uni-helper/unocss-preset-uni": "^0.2.10",
|
||||
"@uni-helper/vite-plugin-uni-components": "^0.1.0",
|
||||
"@uni-helper/vite-plugin-uni-layouts": "^0.1.10",
|
||||
"@uni-helper/vite-plugin-uni-manifest": "^0.2.7",
|
||||
"@uni-helper/vite-plugin-uni-pages": "^0.2.28",
|
||||
"@uni-helper/volar-service-uni-pages": "^0.2.28",
|
||||
"@unocss/eslint-config": "^0.62.4",
|
||||
"@vue/runtime-core": "^3.5.12",
|
||||
"@vue/tsconfig": "^0.5.1",
|
||||
"eslint": "^9.12.0",
|
||||
"lint-staged": "^15.2.10",
|
||||
"miniprogram-api-typings": "^3.12.3",
|
||||
"sass": "~1.79.0",
|
||||
"sass-embedded": "~1.79.0",
|
||||
"simple-git-hooks": "^2.11.1",
|
||||
"typescript": "~5.5.4",
|
||||
"unocss": "^0.62.4",
|
||||
"unplugin-auto-import": "^0.18.3",
|
||||
"vite": "^5.4.9",
|
||||
"vue-tsc": "^2.1.6"
|
||||
}
|
||||
}
|
15
pages.config.ts
Normal file
@ -0,0 +1,15 @@
|
||||
import { defineUniPages } from '@uni-helper/vite-plugin-uni-pages'
|
||||
|
||||
export default defineUniPages({
|
||||
pages: [],
|
||||
globalStyle: {
|
||||
backgroundColor: '@bgColor',
|
||||
backgroundColorBottom: '@bgColorBottom',
|
||||
backgroundColorTop: '@bgColorTop',
|
||||
backgroundTextStyle: '@bgTxtStyle',
|
||||
navigationBarBackgroundColor: '#ffffff',
|
||||
navigationBarTextStyle: '@navTxtStyle',
|
||||
navigationBarTitleText: '全能查',
|
||||
navigationStyle: 'default',
|
||||
},
|
||||
})
|
12269
pnpm-lock.yaml
Normal file
3
renovate.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"extends": ["github>uni-helper/renovate-config"]
|
||||
}
|
8
src/App.vue
Normal file
@ -0,0 +1,8 @@
|
||||
<script setup>
|
||||
// import { WxH5Login } from '@/utils/login.js'
|
||||
|
||||
onLaunch(() => {
|
||||
console.log('onlaunch')
|
||||
// WxH5Login()
|
||||
})
|
||||
</script>
|
67
src/api/apis.js
Normal file
@ -0,0 +1,67 @@
|
||||
// api/index.js
|
||||
import request from '@/utils/request.js'
|
||||
|
||||
export function getUserInfo(data) {
|
||||
return request({
|
||||
url: '/user/detail',
|
||||
method: 'GET',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
export function login(data) {
|
||||
return request({
|
||||
url: '/user/mobileCodeLogin',
|
||||
method: 'POST',
|
||||
data,
|
||||
})
|
||||
}
|
||||
export function getCode(data) {
|
||||
return request({
|
||||
url: '/auth/sendSms',
|
||||
method: 'POST',
|
||||
data,
|
||||
})
|
||||
}
|
||||
export function getProduct(en) {
|
||||
return request({
|
||||
url: `/product/en/${en}`,
|
||||
method: 'GET',
|
||||
})
|
||||
}
|
||||
export function queryExample(params) {
|
||||
return request({
|
||||
url: `/query/example`,
|
||||
method: 'GET',
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
export function queryMarriage(data) {
|
||||
return request({
|
||||
url: `/query/marriage`,
|
||||
method: 'POST',
|
||||
data,
|
||||
})
|
||||
}
|
||||
export function queryResultByOrder(orderID) {
|
||||
return request({
|
||||
url: `/query/orderId/${orderID}`,
|
||||
method: 'GET',
|
||||
})
|
||||
}
|
||||
export function queryList(params) {
|
||||
return request({
|
||||
url: `/query/list`,
|
||||
method: 'GET',
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
export function wxh5login(data) {
|
||||
return request({
|
||||
url: `/user/wxh5Auth`,
|
||||
method: 'POST',
|
||||
data,
|
||||
})
|
||||
}
|
44
src/app.scss
Normal file
@ -0,0 +1,44 @@
|
||||
:root {
|
||||
--dark-bg: #18181c;
|
||||
}
|
||||
|
||||
html {
|
||||
font-size: 4px; // * 方便unocss计算:1单位 = 0.25rem = 1px
|
||||
margin: auto !important;
|
||||
@apply max-w-lg
|
||||
}
|
||||
|
||||
body {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
html,
|
||||
body,
|
||||
page,
|
||||
#app {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background: #f8f8f8
|
||||
}
|
||||
|
||||
html.dark {
|
||||
background: var(--dark-bg);
|
||||
}
|
||||
|
||||
.card{
|
||||
@apply border border-gray-200 rounded-xl bg-white p-6 shadow-md;
|
||||
}
|
||||
.card-p-0{
|
||||
@apply border border-gray-200 rounded-xl bg-white shadow-md;
|
||||
}
|
||||
.title {
|
||||
@apply mx-auto mt-2 w-68 border rounded-3xl bg-gradient-to-r from-blue-400 via-green-500 to-teal-500 py-2 text-center text-white font-bold;
|
||||
}
|
||||
.scrollbar-hidden {
|
||||
scrollbar-width: none; /* Firefox */
|
||||
}
|
||||
.scrollbar-hidden::-webkit-scrollbar {
|
||||
display: none; /* Chrome, Safari, and Edge */
|
||||
}
|
||||
|
636
src/auto-imports.d.ts
vendored
Normal file
@ -0,0 +1,636 @@
|
||||
/* eslint-disable */
|
||||
/* prettier-ignore */
|
||||
// @ts-nocheck
|
||||
// noinspection JSUnusedGlobalSymbols
|
||||
// Generated by unplugin-auto-import
|
||||
// biome-ignore lint: disable
|
||||
export {}
|
||||
declare global {
|
||||
const EffectScope: typeof import('vue')['EffectScope']
|
||||
const WxH5Login: typeof import('./utils/login copy.js')['WxH5Login']
|
||||
const aesDecrypt: typeof import('./utils/crypto.js')['aesDecrypt']
|
||||
const aesEncrypt: typeof import('./utils/crypto.js')['aesEncrypt']
|
||||
const asyncComputed: typeof import('@vueuse/core')['asyncComputed']
|
||||
const autoResetRef: typeof import('@vueuse/core')['autoResetRef']
|
||||
const computed: typeof import('vue')['computed']
|
||||
const computedAsync: typeof import('@vueuse/core')['computedAsync']
|
||||
const computedEager: typeof import('@vueuse/core')['computedEager']
|
||||
const computedInject: typeof import('@vueuse/core')['computedInject']
|
||||
const computedWithControl: typeof import('@vueuse/core')['computedWithControl']
|
||||
const controlledComputed: typeof import('@vueuse/core')['controlledComputed']
|
||||
const controlledRef: typeof import('@vueuse/core')['controlledRef']
|
||||
const createApp: typeof import('vue')['createApp']
|
||||
const createEventHook: typeof import('@vueuse/core')['createEventHook']
|
||||
const createGlobalState: typeof import('@vueuse/core')['createGlobalState']
|
||||
const createInjectionState: typeof import('@vueuse/core')['createInjectionState']
|
||||
const createReactiveFn: typeof import('@vueuse/core')['createReactiveFn']
|
||||
const createReusableTemplate: typeof import('@vueuse/core')['createReusableTemplate']
|
||||
const createSharedComposable: typeof import('@vueuse/core')['createSharedComposable']
|
||||
const createTemplatePromise: typeof import('@vueuse/core')['createTemplatePromise']
|
||||
const createUnrefFn: typeof import('@vueuse/core')['createUnrefFn']
|
||||
const customRef: typeof import('vue')['customRef']
|
||||
const debouncedRef: typeof import('@vueuse/core')['debouncedRef']
|
||||
const debouncedWatch: typeof import('@vueuse/core')['debouncedWatch']
|
||||
const defineAsyncComponent: typeof import('vue')['defineAsyncComponent']
|
||||
const defineComponent: typeof import('vue')['defineComponent']
|
||||
const eagerComputed: typeof import('@vueuse/core')['eagerComputed']
|
||||
const effectScope: typeof import('vue')['effectScope']
|
||||
const extendRef: typeof import('@vueuse/core')['extendRef']
|
||||
const getCurrentInstance: typeof import('vue')['getCurrentInstance']
|
||||
const getCurrentScope: typeof import('vue')['getCurrentScope']
|
||||
const h: typeof import('vue')['h']
|
||||
const ignorableWatch: typeof import('@vueuse/core')['ignorableWatch']
|
||||
const inject: typeof import('vue')['inject']
|
||||
const injectLocal: typeof import('@vueuse/core')['injectLocal']
|
||||
const isDefined: typeof import('@vueuse/core')['isDefined']
|
||||
const isProxy: typeof import('vue')['isProxy']
|
||||
const isReactive: typeof import('vue')['isReactive']
|
||||
const isReadonly: typeof import('vue')['isReadonly']
|
||||
const isRef: typeof import('vue')['isRef']
|
||||
const makeDestructurable: typeof import('@vueuse/core')['makeDestructurable']
|
||||
const markRaw: typeof import('vue')['markRaw']
|
||||
const nextTick: typeof import('vue')['nextTick']
|
||||
const onActivated: typeof import('vue')['onActivated']
|
||||
const onAddToFavorites: typeof import('@dcloudio/uni-app')['onAddToFavorites']
|
||||
const onBackPress: typeof import('@dcloudio/uni-app')['onBackPress']
|
||||
const onBeforeMount: typeof import('vue')['onBeforeMount']
|
||||
const onBeforeUnmount: typeof import('vue')['onBeforeUnmount']
|
||||
const onBeforeUpdate: typeof import('vue')['onBeforeUpdate']
|
||||
const onClickOutside: typeof import('@vueuse/core')['onClickOutside']
|
||||
const onDeactivated: typeof import('vue')['onDeactivated']
|
||||
const onError: typeof import('@dcloudio/uni-app')['onError']
|
||||
const onErrorCaptured: typeof import('vue')['onErrorCaptured']
|
||||
const onHide: typeof import('@dcloudio/uni-app')['onHide']
|
||||
const onKeyStroke: typeof import('@vueuse/core')['onKeyStroke']
|
||||
const onLaunch: typeof import('@dcloudio/uni-app')['onLaunch']
|
||||
const onLoad: typeof import('@dcloudio/uni-app')['onLoad']
|
||||
const onLongPress: typeof import('@vueuse/core')['onLongPress']
|
||||
const onMounted: typeof import('vue')['onMounted']
|
||||
const onNavigationBarButtonTap: typeof import('@dcloudio/uni-app')['onNavigationBarButtonTap']
|
||||
const onNavigationBarSearchInputChanged: typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputChanged']
|
||||
const onNavigationBarSearchInputClicked: typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputClicked']
|
||||
const onNavigationBarSearchInputConfirmed: typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputConfirmed']
|
||||
const onNavigationBarSearchInputFocusChanged: typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputFocusChanged']
|
||||
const onPageNotFound: typeof import('@dcloudio/uni-app')['onPageNotFound']
|
||||
const onPageScroll: typeof import('@dcloudio/uni-app')['onPageScroll']
|
||||
const onPullDownRefresh: typeof import('@dcloudio/uni-app')['onPullDownRefresh']
|
||||
const onReachBottom: typeof import('@dcloudio/uni-app')['onReachBottom']
|
||||
const onReady: typeof import('@dcloudio/uni-app')['onReady']
|
||||
const onRenderTracked: typeof import('vue')['onRenderTracked']
|
||||
const onRenderTriggered: typeof import('vue')['onRenderTriggered']
|
||||
const onResize: typeof import('@dcloudio/uni-app')['onResize']
|
||||
const onScopeDispose: typeof import('vue')['onScopeDispose']
|
||||
const onServerPrefetch: typeof import('vue')['onServerPrefetch']
|
||||
const onShareAppMessage: typeof import('@dcloudio/uni-app')['onShareAppMessage']
|
||||
const onShareTimeline: typeof import('@dcloudio/uni-app')['onShareTimeline']
|
||||
const onShow: typeof import('@dcloudio/uni-app')['onShow']
|
||||
const onStartTyping: typeof import('@vueuse/core')['onStartTyping']
|
||||
const onTabItemTap: typeof import('@dcloudio/uni-app')['onTabItemTap']
|
||||
const onThemeChange: typeof import('@dcloudio/uni-app')['onThemeChange']
|
||||
const onUnhandledRejection: typeof import('@dcloudio/uni-app')['onUnhandledRejection']
|
||||
const onUnload: typeof import('@dcloudio/uni-app')['onUnload']
|
||||
const onUnmounted: typeof import('vue')['onUnmounted']
|
||||
const onUpdated: typeof import('vue')['onUpdated']
|
||||
const onWatcherCleanup: typeof import('vue')['onWatcherCleanup']
|
||||
const pausableWatch: typeof import('@vueuse/core')['pausableWatch']
|
||||
const provide: typeof import('vue')['provide']
|
||||
const provideLocal: typeof import('@vueuse/core')['provideLocal']
|
||||
const reactify: typeof import('@vueuse/core')['reactify']
|
||||
const reactifyObject: typeof import('@vueuse/core')['reactifyObject']
|
||||
const reactive: typeof import('vue')['reactive']
|
||||
const reactiveComputed: typeof import('@vueuse/core')['reactiveComputed']
|
||||
const reactiveOmit: typeof import('@vueuse/core')['reactiveOmit']
|
||||
const reactivePick: typeof import('@vueuse/core')['reactivePick']
|
||||
const readonly: typeof import('vue')['readonly']
|
||||
const ref: typeof import('vue')['ref']
|
||||
const refAutoReset: typeof import('@vueuse/core')['refAutoReset']
|
||||
const refDebounced: typeof import('@vueuse/core')['refDebounced']
|
||||
const refDefault: typeof import('@vueuse/core')['refDefault']
|
||||
const refThrottled: typeof import('@vueuse/core')['refThrottled']
|
||||
const refWithControl: typeof import('@vueuse/core')['refWithControl']
|
||||
const request: typeof import('./utils/request.js')['default']
|
||||
const resolveComponent: typeof import('vue')['resolveComponent']
|
||||
const resolveRef: typeof import('@vueuse/core')['resolveRef']
|
||||
const resolveUnref: typeof import('@vueuse/core')['resolveUnref']
|
||||
const shallowReactive: typeof import('vue')['shallowReactive']
|
||||
const shallowReadonly: typeof import('vue')['shallowReadonly']
|
||||
const shallowRef: typeof import('vue')['shallowRef']
|
||||
const syncRef: typeof import('@vueuse/core')['syncRef']
|
||||
const syncRefs: typeof import('@vueuse/core')['syncRefs']
|
||||
const templateRef: typeof import('@vueuse/core')['templateRef']
|
||||
const throttledRef: typeof import('@vueuse/core')['throttledRef']
|
||||
const throttledWatch: typeof import('@vueuse/core')['throttledWatch']
|
||||
const toRaw: typeof import('vue')['toRaw']
|
||||
const toReactive: typeof import('@vueuse/core')['toReactive']
|
||||
const toRef: typeof import('vue')['toRef']
|
||||
const toRefs: typeof import('vue')['toRefs']
|
||||
const toValue: typeof import('vue')['toValue']
|
||||
const triggerRef: typeof import('vue')['triggerRef']
|
||||
const tryOnBeforeMount: typeof import('@vueuse/core')['tryOnBeforeMount']
|
||||
const tryOnBeforeUnmount: typeof import('@vueuse/core')['tryOnBeforeUnmount']
|
||||
const tryOnMounted: typeof import('@vueuse/core')['tryOnMounted']
|
||||
const tryOnScopeDispose: typeof import('@vueuse/core')['tryOnScopeDispose']
|
||||
const tryOnUnmounted: typeof import('@vueuse/core')['tryOnUnmounted']
|
||||
const unref: typeof import('vue')['unref']
|
||||
const unrefElement: typeof import('@vueuse/core')['unrefElement']
|
||||
const until: typeof import('@vueuse/core')['until']
|
||||
const useActiveElement: typeof import('@vueuse/core')['useActiveElement']
|
||||
const useAnimate: typeof import('@vueuse/core')['useAnimate']
|
||||
const useArrayDifference: typeof import('@vueuse/core')['useArrayDifference']
|
||||
const useArrayEvery: typeof import('@vueuse/core')['useArrayEvery']
|
||||
const useArrayFilter: typeof import('@vueuse/core')['useArrayFilter']
|
||||
const useArrayFind: typeof import('@vueuse/core')['useArrayFind']
|
||||
const useArrayFindIndex: typeof import('@vueuse/core')['useArrayFindIndex']
|
||||
const useArrayFindLast: typeof import('@vueuse/core')['useArrayFindLast']
|
||||
const useArrayIncludes: typeof import('@vueuse/core')['useArrayIncludes']
|
||||
const useArrayJoin: typeof import('@vueuse/core')['useArrayJoin']
|
||||
const useArrayMap: typeof import('@vueuse/core')['useArrayMap']
|
||||
const useArrayReduce: typeof import('@vueuse/core')['useArrayReduce']
|
||||
const useArraySome: typeof import('@vueuse/core')['useArraySome']
|
||||
const useArrayUnique: typeof import('@vueuse/core')['useArrayUnique']
|
||||
const useAsyncQueue: typeof import('@vueuse/core')['useAsyncQueue']
|
||||
const useAsyncState: typeof import('@vueuse/core')['useAsyncState']
|
||||
const useAttrs: typeof import('vue')['useAttrs']
|
||||
const useBase64: typeof import('@vueuse/core')['useBase64']
|
||||
const useBattery: typeof import('@vueuse/core')['useBattery']
|
||||
const useBluetooth: typeof import('@vueuse/core')['useBluetooth']
|
||||
const useBreakpoints: typeof import('@vueuse/core')['useBreakpoints']
|
||||
const useBroadcastChannel: typeof import('@vueuse/core')['useBroadcastChannel']
|
||||
const useBrowserLocation: typeof import('@vueuse/core')['useBrowserLocation']
|
||||
const useCached: typeof import('@vueuse/core')['useCached']
|
||||
const useClipboard: typeof import('@vueuse/core')['useClipboard']
|
||||
const useClipboardItems: typeof import('@vueuse/core')['useClipboardItems']
|
||||
const useCloned: typeof import('@vueuse/core')['useCloned']
|
||||
const useColorMode: typeof import('@vueuse/core')['useColorMode']
|
||||
const useConfirmDialog: typeof import('@vueuse/core')['useConfirmDialog']
|
||||
const useCount: typeof import('./composables/useCount')['useCount']
|
||||
const useCounter: typeof import('@vueuse/core')['useCounter']
|
||||
const useCssModule: typeof import('vue')['useCssModule']
|
||||
const useCssVar: typeof import('@vueuse/core')['useCssVar']
|
||||
const useCssVars: typeof import('vue')['useCssVars']
|
||||
const useCurrentElement: typeof import('@vueuse/core')['useCurrentElement']
|
||||
const useCycleList: typeof import('@vueuse/core')['useCycleList']
|
||||
const useDark: typeof import('@vueuse/core')['useDark']
|
||||
const useDateFormat: typeof import('@vueuse/core')['useDateFormat']
|
||||
const useDebounce: typeof import('@vueuse/core')['useDebounce']
|
||||
const useDebounceFn: typeof import('@vueuse/core')['useDebounceFn']
|
||||
const useDebouncedRefHistory: typeof import('@vueuse/core')['useDebouncedRefHistory']
|
||||
const useDeviceMotion: typeof import('@vueuse/core')['useDeviceMotion']
|
||||
const useDeviceOrientation: typeof import('@vueuse/core')['useDeviceOrientation']
|
||||
const useDevicePixelRatio: typeof import('@vueuse/core')['useDevicePixelRatio']
|
||||
const useDevicesList: typeof import('@vueuse/core')['useDevicesList']
|
||||
const useDisplayMedia: typeof import('@vueuse/core')['useDisplayMedia']
|
||||
const useDocumentVisibility: typeof import('@vueuse/core')['useDocumentVisibility']
|
||||
const useDraggable: typeof import('@vueuse/core')['useDraggable']
|
||||
const useDropZone: typeof import('@vueuse/core')['useDropZone']
|
||||
const useElementBounding: typeof import('@vueuse/core')['useElementBounding']
|
||||
const useElementByPoint: typeof import('@vueuse/core')['useElementByPoint']
|
||||
const useElementHover: typeof import('@vueuse/core')['useElementHover']
|
||||
const useElementSize: typeof import('@vueuse/core')['useElementSize']
|
||||
const useElementVisibility: typeof import('@vueuse/core')['useElementVisibility']
|
||||
const useEventBus: typeof import('@vueuse/core')['useEventBus']
|
||||
const useEventListener: typeof import('@vueuse/core')['useEventListener']
|
||||
const useEventSource: typeof import('@vueuse/core')['useEventSource']
|
||||
const useEyeDropper: typeof import('@vueuse/core')['useEyeDropper']
|
||||
const useFavicon: typeof import('@vueuse/core')['useFavicon']
|
||||
const useFetch: typeof import('@vueuse/core')['useFetch']
|
||||
const useFileDialog: typeof import('@vueuse/core')['useFileDialog']
|
||||
const useFileSystemAccess: typeof import('@vueuse/core')['useFileSystemAccess']
|
||||
const useFocus: typeof import('@vueuse/core')['useFocus']
|
||||
const useFocusWithin: typeof import('@vueuse/core')['useFocusWithin']
|
||||
const useFps: typeof import('@vueuse/core')['useFps']
|
||||
const useFullscreen: typeof import('@vueuse/core')['useFullscreen']
|
||||
const useGamepad: typeof import('@vueuse/core')['useGamepad']
|
||||
const useGeolocation: typeof import('@vueuse/core')['useGeolocation']
|
||||
const useId: typeof import('vue')['useId']
|
||||
const useIdle: typeof import('@vueuse/core')['useIdle']
|
||||
const useImage: typeof import('@vueuse/core')['useImage']
|
||||
const useInfiniteScroll: typeof import('@vueuse/core')['useInfiniteScroll']
|
||||
const useIntersectionObserver: typeof import('@vueuse/core')['useIntersectionObserver']
|
||||
const useInterval: typeof import('@vueuse/core')['useInterval']
|
||||
const useIntervalFn: typeof import('@vueuse/core')['useIntervalFn']
|
||||
const useKeyModifier: typeof import('@vueuse/core')['useKeyModifier']
|
||||
const useLastChanged: typeof import('@vueuse/core')['useLastChanged']
|
||||
const useLocalStorage: typeof import('@vueuse/core')['useLocalStorage']
|
||||
const useMagicKeys: typeof import('@vueuse/core')['useMagicKeys']
|
||||
const useManualRefHistory: typeof import('@vueuse/core')['useManualRefHistory']
|
||||
const useMediaControls: typeof import('@vueuse/core')['useMediaControls']
|
||||
const useMediaQuery: typeof import('@vueuse/core')['useMediaQuery']
|
||||
const useMemoize: typeof import('@vueuse/core')['useMemoize']
|
||||
const useMemory: typeof import('@vueuse/core')['useMemory']
|
||||
const useModel: typeof import('vue')['useModel']
|
||||
const useMounted: typeof import('@vueuse/core')['useMounted']
|
||||
const useMouse: typeof import('@vueuse/core')['useMouse']
|
||||
const useMouseInElement: typeof import('@vueuse/core')['useMouseInElement']
|
||||
const useMousePressed: typeof import('@vueuse/core')['useMousePressed']
|
||||
const useMutationObserver: typeof import('@vueuse/core')['useMutationObserver']
|
||||
const useNavigatorLanguage: typeof import('@vueuse/core')['useNavigatorLanguage']
|
||||
const useNetwork: typeof import('@vueuse/core')['useNetwork']
|
||||
const useNow: typeof import('@vueuse/core')['useNow']
|
||||
const useObjectUrl: typeof import('@vueuse/core')['useObjectUrl']
|
||||
const useOffsetPagination: typeof import('@vueuse/core')['useOffsetPagination']
|
||||
const useOnline: typeof import('@vueuse/core')['useOnline']
|
||||
const usePageLeave: typeof import('@vueuse/core')['usePageLeave']
|
||||
const useParallax: typeof import('@vueuse/core')['useParallax']
|
||||
const useParentElement: typeof import('@vueuse/core')['useParentElement']
|
||||
const usePerformanceObserver: typeof import('@vueuse/core')['usePerformanceObserver']
|
||||
const usePermission: typeof import('@vueuse/core')['usePermission']
|
||||
const usePointer: typeof import('@vueuse/core')['usePointer']
|
||||
const usePointerLock: typeof import('@vueuse/core')['usePointerLock']
|
||||
const usePointerSwipe: typeof import('@vueuse/core')['usePointerSwipe']
|
||||
const usePreferredColorScheme: typeof import('@vueuse/core')['usePreferredColorScheme']
|
||||
const usePreferredContrast: typeof import('@vueuse/core')['usePreferredContrast']
|
||||
const usePreferredDark: typeof import('@vueuse/core')['usePreferredDark']
|
||||
const usePreferredLanguages: typeof import('@vueuse/core')['usePreferredLanguages']
|
||||
const usePreferredReducedMotion: typeof import('@vueuse/core')['usePreferredReducedMotion']
|
||||
const usePrevious: typeof import('@vueuse/core')['usePrevious']
|
||||
const useQuery: typeof import('./composables/useQuery')['useQuery']
|
||||
const useRafFn: typeof import('@vueuse/core')['useRafFn']
|
||||
const useRefHistory: typeof import('@vueuse/core')['useRefHistory']
|
||||
const useResizeObserver: typeof import('@vueuse/core')['useResizeObserver']
|
||||
const useScreenOrientation: typeof import('@vueuse/core')['useScreenOrientation']
|
||||
const useScreenSafeArea: typeof import('@vueuse/core')['useScreenSafeArea']
|
||||
const useScriptTag: typeof import('@vueuse/core')['useScriptTag']
|
||||
const useScroll: typeof import('@vueuse/core')['useScroll']
|
||||
const useScrollLock: typeof import('@vueuse/core')['useScrollLock']
|
||||
const useSessionStorage: typeof import('@vueuse/core')['useSessionStorage']
|
||||
const useShare: typeof import('@vueuse/core')['useShare']
|
||||
const useSlots: typeof import('vue')['useSlots']
|
||||
const useSorted: typeof import('@vueuse/core')['useSorted']
|
||||
const useSpeechRecognition: typeof import('@vueuse/core')['useSpeechRecognition']
|
||||
const useSpeechSynthesis: typeof import('@vueuse/core')['useSpeechSynthesis']
|
||||
const useStepper: typeof import('@vueuse/core')['useStepper']
|
||||
const useStorage: typeof import('@vueuse/core')['useStorage']
|
||||
const useStorageAsync: typeof import('@vueuse/core')['useStorageAsync']
|
||||
const useStyleTag: typeof import('@vueuse/core')['useStyleTag']
|
||||
const useSupported: typeof import('@vueuse/core')['useSupported']
|
||||
const useSwipe: typeof import('@vueuse/core')['useSwipe']
|
||||
const useTemplateRef: typeof import('vue')['useTemplateRef']
|
||||
const useTemplateRefsList: typeof import('@vueuse/core')['useTemplateRefsList']
|
||||
const useTextDirection: typeof import('@vueuse/core')['useTextDirection']
|
||||
const useTextSelection: typeof import('@vueuse/core')['useTextSelection']
|
||||
const useTextareaAutosize: typeof import('@vueuse/core')['useTextareaAutosize']
|
||||
const useThrottle: typeof import('@vueuse/core')['useThrottle']
|
||||
const useThrottleFn: typeof import('@vueuse/core')['useThrottleFn']
|
||||
const useThrottledRefHistory: typeof import('@vueuse/core')['useThrottledRefHistory']
|
||||
const useTimeAgo: typeof import('@vueuse/core')['useTimeAgo']
|
||||
const useTimeout: typeof import('@vueuse/core')['useTimeout']
|
||||
const useTimeoutFn: typeof import('@vueuse/core')['useTimeoutFn']
|
||||
const useTimeoutPoll: typeof import('@vueuse/core')['useTimeoutPoll']
|
||||
const useTimestamp: typeof import('@vueuse/core')['useTimestamp']
|
||||
const useTitle: typeof import('@vueuse/core')['useTitle']
|
||||
const useToNumber: typeof import('@vueuse/core')['useToNumber']
|
||||
const useToString: typeof import('@vueuse/core')['useToString']
|
||||
const useToggle: typeof import('@vueuse/core')['useToggle']
|
||||
const useTransition: typeof import('@vueuse/core')['useTransition']
|
||||
const useUrlSearchParams: typeof import('@vueuse/core')['useUrlSearchParams']
|
||||
const useUserMedia: typeof import('@vueuse/core')['useUserMedia']
|
||||
const useVModel: typeof import('@vueuse/core')['useVModel']
|
||||
const useVModels: typeof import('@vueuse/core')['useVModels']
|
||||
const useVibrate: typeof import('@vueuse/core')['useVibrate']
|
||||
const useVirtualList: typeof import('@vueuse/core')['useVirtualList']
|
||||
const useWakeLock: typeof import('@vueuse/core')['useWakeLock']
|
||||
const useWebNotification: typeof import('@vueuse/core')['useWebNotification']
|
||||
const useWebSocket: typeof import('@vueuse/core')['useWebSocket']
|
||||
const useWebWorker: typeof import('@vueuse/core')['useWebWorker']
|
||||
const useWebWorkerFn: typeof import('@vueuse/core')['useWebWorkerFn']
|
||||
const useWindowFocus: typeof import('@vueuse/core')['useWindowFocus']
|
||||
const useWindowScroll: typeof import('@vueuse/core')['useWindowScroll']
|
||||
const useWindowSize: typeof import('@vueuse/core')['useWindowSize']
|
||||
const watch: typeof import('vue')['watch']
|
||||
const watchArray: typeof import('@vueuse/core')['watchArray']
|
||||
const watchAtMost: typeof import('@vueuse/core')['watchAtMost']
|
||||
const watchDebounced: typeof import('@vueuse/core')['watchDebounced']
|
||||
const watchDeep: typeof import('@vueuse/core')['watchDeep']
|
||||
const watchEffect: typeof import('vue')['watchEffect']
|
||||
const watchIgnorable: typeof import('@vueuse/core')['watchIgnorable']
|
||||
const watchImmediate: typeof import('@vueuse/core')['watchImmediate']
|
||||
const watchOnce: typeof import('@vueuse/core')['watchOnce']
|
||||
const watchPausable: typeof import('@vueuse/core')['watchPausable']
|
||||
const watchPostEffect: typeof import('vue')['watchPostEffect']
|
||||
const watchSyncEffect: typeof import('vue')['watchSyncEffect']
|
||||
const watchThrottled: typeof import('@vueuse/core')['watchThrottled']
|
||||
const watchTriggerable: typeof import('@vueuse/core')['watchTriggerable']
|
||||
const watchWithFilter: typeof import('@vueuse/core')['watchWithFilter']
|
||||
const whenever: typeof import('@vueuse/core')['whenever']
|
||||
}
|
||||
// for type re-export
|
||||
declare global {
|
||||
// @ts-ignore
|
||||
export type { Component, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue'
|
||||
import('vue')
|
||||
}
|
||||
// for vue template auto import
|
||||
import { UnwrapRef } from 'vue'
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {}
|
||||
interface ComponentCustomProperties {
|
||||
readonly EffectScope: UnwrapRef<typeof import('vue')['EffectScope']>
|
||||
readonly WxH5Login: UnwrapRef<typeof import('./utils/login copy.js')['WxH5Login']>
|
||||
readonly aesDecrypt: UnwrapRef<typeof import('./utils/crypto.js')['aesDecrypt']>
|
||||
readonly aesEncrypt: UnwrapRef<typeof import('./utils/crypto.js')['aesEncrypt']>
|
||||
readonly asyncComputed: UnwrapRef<typeof import('@vueuse/core')['asyncComputed']>
|
||||
readonly autoResetRef: UnwrapRef<typeof import('@vueuse/core')['autoResetRef']>
|
||||
readonly computed: UnwrapRef<typeof import('vue')['computed']>
|
||||
readonly computedAsync: UnwrapRef<typeof import('@vueuse/core')['computedAsync']>
|
||||
readonly computedEager: UnwrapRef<typeof import('@vueuse/core')['computedEager']>
|
||||
readonly computedInject: UnwrapRef<typeof import('@vueuse/core')['computedInject']>
|
||||
readonly computedWithControl: UnwrapRef<typeof import('@vueuse/core')['computedWithControl']>
|
||||
readonly controlledComputed: UnwrapRef<typeof import('@vueuse/core')['controlledComputed']>
|
||||
readonly controlledRef: UnwrapRef<typeof import('@vueuse/core')['controlledRef']>
|
||||
readonly createApp: UnwrapRef<typeof import('vue')['createApp']>
|
||||
readonly createEventHook: UnwrapRef<typeof import('@vueuse/core')['createEventHook']>
|
||||
readonly createGlobalState: UnwrapRef<typeof import('@vueuse/core')['createGlobalState']>
|
||||
readonly createInjectionState: UnwrapRef<typeof import('@vueuse/core')['createInjectionState']>
|
||||
readonly createReactiveFn: UnwrapRef<typeof import('@vueuse/core')['createReactiveFn']>
|
||||
readonly createReusableTemplate: UnwrapRef<typeof import('@vueuse/core')['createReusableTemplate']>
|
||||
readonly createSharedComposable: UnwrapRef<typeof import('@vueuse/core')['createSharedComposable']>
|
||||
readonly createTemplatePromise: UnwrapRef<typeof import('@vueuse/core')['createTemplatePromise']>
|
||||
readonly createUnrefFn: UnwrapRef<typeof import('@vueuse/core')['createUnrefFn']>
|
||||
readonly customRef: UnwrapRef<typeof import('vue')['customRef']>
|
||||
readonly debouncedRef: UnwrapRef<typeof import('@vueuse/core')['debouncedRef']>
|
||||
readonly debouncedWatch: UnwrapRef<typeof import('@vueuse/core')['debouncedWatch']>
|
||||
readonly defineAsyncComponent: UnwrapRef<typeof import('vue')['defineAsyncComponent']>
|
||||
readonly defineComponent: UnwrapRef<typeof import('vue')['defineComponent']>
|
||||
readonly eagerComputed: UnwrapRef<typeof import('@vueuse/core')['eagerComputed']>
|
||||
readonly effectScope: UnwrapRef<typeof import('vue')['effectScope']>
|
||||
readonly extendRef: UnwrapRef<typeof import('@vueuse/core')['extendRef']>
|
||||
readonly getCurrentInstance: UnwrapRef<typeof import('vue')['getCurrentInstance']>
|
||||
readonly getCurrentScope: UnwrapRef<typeof import('vue')['getCurrentScope']>
|
||||
readonly h: UnwrapRef<typeof import('vue')['h']>
|
||||
readonly ignorableWatch: UnwrapRef<typeof import('@vueuse/core')['ignorableWatch']>
|
||||
readonly inject: UnwrapRef<typeof import('vue')['inject']>
|
||||
readonly injectLocal: UnwrapRef<typeof import('@vueuse/core')['injectLocal']>
|
||||
readonly isDefined: UnwrapRef<typeof import('@vueuse/core')['isDefined']>
|
||||
readonly isProxy: UnwrapRef<typeof import('vue')['isProxy']>
|
||||
readonly isReactive: UnwrapRef<typeof import('vue')['isReactive']>
|
||||
readonly isReadonly: UnwrapRef<typeof import('vue')['isReadonly']>
|
||||
readonly isRef: UnwrapRef<typeof import('vue')['isRef']>
|
||||
readonly makeDestructurable: UnwrapRef<typeof import('@vueuse/core')['makeDestructurable']>
|
||||
readonly markRaw: UnwrapRef<typeof import('vue')['markRaw']>
|
||||
readonly nextTick: UnwrapRef<typeof import('vue')['nextTick']>
|
||||
readonly onActivated: UnwrapRef<typeof import('vue')['onActivated']>
|
||||
readonly onAddToFavorites: UnwrapRef<typeof import('@dcloudio/uni-app')['onAddToFavorites']>
|
||||
readonly onBackPress: UnwrapRef<typeof import('@dcloudio/uni-app')['onBackPress']>
|
||||
readonly onBeforeMount: UnwrapRef<typeof import('vue')['onBeforeMount']>
|
||||
readonly onBeforeUnmount: UnwrapRef<typeof import('vue')['onBeforeUnmount']>
|
||||
readonly onBeforeUpdate: UnwrapRef<typeof import('vue')['onBeforeUpdate']>
|
||||
readonly onClickOutside: UnwrapRef<typeof import('@vueuse/core')['onClickOutside']>
|
||||
readonly onDeactivated: UnwrapRef<typeof import('vue')['onDeactivated']>
|
||||
readonly onError: UnwrapRef<typeof import('@dcloudio/uni-app')['onError']>
|
||||
readonly onErrorCaptured: UnwrapRef<typeof import('vue')['onErrorCaptured']>
|
||||
readonly onHide: UnwrapRef<typeof import('@dcloudio/uni-app')['onHide']>
|
||||
readonly onKeyStroke: UnwrapRef<typeof import('@vueuse/core')['onKeyStroke']>
|
||||
readonly onLaunch: UnwrapRef<typeof import('@dcloudio/uni-app')['onLaunch']>
|
||||
readonly onLoad: UnwrapRef<typeof import('@dcloudio/uni-app')['onLoad']>
|
||||
readonly onLongPress: UnwrapRef<typeof import('@vueuse/core')['onLongPress']>
|
||||
readonly onMounted: UnwrapRef<typeof import('vue')['onMounted']>
|
||||
readonly onNavigationBarButtonTap: UnwrapRef<typeof import('@dcloudio/uni-app')['onNavigationBarButtonTap']>
|
||||
readonly onNavigationBarSearchInputChanged: UnwrapRef<typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputChanged']>
|
||||
readonly onNavigationBarSearchInputClicked: UnwrapRef<typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputClicked']>
|
||||
readonly onNavigationBarSearchInputConfirmed: UnwrapRef<typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputConfirmed']>
|
||||
readonly onNavigationBarSearchInputFocusChanged: UnwrapRef<typeof import('@dcloudio/uni-app')['onNavigationBarSearchInputFocusChanged']>
|
||||
readonly onPageNotFound: UnwrapRef<typeof import('@dcloudio/uni-app')['onPageNotFound']>
|
||||
readonly onPageScroll: UnwrapRef<typeof import('@dcloudio/uni-app')['onPageScroll']>
|
||||
readonly onPullDownRefresh: UnwrapRef<typeof import('@dcloudio/uni-app')['onPullDownRefresh']>
|
||||
readonly onReachBottom: UnwrapRef<typeof import('@dcloudio/uni-app')['onReachBottom']>
|
||||
readonly onReady: UnwrapRef<typeof import('@dcloudio/uni-app')['onReady']>
|
||||
readonly onRenderTracked: UnwrapRef<typeof import('vue')['onRenderTracked']>
|
||||
readonly onRenderTriggered: UnwrapRef<typeof import('vue')['onRenderTriggered']>
|
||||
readonly onResize: UnwrapRef<typeof import('@dcloudio/uni-app')['onResize']>
|
||||
readonly onScopeDispose: UnwrapRef<typeof import('vue')['onScopeDispose']>
|
||||
readonly onServerPrefetch: UnwrapRef<typeof import('vue')['onServerPrefetch']>
|
||||
readonly onShareAppMessage: UnwrapRef<typeof import('@dcloudio/uni-app')['onShareAppMessage']>
|
||||
readonly onShareTimeline: UnwrapRef<typeof import('@dcloudio/uni-app')['onShareTimeline']>
|
||||
readonly onShow: UnwrapRef<typeof import('@dcloudio/uni-app')['onShow']>
|
||||
readonly onStartTyping: UnwrapRef<typeof import('@vueuse/core')['onStartTyping']>
|
||||
readonly onTabItemTap: UnwrapRef<typeof import('@dcloudio/uni-app')['onTabItemTap']>
|
||||
readonly onThemeChange: UnwrapRef<typeof import('@dcloudio/uni-app')['onThemeChange']>
|
||||
readonly onUnhandledRejection: UnwrapRef<typeof import('@dcloudio/uni-app')['onUnhandledRejection']>
|
||||
readonly onUnload: UnwrapRef<typeof import('@dcloudio/uni-app')['onUnload']>
|
||||
readonly onUnmounted: UnwrapRef<typeof import('vue')['onUnmounted']>
|
||||
readonly onUpdated: UnwrapRef<typeof import('vue')['onUpdated']>
|
||||
readonly onWatcherCleanup: UnwrapRef<typeof import('vue')['onWatcherCleanup']>
|
||||
readonly pausableWatch: UnwrapRef<typeof import('@vueuse/core')['pausableWatch']>
|
||||
readonly provide: UnwrapRef<typeof import('vue')['provide']>
|
||||
readonly provideLocal: UnwrapRef<typeof import('@vueuse/core')['provideLocal']>
|
||||
readonly reactify: UnwrapRef<typeof import('@vueuse/core')['reactify']>
|
||||
readonly reactifyObject: UnwrapRef<typeof import('@vueuse/core')['reactifyObject']>
|
||||
readonly reactive: UnwrapRef<typeof import('vue')['reactive']>
|
||||
readonly reactiveComputed: UnwrapRef<typeof import('@vueuse/core')['reactiveComputed']>
|
||||
readonly reactiveOmit: UnwrapRef<typeof import('@vueuse/core')['reactiveOmit']>
|
||||
readonly reactivePick: UnwrapRef<typeof import('@vueuse/core')['reactivePick']>
|
||||
readonly readonly: UnwrapRef<typeof import('vue')['readonly']>
|
||||
readonly ref: UnwrapRef<typeof import('vue')['ref']>
|
||||
readonly refAutoReset: UnwrapRef<typeof import('@vueuse/core')['refAutoReset']>
|
||||
readonly refDebounced: UnwrapRef<typeof import('@vueuse/core')['refDebounced']>
|
||||
readonly refDefault: UnwrapRef<typeof import('@vueuse/core')['refDefault']>
|
||||
readonly refThrottled: UnwrapRef<typeof import('@vueuse/core')['refThrottled']>
|
||||
readonly refWithControl: UnwrapRef<typeof import('@vueuse/core')['refWithControl']>
|
||||
readonly request: UnwrapRef<typeof import('./utils/request.js')['default']>
|
||||
readonly resolveComponent: UnwrapRef<typeof import('vue')['resolveComponent']>
|
||||
readonly resolveRef: UnwrapRef<typeof import('@vueuse/core')['resolveRef']>
|
||||
readonly resolveUnref: UnwrapRef<typeof import('@vueuse/core')['resolveUnref']>
|
||||
readonly shallowReactive: UnwrapRef<typeof import('vue')['shallowReactive']>
|
||||
readonly shallowReadonly: UnwrapRef<typeof import('vue')['shallowReadonly']>
|
||||
readonly shallowRef: UnwrapRef<typeof import('vue')['shallowRef']>
|
||||
readonly syncRef: UnwrapRef<typeof import('@vueuse/core')['syncRef']>
|
||||
readonly syncRefs: UnwrapRef<typeof import('@vueuse/core')['syncRefs']>
|
||||
readonly templateRef: UnwrapRef<typeof import('@vueuse/core')['templateRef']>
|
||||
readonly throttledRef: UnwrapRef<typeof import('@vueuse/core')['throttledRef']>
|
||||
readonly throttledWatch: UnwrapRef<typeof import('@vueuse/core')['throttledWatch']>
|
||||
readonly toRaw: UnwrapRef<typeof import('vue')['toRaw']>
|
||||
readonly toReactive: UnwrapRef<typeof import('@vueuse/core')['toReactive']>
|
||||
readonly toRef: UnwrapRef<typeof import('vue')['toRef']>
|
||||
readonly toRefs: UnwrapRef<typeof import('vue')['toRefs']>
|
||||
readonly toValue: UnwrapRef<typeof import('vue')['toValue']>
|
||||
readonly triggerRef: UnwrapRef<typeof import('vue')['triggerRef']>
|
||||
readonly tryOnBeforeMount: UnwrapRef<typeof import('@vueuse/core')['tryOnBeforeMount']>
|
||||
readonly tryOnBeforeUnmount: UnwrapRef<typeof import('@vueuse/core')['tryOnBeforeUnmount']>
|
||||
readonly tryOnMounted: UnwrapRef<typeof import('@vueuse/core')['tryOnMounted']>
|
||||
readonly tryOnScopeDispose: UnwrapRef<typeof import('@vueuse/core')['tryOnScopeDispose']>
|
||||
readonly tryOnUnmounted: UnwrapRef<typeof import('@vueuse/core')['tryOnUnmounted']>
|
||||
readonly unref: UnwrapRef<typeof import('vue')['unref']>
|
||||
readonly unrefElement: UnwrapRef<typeof import('@vueuse/core')['unrefElement']>
|
||||
readonly until: UnwrapRef<typeof import('@vueuse/core')['until']>
|
||||
readonly useActiveElement: UnwrapRef<typeof import('@vueuse/core')['useActiveElement']>
|
||||
readonly useAnimate: UnwrapRef<typeof import('@vueuse/core')['useAnimate']>
|
||||
readonly useArrayDifference: UnwrapRef<typeof import('@vueuse/core')['useArrayDifference']>
|
||||
readonly useArrayEvery: UnwrapRef<typeof import('@vueuse/core')['useArrayEvery']>
|
||||
readonly useArrayFilter: UnwrapRef<typeof import('@vueuse/core')['useArrayFilter']>
|
||||
readonly useArrayFind: UnwrapRef<typeof import('@vueuse/core')['useArrayFind']>
|
||||
readonly useArrayFindIndex: UnwrapRef<typeof import('@vueuse/core')['useArrayFindIndex']>
|
||||
readonly useArrayFindLast: UnwrapRef<typeof import('@vueuse/core')['useArrayFindLast']>
|
||||
readonly useArrayIncludes: UnwrapRef<typeof import('@vueuse/core')['useArrayIncludes']>
|
||||
readonly useArrayJoin: UnwrapRef<typeof import('@vueuse/core')['useArrayJoin']>
|
||||
readonly useArrayMap: UnwrapRef<typeof import('@vueuse/core')['useArrayMap']>
|
||||
readonly useArrayReduce: UnwrapRef<typeof import('@vueuse/core')['useArrayReduce']>
|
||||
readonly useArraySome: UnwrapRef<typeof import('@vueuse/core')['useArraySome']>
|
||||
readonly useArrayUnique: UnwrapRef<typeof import('@vueuse/core')['useArrayUnique']>
|
||||
readonly useAsyncQueue: UnwrapRef<typeof import('@vueuse/core')['useAsyncQueue']>
|
||||
readonly useAsyncState: UnwrapRef<typeof import('@vueuse/core')['useAsyncState']>
|
||||
readonly useAttrs: UnwrapRef<typeof import('vue')['useAttrs']>
|
||||
readonly useBase64: UnwrapRef<typeof import('@vueuse/core')['useBase64']>
|
||||
readonly useBattery: UnwrapRef<typeof import('@vueuse/core')['useBattery']>
|
||||
readonly useBluetooth: UnwrapRef<typeof import('@vueuse/core')['useBluetooth']>
|
||||
readonly useBreakpoints: UnwrapRef<typeof import('@vueuse/core')['useBreakpoints']>
|
||||
readonly useBroadcastChannel: UnwrapRef<typeof import('@vueuse/core')['useBroadcastChannel']>
|
||||
readonly useBrowserLocation: UnwrapRef<typeof import('@vueuse/core')['useBrowserLocation']>
|
||||
readonly useCached: UnwrapRef<typeof import('@vueuse/core')['useCached']>
|
||||
readonly useClipboard: UnwrapRef<typeof import('@vueuse/core')['useClipboard']>
|
||||
readonly useClipboardItems: UnwrapRef<typeof import('@vueuse/core')['useClipboardItems']>
|
||||
readonly useCloned: UnwrapRef<typeof import('@vueuse/core')['useCloned']>
|
||||
readonly useColorMode: UnwrapRef<typeof import('@vueuse/core')['useColorMode']>
|
||||
readonly useConfirmDialog: UnwrapRef<typeof import('@vueuse/core')['useConfirmDialog']>
|
||||
readonly useCount: UnwrapRef<typeof import('./composables/useCount')['useCount']>
|
||||
readonly useCounter: UnwrapRef<typeof import('@vueuse/core')['useCounter']>
|
||||
readonly useCssModule: UnwrapRef<typeof import('vue')['useCssModule']>
|
||||
readonly useCssVar: UnwrapRef<typeof import('@vueuse/core')['useCssVar']>
|
||||
readonly useCssVars: UnwrapRef<typeof import('vue')['useCssVars']>
|
||||
readonly useCurrentElement: UnwrapRef<typeof import('@vueuse/core')['useCurrentElement']>
|
||||
readonly useCycleList: UnwrapRef<typeof import('@vueuse/core')['useCycleList']>
|
||||
readonly useDark: UnwrapRef<typeof import('@vueuse/core')['useDark']>
|
||||
readonly useDateFormat: UnwrapRef<typeof import('@vueuse/core')['useDateFormat']>
|
||||
readonly useDebounce: UnwrapRef<typeof import('@vueuse/core')['useDebounce']>
|
||||
readonly useDebounceFn: UnwrapRef<typeof import('@vueuse/core')['useDebounceFn']>
|
||||
readonly useDebouncedRefHistory: UnwrapRef<typeof import('@vueuse/core')['useDebouncedRefHistory']>
|
||||
readonly useDeviceMotion: UnwrapRef<typeof import('@vueuse/core')['useDeviceMotion']>
|
||||
readonly useDeviceOrientation: UnwrapRef<typeof import('@vueuse/core')['useDeviceOrientation']>
|
||||
readonly useDevicePixelRatio: UnwrapRef<typeof import('@vueuse/core')['useDevicePixelRatio']>
|
||||
readonly useDevicesList: UnwrapRef<typeof import('@vueuse/core')['useDevicesList']>
|
||||
readonly useDisplayMedia: UnwrapRef<typeof import('@vueuse/core')['useDisplayMedia']>
|
||||
readonly useDocumentVisibility: UnwrapRef<typeof import('@vueuse/core')['useDocumentVisibility']>
|
||||
readonly useDraggable: UnwrapRef<typeof import('@vueuse/core')['useDraggable']>
|
||||
readonly useDropZone: UnwrapRef<typeof import('@vueuse/core')['useDropZone']>
|
||||
readonly useElementBounding: UnwrapRef<typeof import('@vueuse/core')['useElementBounding']>
|
||||
readonly useElementByPoint: UnwrapRef<typeof import('@vueuse/core')['useElementByPoint']>
|
||||
readonly useElementHover: UnwrapRef<typeof import('@vueuse/core')['useElementHover']>
|
||||
readonly useElementSize: UnwrapRef<typeof import('@vueuse/core')['useElementSize']>
|
||||
readonly useElementVisibility: UnwrapRef<typeof import('@vueuse/core')['useElementVisibility']>
|
||||
readonly useEventBus: UnwrapRef<typeof import('@vueuse/core')['useEventBus']>
|
||||
readonly useEventListener: UnwrapRef<typeof import('@vueuse/core')['useEventListener']>
|
||||
readonly useEventSource: UnwrapRef<typeof import('@vueuse/core')['useEventSource']>
|
||||
readonly useEyeDropper: UnwrapRef<typeof import('@vueuse/core')['useEyeDropper']>
|
||||
readonly useFavicon: UnwrapRef<typeof import('@vueuse/core')['useFavicon']>
|
||||
readonly useFetch: UnwrapRef<typeof import('@vueuse/core')['useFetch']>
|
||||
readonly useFileDialog: UnwrapRef<typeof import('@vueuse/core')['useFileDialog']>
|
||||
readonly useFileSystemAccess: UnwrapRef<typeof import('@vueuse/core')['useFileSystemAccess']>
|
||||
readonly useFocus: UnwrapRef<typeof import('@vueuse/core')['useFocus']>
|
||||
readonly useFocusWithin: UnwrapRef<typeof import('@vueuse/core')['useFocusWithin']>
|
||||
readonly useFps: UnwrapRef<typeof import('@vueuse/core')['useFps']>
|
||||
readonly useFullscreen: UnwrapRef<typeof import('@vueuse/core')['useFullscreen']>
|
||||
readonly useGamepad: UnwrapRef<typeof import('@vueuse/core')['useGamepad']>
|
||||
readonly useGeolocation: UnwrapRef<typeof import('@vueuse/core')['useGeolocation']>
|
||||
readonly useId: UnwrapRef<typeof import('vue')['useId']>
|
||||
readonly useIdle: UnwrapRef<typeof import('@vueuse/core')['useIdle']>
|
||||
readonly useImage: UnwrapRef<typeof import('@vueuse/core')['useImage']>
|
||||
readonly useInfiniteScroll: UnwrapRef<typeof import('@vueuse/core')['useInfiniteScroll']>
|
||||
readonly useIntersectionObserver: UnwrapRef<typeof import('@vueuse/core')['useIntersectionObserver']>
|
||||
readonly useInterval: UnwrapRef<typeof import('@vueuse/core')['useInterval']>
|
||||
readonly useIntervalFn: UnwrapRef<typeof import('@vueuse/core')['useIntervalFn']>
|
||||
readonly useKeyModifier: UnwrapRef<typeof import('@vueuse/core')['useKeyModifier']>
|
||||
readonly useLastChanged: UnwrapRef<typeof import('@vueuse/core')['useLastChanged']>
|
||||
readonly useLocalStorage: UnwrapRef<typeof import('@vueuse/core')['useLocalStorage']>
|
||||
readonly useMagicKeys: UnwrapRef<typeof import('@vueuse/core')['useMagicKeys']>
|
||||
readonly useManualRefHistory: UnwrapRef<typeof import('@vueuse/core')['useManualRefHistory']>
|
||||
readonly useMediaControls: UnwrapRef<typeof import('@vueuse/core')['useMediaControls']>
|
||||
readonly useMediaQuery: UnwrapRef<typeof import('@vueuse/core')['useMediaQuery']>
|
||||
readonly useMemoize: UnwrapRef<typeof import('@vueuse/core')['useMemoize']>
|
||||
readonly useMemory: UnwrapRef<typeof import('@vueuse/core')['useMemory']>
|
||||
readonly useModel: UnwrapRef<typeof import('vue')['useModel']>
|
||||
readonly useMounted: UnwrapRef<typeof import('@vueuse/core')['useMounted']>
|
||||
readonly useMouse: UnwrapRef<typeof import('@vueuse/core')['useMouse']>
|
||||
readonly useMouseInElement: UnwrapRef<typeof import('@vueuse/core')['useMouseInElement']>
|
||||
readonly useMousePressed: UnwrapRef<typeof import('@vueuse/core')['useMousePressed']>
|
||||
readonly useMutationObserver: UnwrapRef<typeof import('@vueuse/core')['useMutationObserver']>
|
||||
readonly useNavigatorLanguage: UnwrapRef<typeof import('@vueuse/core')['useNavigatorLanguage']>
|
||||
readonly useNetwork: UnwrapRef<typeof import('@vueuse/core')['useNetwork']>
|
||||
readonly useNow: UnwrapRef<typeof import('@vueuse/core')['useNow']>
|
||||
readonly useObjectUrl: UnwrapRef<typeof import('@vueuse/core')['useObjectUrl']>
|
||||
readonly useOffsetPagination: UnwrapRef<typeof import('@vueuse/core')['useOffsetPagination']>
|
||||
readonly useOnline: UnwrapRef<typeof import('@vueuse/core')['useOnline']>
|
||||
readonly usePageLeave: UnwrapRef<typeof import('@vueuse/core')['usePageLeave']>
|
||||
readonly useParallax: UnwrapRef<typeof import('@vueuse/core')['useParallax']>
|
||||
readonly useParentElement: UnwrapRef<typeof import('@vueuse/core')['useParentElement']>
|
||||
readonly usePerformanceObserver: UnwrapRef<typeof import('@vueuse/core')['usePerformanceObserver']>
|
||||
readonly usePermission: UnwrapRef<typeof import('@vueuse/core')['usePermission']>
|
||||
readonly usePointer: UnwrapRef<typeof import('@vueuse/core')['usePointer']>
|
||||
readonly usePointerLock: UnwrapRef<typeof import('@vueuse/core')['usePointerLock']>
|
||||
readonly usePointerSwipe: UnwrapRef<typeof import('@vueuse/core')['usePointerSwipe']>
|
||||
readonly usePreferredColorScheme: UnwrapRef<typeof import('@vueuse/core')['usePreferredColorScheme']>
|
||||
readonly usePreferredContrast: UnwrapRef<typeof import('@vueuse/core')['usePreferredContrast']>
|
||||
readonly usePreferredDark: UnwrapRef<typeof import('@vueuse/core')['usePreferredDark']>
|
||||
readonly usePreferredLanguages: UnwrapRef<typeof import('@vueuse/core')['usePreferredLanguages']>
|
||||
readonly usePreferredReducedMotion: UnwrapRef<typeof import('@vueuse/core')['usePreferredReducedMotion']>
|
||||
readonly usePrevious: UnwrapRef<typeof import('@vueuse/core')['usePrevious']>
|
||||
readonly useQuery: UnwrapRef<typeof import('./composables/useQuery')['useQuery']>
|
||||
readonly useRafFn: UnwrapRef<typeof import('@vueuse/core')['useRafFn']>
|
||||
readonly useRefHistory: UnwrapRef<typeof import('@vueuse/core')['useRefHistory']>
|
||||
readonly useResizeObserver: UnwrapRef<typeof import('@vueuse/core')['useResizeObserver']>
|
||||
readonly useScreenOrientation: UnwrapRef<typeof import('@vueuse/core')['useScreenOrientation']>
|
||||
readonly useScreenSafeArea: UnwrapRef<typeof import('@vueuse/core')['useScreenSafeArea']>
|
||||
readonly useScriptTag: UnwrapRef<typeof import('@vueuse/core')['useScriptTag']>
|
||||
readonly useScroll: UnwrapRef<typeof import('@vueuse/core')['useScroll']>
|
||||
readonly useScrollLock: UnwrapRef<typeof import('@vueuse/core')['useScrollLock']>
|
||||
readonly useSessionStorage: UnwrapRef<typeof import('@vueuse/core')['useSessionStorage']>
|
||||
readonly useShare: UnwrapRef<typeof import('@vueuse/core')['useShare']>
|
||||
readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
|
||||
readonly useSorted: UnwrapRef<typeof import('@vueuse/core')['useSorted']>
|
||||
readonly useSpeechRecognition: UnwrapRef<typeof import('@vueuse/core')['useSpeechRecognition']>
|
||||
readonly useSpeechSynthesis: UnwrapRef<typeof import('@vueuse/core')['useSpeechSynthesis']>
|
||||
readonly useStepper: UnwrapRef<typeof import('@vueuse/core')['useStepper']>
|
||||
readonly useStorage: UnwrapRef<typeof import('@vueuse/core')['useStorage']>
|
||||
readonly useStorageAsync: UnwrapRef<typeof import('@vueuse/core')['useStorageAsync']>
|
||||
readonly useStyleTag: UnwrapRef<typeof import('@vueuse/core')['useStyleTag']>
|
||||
readonly useSupported: UnwrapRef<typeof import('@vueuse/core')['useSupported']>
|
||||
readonly useSwipe: UnwrapRef<typeof import('@vueuse/core')['useSwipe']>
|
||||
readonly useTemplateRef: UnwrapRef<typeof import('vue')['useTemplateRef']>
|
||||
readonly useTemplateRefsList: UnwrapRef<typeof import('@vueuse/core')['useTemplateRefsList']>
|
||||
readonly useTextDirection: UnwrapRef<typeof import('@vueuse/core')['useTextDirection']>
|
||||
readonly useTextSelection: UnwrapRef<typeof import('@vueuse/core')['useTextSelection']>
|
||||
readonly useTextareaAutosize: UnwrapRef<typeof import('@vueuse/core')['useTextareaAutosize']>
|
||||
readonly useThrottle: UnwrapRef<typeof import('@vueuse/core')['useThrottle']>
|
||||
readonly useThrottleFn: UnwrapRef<typeof import('@vueuse/core')['useThrottleFn']>
|
||||
readonly useThrottledRefHistory: UnwrapRef<typeof import('@vueuse/core')['useThrottledRefHistory']>
|
||||
readonly useTimeAgo: UnwrapRef<typeof import('@vueuse/core')['useTimeAgo']>
|
||||
readonly useTimeout: UnwrapRef<typeof import('@vueuse/core')['useTimeout']>
|
||||
readonly useTimeoutFn: UnwrapRef<typeof import('@vueuse/core')['useTimeoutFn']>
|
||||
readonly useTimeoutPoll: UnwrapRef<typeof import('@vueuse/core')['useTimeoutPoll']>
|
||||
readonly useTimestamp: UnwrapRef<typeof import('@vueuse/core')['useTimestamp']>
|
||||
readonly useTitle: UnwrapRef<typeof import('@vueuse/core')['useTitle']>
|
||||
readonly useToNumber: UnwrapRef<typeof import('@vueuse/core')['useToNumber']>
|
||||
readonly useToString: UnwrapRef<typeof import('@vueuse/core')['useToString']>
|
||||
readonly useToggle: UnwrapRef<typeof import('@vueuse/core')['useToggle']>
|
||||
readonly useTransition: UnwrapRef<typeof import('@vueuse/core')['useTransition']>
|
||||
readonly useUrlSearchParams: UnwrapRef<typeof import('@vueuse/core')['useUrlSearchParams']>
|
||||
readonly useUserMedia: UnwrapRef<typeof import('@vueuse/core')['useUserMedia']>
|
||||
readonly useVModel: UnwrapRef<typeof import('@vueuse/core')['useVModel']>
|
||||
readonly useVModels: UnwrapRef<typeof import('@vueuse/core')['useVModels']>
|
||||
readonly useVibrate: UnwrapRef<typeof import('@vueuse/core')['useVibrate']>
|
||||
readonly useVirtualList: UnwrapRef<typeof import('@vueuse/core')['useVirtualList']>
|
||||
readonly useWakeLock: UnwrapRef<typeof import('@vueuse/core')['useWakeLock']>
|
||||
readonly useWebNotification: UnwrapRef<typeof import('@vueuse/core')['useWebNotification']>
|
||||
readonly useWebSocket: UnwrapRef<typeof import('@vueuse/core')['useWebSocket']>
|
||||
readonly useWebWorker: UnwrapRef<typeof import('@vueuse/core')['useWebWorker']>
|
||||
readonly useWebWorkerFn: UnwrapRef<typeof import('@vueuse/core')['useWebWorkerFn']>
|
||||
readonly useWindowFocus: UnwrapRef<typeof import('@vueuse/core')['useWindowFocus']>
|
||||
readonly useWindowScroll: UnwrapRef<typeof import('@vueuse/core')['useWindowScroll']>
|
||||
readonly useWindowSize: UnwrapRef<typeof import('@vueuse/core')['useWindowSize']>
|
||||
readonly watch: UnwrapRef<typeof import('vue')['watch']>
|
||||
readonly watchArray: UnwrapRef<typeof import('@vueuse/core')['watchArray']>
|
||||
readonly watchAtMost: UnwrapRef<typeof import('@vueuse/core')['watchAtMost']>
|
||||
readonly watchDebounced: UnwrapRef<typeof import('@vueuse/core')['watchDebounced']>
|
||||
readonly watchDeep: UnwrapRef<typeof import('@vueuse/core')['watchDeep']>
|
||||
readonly watchEffect: UnwrapRef<typeof import('vue')['watchEffect']>
|
||||
readonly watchIgnorable: UnwrapRef<typeof import('@vueuse/core')['watchIgnorable']>
|
||||
readonly watchImmediate: UnwrapRef<typeof import('@vueuse/core')['watchImmediate']>
|
||||
readonly watchOnce: UnwrapRef<typeof import('@vueuse/core')['watchOnce']>
|
||||
readonly watchPausable: UnwrapRef<typeof import('@vueuse/core')['watchPausable']>
|
||||
readonly watchPostEffect: UnwrapRef<typeof import('vue')['watchPostEffect']>
|
||||
readonly watchSyncEffect: UnwrapRef<typeof import('vue')['watchSyncEffect']>
|
||||
readonly watchThrottled: UnwrapRef<typeof import('@vueuse/core')['watchThrottled']>
|
||||
readonly watchTriggerable: UnwrapRef<typeof import('@vueuse/core')['watchTriggerable']>
|
||||
readonly watchWithFilter: UnwrapRef<typeof import('@vueuse/core')['watchWithFilter']>
|
||||
readonly whenever: UnwrapRef<typeof import('@vueuse/core')['whenever']>
|
||||
}
|
||||
}
|
27
src/components.d.ts
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
/* eslint-disable */
|
||||
/* prettier-ignore */
|
||||
// @ts-nocheck
|
||||
// Generated by vite-plugin-uni-components
|
||||
// Read more: https://github.com/vuejs/core/pull/3399
|
||||
export {}
|
||||
|
||||
declare module 'vue' {
|
||||
export interface GlobalComponents {
|
||||
AppFooter: typeof import('./components/AppFooter.vue')['default']
|
||||
AppLogos: typeof import('./components/AppLogos.vue')['default']
|
||||
HiCounter: typeof import('./components/HiCounter.vue')['default']
|
||||
InputEntry: typeof import('./components/InputEntry.vue')['default']
|
||||
LButtonGroup: typeof import('./components/LButtonGroup.vue')['default']
|
||||
LExpandCollapse: typeof import('./components/LExpandCollapse.vue')['default']
|
||||
LTable: typeof import('./components/LTable.vue')['default']
|
||||
LTitle: typeof import('./components/LTitle.vue')['default']
|
||||
WdCheckbox: typeof import('wot-design-uni/components/wd-checkbox/wd-checkbox.vue')['default']
|
||||
WdIcon: typeof import('wot-design-uni/components/wd-icon/wd-icon.vue')['default']
|
||||
WdLoadmore: typeof import('wot-design-uni/components/wd-loadmore/wd-loadmore.vue')['default']
|
||||
WdNavbar: typeof import('wot-design-uni/components/wd-navbar/wd-navbar.vue')['default']
|
||||
WdNoticeBar: typeof import('wot-design-uni/components/wd-notice-bar/wd-notice-bar.vue')['default']
|
||||
WdTabbar: typeof import('wot-design-uni/components/wd-tabbar/wd-tabbar.vue')['default']
|
||||
WdTabbarItem: typeof import('wot-design-uni/components/wd-tabbar-item/wd-tabbar-item.vue')['default']
|
||||
WebviewPage: typeof import('./components/WebviewPage.vue')['default']
|
||||
}
|
||||
}
|
25
src/components/AppFooter.vue
Normal file
@ -0,0 +1,25 @@
|
||||
<script lang="ts" setup>
|
||||
function handleClickGithub() {
|
||||
if (window?.open) {
|
||||
window.open('https://github.com/uni-helper/vitesse-uni-app')
|
||||
}
|
||||
else {
|
||||
uni.showToast({
|
||||
icon: 'none',
|
||||
title: '请使用浏览器打开',
|
||||
})
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view text="xl gray4" m-5 flex items-center justify-center gap-3>
|
||||
<navigator url="/pages/index" open-type="redirect">
|
||||
<view i-carbon-campsite />
|
||||
</navigator>
|
||||
|
||||
<view cursor-pointer @click="handleClickGithub">
|
||||
<view i-carbon:logo-github />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
27
src/components/AppLogos.vue
Normal file
@ -0,0 +1,27 @@
|
||||
<template>
|
||||
<view inline-flex cursor-default text-2xl font-300>
|
||||
<view
|
||||
flex
|
||||
flex-col
|
||||
items-center
|
||||
hover-class="drop-shadow-md drop-shadow-color-green5"
|
||||
>
|
||||
<image inline-block h-18 w-18 src="/static/logo.svg" />
|
||||
<text mt--2 text-green5>
|
||||
uni-helper
|
||||
</text>
|
||||
</view>
|
||||
<view
|
||||
text="3xl gray4"
|
||||
m="x-4 y-auto"
|
||||
|
||||
i-carbon-add transform transition-all-500 hover:rotate-135
|
||||
/>
|
||||
<view flex flex-col hover-class="drop-shadow-md drop-shadow-color-purple5">
|
||||
<image inline-block h-18 w-18 src="/static/vite.png" />
|
||||
<text mt--2 text-purple5>
|
||||
Vite
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
23
src/components/HiCounter.vue
Normal file
@ -0,0 +1,23 @@
|
||||
<script setup lang="ts">
|
||||
const { count, inc, dec } = useCount()
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view inline-flex m="y-3">
|
||||
<view class="btn" @click="dec()">
|
||||
<text i-carbon-subtract />
|
||||
</view>
|
||||
<view font="mono" w="15" m-auto inline-block>
|
||||
{{ count }}
|
||||
</view>
|
||||
<view class="btn" @click="inc()">
|
||||
<text i-carbon-add />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style>
|
||||
.btn {
|
||||
--at-apply: w-8 h-8 flex items-center justify-center rounded-full bg-teal-600 text-white cursor-pointer
|
||||
}
|
||||
</style>
|
47
src/components/InputEntry.vue
Normal file
@ -0,0 +1,47 @@
|
||||
<script setup lang="ts">
|
||||
const name = ref('')
|
||||
function go() {
|
||||
if (name.value) {
|
||||
uni.navigateTo({
|
||||
url: `/pages/hi?name=${name.value}`,
|
||||
})
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view>
|
||||
<view
|
||||
p="x-4 y-2"
|
||||
w="250px"
|
||||
m="t-5 auto"
|
||||
text="center"
|
||||
bg="transparent"
|
||||
border="~ rounded gray-200 dark:gray-700 solid"
|
||||
outline="none active:none"
|
||||
box-border
|
||||
w-full
|
||||
>
|
||||
<input
|
||||
v-model="name"
|
||||
placeholder="What's your name?"
|
||||
type="text"
|
||||
autocomplete="off"
|
||||
|
||||
mr-0 w-full
|
||||
>
|
||||
</view>
|
||||
<view>
|
||||
<button
|
||||
:disabled="!name"
|
||||
|
||||
m="t-3 auto"
|
||||
m-auto w-120rpx rounded bg-teal-600 px-4 py-1 text-sm text-white
|
||||
hover-class="bg-teal-700"
|
||||
@click="go"
|
||||
>
|
||||
GO
|
||||
</button>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
87
src/components/LButtonGroup.vue
Normal file
@ -0,0 +1,87 @@
|
||||
<script setup>
|
||||
// 接收 type 和 options props 以及 v-model
|
||||
const props = defineProps({
|
||||
type: {
|
||||
type: String,
|
||||
default: 'purple-pink', // 默认颜色渐变
|
||||
},
|
||||
options: {
|
||||
type: Array,
|
||||
required: true, // 动态传入选项
|
||||
},
|
||||
modelValue: {
|
||||
type: String,
|
||||
default: '', // v-model 绑定的值
|
||||
},
|
||||
})
|
||||
const emit = defineEmits(['update:modelValue'])
|
||||
// 选中内容绑定 v-model
|
||||
const selected = ref(props.modelValue)
|
||||
|
||||
// 监听 v-model 的变化
|
||||
watch(() => props.modelValue, (newValue) => {
|
||||
selected.value = newValue
|
||||
})
|
||||
|
||||
// 根据type动态生成分割线的类名
|
||||
const lineClass = computed(() => {
|
||||
switch (props.type) {
|
||||
case 'blue-green':
|
||||
return 'bg-gradient-to-r from-blue-400 via-green-500 to-teal-500'
|
||||
case 'orange-yellow':
|
||||
return 'bg-gradient-to-r from-orange-400 via-yellow-500 to-yellow-600'
|
||||
case 'red-purple':
|
||||
return 'bg-gradient-to-r from-red-500 via-purple-500 to-purple-600'
|
||||
default:
|
||||
return 'bg-gradient-to-r from-purple-400 via-pink-500 to-red-500'
|
||||
}
|
||||
})
|
||||
|
||||
// 计算滑动线的位置和宽度
|
||||
const slideLineStyle = computed(() => {
|
||||
const index = props.options.findIndex(option => option.value === selected.value)
|
||||
const buttonWidth = 100 / props.options.length
|
||||
return {
|
||||
width: `${buttonWidth}%`,
|
||||
transform: `translateX(${index * 100}%)`,
|
||||
}
|
||||
})
|
||||
|
||||
// 选择选项函数
|
||||
function selectOption(option) {
|
||||
selected.value = option.value
|
||||
// 触发 v-model 的更新
|
||||
emit('update:modelValue', option.value)
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="relative flex">
|
||||
<div
|
||||
v-for="(option, index) in options"
|
||||
:key="index"
|
||||
class="flex-1 shrink-0 cursor-pointer py-2 text-center text-size-sm font-bold transition-transform duration-200 ease-in-out"
|
||||
:class="{ 'text-gray-900': selected === option.value, 'text-gray-500': selected !== option.value }"
|
||||
@click="selectOption(option)"
|
||||
>
|
||||
{{ option.label }}
|
||||
</div>
|
||||
<div
|
||||
class="absolute bottom-0 h-[3px] rounded transition-all duration-300"
|
||||
:style="slideLineStyle"
|
||||
:class="lineClass"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
/* 自定义样式 */
|
||||
button {
|
||||
outline: none;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
button:focus {
|
||||
outline: none;
|
||||
}
|
||||
</style>
|
61
src/components/LExpandCollapse.vue
Normal file
@ -0,0 +1,61 @@
|
||||
<script setup>
|
||||
import { computed, ref, useSlots } from 'vue'
|
||||
|
||||
// 接收最大长度的 prop,默认值 100
|
||||
const props = defineProps({
|
||||
maxLength: {
|
||||
type: Number,
|
||||
default: 100,
|
||||
},
|
||||
})
|
||||
|
||||
// 记录当前是否展开
|
||||
const isExpanded = ref(false)
|
||||
|
||||
// 获取 slot 内容
|
||||
const slots = useSlots()
|
||||
|
||||
// 计算截断后的内容
|
||||
const truncatedContent = computed(() => {
|
||||
const slotContent = getSlotContent()
|
||||
return slotContent.length > props.maxLength
|
||||
? `${slotContent.slice(0, props.maxLength)}...`
|
||||
: slotContent
|
||||
})
|
||||
|
||||
// 获取 slot 内容,确保返回的内容为字符串
|
||||
function getSlotContent() {
|
||||
const slotVNode = slots.default ? slots.default()[0] : null
|
||||
return slotVNode ? slotVNode.children.toString().trim() : '' // 获取并转化为字符串
|
||||
}
|
||||
|
||||
// 切换展开/收起状态
|
||||
function toggleExpand() {
|
||||
isExpanded.value = !isExpanded.value
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view>
|
||||
<!-- 展开/收起按钮 -->
|
||||
|
||||
<!-- 展开/收起的内容 -->
|
||||
<text v-if="isExpanded">
|
||||
<slot /> <!-- 使用 slot 来展示传递的内容 -->
|
||||
</text>
|
||||
<text v-else>
|
||||
<text>{{ truncatedContent }}</text>
|
||||
</text>
|
||||
<text
|
||||
:title="isExpanded ? '点击收起' : '点击展开'"
|
||||
class="cursor-pointer text-blue-500"
|
||||
@click="toggleExpand"
|
||||
>
|
||||
{{ isExpanded ? '收起' : '展开' }}
|
||||
</text>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
98
src/components/LTable.vue
Normal file
@ -0,0 +1,98 @@
|
||||
<script setup>
|
||||
import { computed } from 'vue'
|
||||
|
||||
// 接收表格数据和类型的 props
|
||||
const props = defineProps({
|
||||
data: {
|
||||
type: Array,
|
||||
required: true,
|
||||
},
|
||||
type: {
|
||||
type: String,
|
||||
default: 'purple-pink', // 默认渐变颜色
|
||||
},
|
||||
})
|
||||
|
||||
// 根据 type 设置不同的渐变颜色(偶数行)
|
||||
const evenClass = computed(() => {
|
||||
switch (props.type) {
|
||||
case 'blue-green':
|
||||
return 'bg-teal-100/40'
|
||||
// return 'bg-gradient-to-r from-blue-50 via-green-50 to-teal-50'
|
||||
case 'orange-yellow':
|
||||
return 'bg-gradient-to-r from-orange-50 via-yellow-50 to-yellow-100'
|
||||
case 'red-purple':
|
||||
return 'bg-gradient-to-r from-red-50 via-purple-50 to-purple-100'
|
||||
default:
|
||||
return 'bg-gradient-to-r from-purple-50 via-pink-50 to-red-50'
|
||||
}
|
||||
})
|
||||
|
||||
// 动态计算表头的背景颜色和文本颜色
|
||||
const headerClass = computed(() => {
|
||||
switch (props.type) {
|
||||
case 'blue-green':
|
||||
return 'bg-teal-200'
|
||||
// return 'bg-gradient-to-r from-blue-200 via-green-200 to-teal-200'
|
||||
case 'orange-yellow':
|
||||
return 'bg-gradient-to-r from-orange-200 via-yellow-200 to-yellow-200'
|
||||
case 'red-purple':
|
||||
return 'bg-gradient-to-r from-red-200 via-purple-200 to-purple-200'
|
||||
default:
|
||||
return 'bg-gradient-to-r from-purple-200 via-pink-200 to-red-200'
|
||||
}
|
||||
})
|
||||
// 斑马纹样式,偶数行带颜色,奇数行没有颜色,且从第二行开始
|
||||
function zebraClass(index) {
|
||||
return index % 2 === 1 ? evenClass.value : ''
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="l-table overflow-x-auto">
|
||||
<table class="min-w-full border-collapse table-auto text-center text-size-xs">
|
||||
<thead :class="headerClass">
|
||||
<tr>
|
||||
<!-- 插槽渲染表头 -->
|
||||
<slot name="header" />
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr
|
||||
v-for="(row, index) in data"
|
||||
:key="index"
|
||||
:class="zebraClass(index)"
|
||||
class="border-t"
|
||||
>
|
||||
<!-- 插槽渲染每一列的内容 -->
|
||||
<slot :row="row" />
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
/* 基础表格样式 */
|
||||
th {
|
||||
font-weight: bold;
|
||||
padding: 12px;
|
||||
text-align: left;
|
||||
border: 1px solid #e5e7eb;
|
||||
}
|
||||
|
||||
/* 表格行样式 */
|
||||
td {
|
||||
padding: 12px;
|
||||
border: 1px solid #e5e7eb;
|
||||
}
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
border-spacing: 0;
|
||||
}
|
||||
.l-table{
|
||||
@apply rounded-xl;;
|
||||
overflow: hidden;
|
||||
}
|
||||
</style>
|
58
src/components/LTitle.vue
Normal file
@ -0,0 +1,58 @@
|
||||
<script setup>
|
||||
// 接收 props
|
||||
const props = defineProps({
|
||||
title: String,
|
||||
type: {
|
||||
type: String,
|
||||
default: 'purple-pink', // 默认渐变
|
||||
},
|
||||
})
|
||||
|
||||
// 根据type返回不同的背景类名
|
||||
const titleClass = computed(() => {
|
||||
switch (props.type) {
|
||||
case 'blue-green':
|
||||
return 'bg-gradient-to-r from-blue-400 via-green-500 to-teal-500'
|
||||
case 'orange-yellow':
|
||||
return 'bg-gradient-to-r from-orange-400 via-yellow-500 to-yellow-600'
|
||||
case 'red-purple':
|
||||
return 'bg-gradient-to-r from-red-500 via-purple-500 to-purple-600'
|
||||
default:
|
||||
return 'bg-gradient-to-r from-purple-400 via-pink-500 to-red-500'
|
||||
}
|
||||
})
|
||||
|
||||
// 分割线颜色与背景对应
|
||||
const lineClass = computed(() => {
|
||||
switch (props.type) {
|
||||
case 'blue-green':
|
||||
return 'bg-gradient-to-r from-blue-400 via-green-500 to-teal-500'
|
||||
case 'orange-yellow':
|
||||
return 'bg-gradient-to-r from-orange-400 via-yellow-500 to-yellow-600'
|
||||
case 'red-purple':
|
||||
return 'bg-gradient-to-r from-red-500 via-purple-500 to-purple-600'
|
||||
default:
|
||||
return 'bg-gradient-to-r from-purple-400 via-pink-500 to-red-500'
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="relative">
|
||||
<!-- 标题部分 -->
|
||||
<div :class="titleClass" class="inline-block rounded-lg px-2 py-1 text-white font-bold shadow-md">
|
||||
{{ title }}
|
||||
</div>
|
||||
|
||||
<!-- 左上角修饰 -->
|
||||
<div class="absolute left-0 top-0 h-4 w-4 transform rounded-full bg-white shadow-md -translate-x-2 -translate-y-2" />
|
||||
|
||||
<!-- 分割线 -->
|
||||
<div class="relative mt-1.5">
|
||||
<div :class="lineClass" class="h-[2px] w-full rounded" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
</style>
|
109
src/components/WebviewPage.vue
Normal file
@ -0,0 +1,109 @@
|
||||
<script setup>
|
||||
// 接受父组件传递的 props 参数
|
||||
const props = defineProps({
|
||||
webviewSrc: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
navigationBarTitleText: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
})
|
||||
onMounted(() => {
|
||||
uni.setNavigationBarTitle({
|
||||
title: props.navigationBarTitleText,
|
||||
})
|
||||
})
|
||||
const token = uni.getStorageSync('token') // 从本地缓存中获取 token
|
||||
|
||||
const webviewUrl = computed(() => {
|
||||
const url = new URL(props.webviewSrc)
|
||||
if (token) {
|
||||
url.searchParams.set('token', token) // 在 URL 中添加 token 参数
|
||||
}
|
||||
return url.toString()
|
||||
})
|
||||
|
||||
const isLoading = ref(true) // 控制加载动画显示状态
|
||||
|
||||
// 页面加载完成时,隐藏加载动画
|
||||
function handleLoaded(e) {
|
||||
console.log('webview loaded', e)
|
||||
isLoading.value = false
|
||||
}
|
||||
// 监听消息事件,隐藏加载动画
|
||||
window.addEventListener('message', (event) => {
|
||||
const data = event.data
|
||||
if (data.hello || data.wappalyzer)
|
||||
return
|
||||
console.log('message', data)
|
||||
|
||||
if (data?.loaded) {
|
||||
console.log('loaded')
|
||||
isLoading.value = false
|
||||
}
|
||||
else if (data?.type === 'payment') {
|
||||
payment(data)
|
||||
}
|
||||
})
|
||||
|
||||
function payment(data) {
|
||||
window.location.href = data.data
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view v-if="isLoading" class="loading">
|
||||
<view class="spinner" />
|
||||
<view class="loading-text">
|
||||
加载中,请稍候...
|
||||
</view>
|
||||
</view>
|
||||
<web-view :src="webviewUrl" class="webview" @load="handleLoaded" />
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.loading {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
z-index: 10;
|
||||
}
|
||||
.spinner {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
border: 5px solid rgba(0, 106, 255, 0.2); /* 背景圆环颜色 */
|
||||
border-top-color: rgba(0, 106, 255, 0.8); /* 高亮部分颜色 */
|
||||
border-radius: 50%;
|
||||
animation: spin 1s linear infinite;
|
||||
}
|
||||
.loading-text {
|
||||
margin-top: 16px;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
background: linear-gradient(to right, #167ff6, #4a90e2);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
text-align: center;
|
||||
}
|
||||
@keyframes spin {
|
||||
from {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
to {
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
.webview {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
16
src/composables/useCount.ts
Normal file
@ -0,0 +1,16 @@
|
||||
export function useCount() {
|
||||
const count = ref(Math.round(Math.random() * 20))
|
||||
|
||||
function inc() {
|
||||
count.value += 1
|
||||
}
|
||||
function dec() {
|
||||
count.value -= 1
|
||||
}
|
||||
|
||||
return {
|
||||
count,
|
||||
inc,
|
||||
dec,
|
||||
}
|
||||
}
|
10
src/composables/useQuery.ts
Normal file
@ -0,0 +1,10 @@
|
||||
import type { MaybeRef } from '@vueuse/core'
|
||||
|
||||
export function useQuery(key?: MaybeRef<string>) {
|
||||
const query = ref<AnyObject>({})
|
||||
onLoad((q) => {
|
||||
query.value = q || {}
|
||||
})
|
||||
const value = computed(() => (key ? query.value[unref(key)] : null))
|
||||
return { query, value }
|
||||
}
|
1
src/env.d.ts
vendored
Normal file
@ -0,0 +1 @@
|
||||
/// <reference types="vite/client" />
|
77
src/layouts/home.vue
Normal file
@ -0,0 +1,77 @@
|
||||
<script setup>
|
||||
const tabbar = ref('index')
|
||||
onLoad(() => {
|
||||
const currentPage = getCurrentPages()[getCurrentPages().length - 1].route
|
||||
const pageName = currentPage.split('/').pop()
|
||||
|
||||
tabbar.value = pageName
|
||||
})
|
||||
|
||||
const menu = reactive([{ title: '首页', icon: 'home', name: 'index' }, { title: 'AI律师', icon: 'chat', name: 'ai' }, { title: '我的', icon: 'user', name: 'me' }])
|
||||
|
||||
function tabChange({ value }) {
|
||||
uni.reLaunch({
|
||||
url: `/pages/${value}`,
|
||||
})
|
||||
}
|
||||
const safeAreaTop = ref(0)
|
||||
|
||||
onMounted(() => {
|
||||
uni.getSystemInfo({
|
||||
success: (res) => {
|
||||
if (res.safeArea) {
|
||||
safeAreaTop.value = res.safeArea.top
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
const currentPage = getCurrentPages()[getCurrentPages().length - 1].route
|
||||
const pageName = currentPage.split('/').pop()
|
||||
tabbar.value = pageName
|
||||
})
|
||||
</script>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
options: {
|
||||
styleIsolation: 'shared',
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view class="h-11 flex items-center bg-white" :style="{ paddingTop: `${safeAreaTop}px` }">
|
||||
<image
|
||||
class="h-8 w-8 pl-4 pr-3"
|
||||
src="/static/image/logo.png"
|
||||
mode="scaleToFill"
|
||||
/>
|
||||
<view class="pr-1 text-xl font-bold">
|
||||
全能查
|
||||
</view>
|
||||
<!-- <view class="rounded-2xl bg-blue-500 px-2 text-white">
|
||||
专业防风险
|
||||
</view> -->
|
||||
</view>
|
||||
<view class="box-border min-h-full from-[#cfe0fa] to-[#F4F8FF] bg-gradient-to-b pb-12">
|
||||
<view>
|
||||
<slot />
|
||||
</view>
|
||||
<view>
|
||||
<wd-tabbar v-model="tabbar" custom-class="qnc-tabbar max-w-lg" shape="round" safe-area-inset-bottom fixed @change="tabChange">
|
||||
<wd-tabbar-item v-for="(item, index) in menu" :key="index" :name="item.name" :title="item.title" :icon="item.icon" />
|
||||
</wd-tabbar>
|
||||
</view>
|
||||
<view class="fixed bottom-24 right-4 z-1000 flex items-center rounded-3xl from-red-500 to-red-400 bg-gradient-to-b px-2 py-1 text-center text-white shadow-2xl">
|
||||
<wd-icon name="warning" class="mr-1" size="22px" />
|
||||
<view>投诉</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
:deep(.qnc-tabbar) {
|
||||
margin: auto !important;
|
||||
bottom: 12px !important;
|
||||
}
|
||||
</style>
|
31
src/layouts/login.vue
Normal file
@ -0,0 +1,31 @@
|
||||
<script setup>
|
||||
function handleClickLeft() {
|
||||
uni.reLaunch({
|
||||
url: '/pages/index',
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<!-- -->
|
||||
<view class="h-screen bg-[#EBF1FD]">
|
||||
<view class="login-layout min-h-full">
|
||||
<wd-navbar
|
||||
title="用户登录"
|
||||
left-arrow
|
||||
safe-area-inset-top
|
||||
custom-style="background-color: transparent !important;"
|
||||
@click-left="handleClickLeft"
|
||||
/>
|
||||
<slot />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.login-layout{
|
||||
background: url("@/static/image/login_bg.png") no-repeat;
|
||||
background-position: center;
|
||||
background-size: cover;
|
||||
}
|
||||
</style>
|
20
src/layouts/page-bak.vue
Normal file
@ -0,0 +1,20 @@
|
||||
<script setup>
|
||||
function handleClickLeft() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<wd-navbar
|
||||
title="标题" left-text="返回" placeholder left-arrow safe-area-inset-top fixed
|
||||
@click-left="handleClickLeft"
|
||||
/>
|
||||
<view class="box-border min-h-screen">
|
||||
<!-- <view class="box-border min-h-full from-lightblue-100 to-white bg-gradient-to-b"> -->
|
||||
<slot />
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
10
src/layouts/page.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<slot />
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
11
src/main.ts
Normal file
@ -0,0 +1,11 @@
|
||||
import { createSSRApp } from 'vue'
|
||||
import App from './App.vue'
|
||||
import 'uno.css'
|
||||
import '@/app.scss'
|
||||
|
||||
export function createApp() {
|
||||
const app = createSSRApp(App)
|
||||
return {
|
||||
app,
|
||||
}
|
||||
}
|
70
src/manifest.json
Normal file
@ -0,0 +1,70 @@
|
||||
{
|
||||
"name": "qnc-app",
|
||||
"appid": "__UNI__CC3DA09",
|
||||
"description": "",
|
||||
"versionName": "1.0.0",
|
||||
"versionCode": "100",
|
||||
"transformPx": false,
|
||||
"app-plus": {
|
||||
"usingComponents": true,
|
||||
"nvueStyleCompiler": "uni-app",
|
||||
"compilerVersion": 3,
|
||||
"splashscreen": {
|
||||
"alwaysShowBeforeRender": true,
|
||||
"waiting": true,
|
||||
"autoclose": true,
|
||||
"delay": 0
|
||||
},
|
||||
"modules": {},
|
||||
"distribute": {
|
||||
"android": {
|
||||
"permissions": [
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
|
||||
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
|
||||
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
|
||||
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
|
||||
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
|
||||
"<uses-feature android:name=\"android.hardware.camera\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
|
||||
]
|
||||
},
|
||||
"ios": {},
|
||||
"sdkConfigs": {}
|
||||
}
|
||||
},
|
||||
"quickapp": {},
|
||||
"mp-weixin": {
|
||||
"appid": "",
|
||||
"setting": {
|
||||
"urlCheck": false
|
||||
},
|
||||
"usingComponents": true,
|
||||
"darkmode": false,
|
||||
"themeLocation": "theme.json"
|
||||
},
|
||||
"mp-alipay": {
|
||||
"usingComponents": true
|
||||
},
|
||||
"mp-baidu": {
|
||||
"usingComponents": true
|
||||
},
|
||||
"mp-toutiao": {
|
||||
"usingComponents": true
|
||||
},
|
||||
"uniStatistics": {
|
||||
"enable": false
|
||||
},
|
||||
"vueVersion": "3",
|
||||
"h5": {
|
||||
"darkmode": false,
|
||||
"themeLocation": "theme.json"
|
||||
}
|
||||
}
|
95
src/pages.json
Normal file
@ -0,0 +1,95 @@
|
||||
{
|
||||
"pages": [
|
||||
{
|
||||
"path": "pages/index",
|
||||
"type": "home",
|
||||
"layout": "home",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/ai",
|
||||
"type": "page",
|
||||
"layout": "home",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/example",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/history_query",
|
||||
"type": "page",
|
||||
"layout": "page",
|
||||
"title": "历史报告"
|
||||
},
|
||||
{
|
||||
"path": "pages/inquire",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/list_lawsuit",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/list_marriage",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/list_risk",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/list_verify",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/login",
|
||||
"type": "page",
|
||||
"layout": "login",
|
||||
"title": "登录",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/me",
|
||||
"type": "page",
|
||||
"layout": "home",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/privacyPolicy",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/report",
|
||||
"type": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/result",
|
||||
"type": "page",
|
||||
"layout": "page"
|
||||
},
|
||||
{
|
||||
"path": "pages/userAgreement",
|
||||
"type": "page"
|
||||
}
|
||||
],
|
||||
"globalStyle": {
|
||||
"backgroundColor": "@bgColor",
|
||||
"backgroundColorBottom": "@bgColorBottom",
|
||||
"backgroundColorTop": "@bgColorTop",
|
||||
"backgroundTextStyle": "@bgTxtStyle",
|
||||
"navigationBarBackgroundColor": "#ffffff",
|
||||
"navigationBarTextStyle": "@navTxtStyle",
|
||||
"navigationBarTitleText": "全能查",
|
||||
"navigationStyle": "default"
|
||||
},
|
||||
"subPackages": []
|
||||
}
|
84
src/pages/ai.vue
Normal file
@ -0,0 +1,84 @@
|
||||
<script setup>
|
||||
import { onMounted, ref } from 'vue'
|
||||
|
||||
const userMessage = ref('')
|
||||
const messages = ref([
|
||||
{ sender: 'ai', text: 'Welcome! How can I assist you today?' },
|
||||
])
|
||||
|
||||
function sendMessage() {
|
||||
if (userMessage.value.trim() === '')
|
||||
return
|
||||
|
||||
messages.value.push({ sender: 'user', text: userMessage.value })
|
||||
|
||||
// Simulate AI response (for example purposes)
|
||||
setTimeout(() => {
|
||||
messages.value.push({
|
||||
sender: 'ai',
|
||||
text: `I'm here to assist with your questions: "${userMessage.value}"`,
|
||||
})
|
||||
}, 1000)
|
||||
|
||||
userMessage.value = ''
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view class="chat-page mx-4 flex flex-col rounded-xl shadow-lg">
|
||||
<view class="chat-window flex-1 overflow-auto border p-4">
|
||||
<view v-for="(message, index) in messages" :key="index" class="mb-2">
|
||||
<view
|
||||
v-if="message.sender === 'ai'"
|
||||
class="inline-block max-w-max rounded-xl bg-white p-2 text-left text-green-600 font-medium shadow-md"
|
||||
>
|
||||
<span>AI:</span> {{ message.text }}
|
||||
</view>
|
||||
<view
|
||||
v-else
|
||||
class="ml-auto inline-block max-w-max rounded-xl from-purple-400 via-pink-500 to-red-500 bg-gradient-to-r p-2 text-right text-white font-medium shadow-md"
|
||||
>
|
||||
<span>User:</span> {{ message.text }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="input-area mx-2 flex items-center gap-2 p-4">
|
||||
<wd-input v-model="userMessage" placeholder="Type your message..." class="flex-1" size="large" />
|
||||
<wd-button custom-class="shadow" type="primary" @click="sendMessage">
|
||||
发送
|
||||
</wd-button>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.chat-page {
|
||||
// #ifdef H5
|
||||
height: calc(100vh - 144px);
|
||||
// #endif
|
||||
|
||||
// #ifdef APP-PLUS || MP-WEIXIN
|
||||
height: calc(100vh - 188px);
|
||||
// #endif
|
||||
|
||||
}
|
||||
|
||||
// .chat-window {
|
||||
// flex-grow: 1;
|
||||
// overflow-y: auto;
|
||||
// overflow-x: hidden;
|
||||
// }
|
||||
|
||||
// .input-area {
|
||||
// flex-shrink: 0;
|
||||
// }
|
||||
</style>
|
||||
|
||||
<route lang="json">
|
||||
{
|
||||
"layout": "home",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
</route>
|
10
src/pages/example.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = 'http://192.168.1.124:5678/example' // 可以根据不同页面设置不同的值
|
||||
const navigationBarTitleText = '示例报告'
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
140
src/pages/history_query.vue
Normal file
@ -0,0 +1,140 @@
|
||||
<script setup>
|
||||
import { onLoad, onReachBottom } from '@dcloudio/uni-app'
|
||||
import { queryList } from '@/api/apis'
|
||||
|
||||
const page = ref(1)
|
||||
const pageSize = ref(10)
|
||||
const total = ref(0)
|
||||
const reportList = ref([])
|
||||
const loadingState = ref('loading')
|
||||
const num = ref(0)
|
||||
const max = ref(60)
|
||||
|
||||
// 初始加载数据
|
||||
function fetchData() {
|
||||
queryList({ page: page.value, page_size: pageSize.value }).then((res) => {
|
||||
if (res.code === 200) {
|
||||
total.value = res.data.total
|
||||
if (res.data.list && res.data.list.length > 0) {
|
||||
reportList.value.push(...res.data.list)
|
||||
page.value += 1
|
||||
}
|
||||
if (reportList.value.length >= total.value) {
|
||||
loadingState.value = 'finished'
|
||||
}
|
||||
else {
|
||||
loadingState.value = 'loading'
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// 初始加载
|
||||
onLoad(() => {
|
||||
fetchData()
|
||||
})
|
||||
|
||||
// 下拉触底加载更多
|
||||
onReachBottom(() => {
|
||||
if (loadingState.value !== 'finished') {
|
||||
if (num.value >= max.value) {
|
||||
loadingState.value = 'finished'
|
||||
}
|
||||
else {
|
||||
fetchData()
|
||||
}
|
||||
}
|
||||
})
|
||||
function toDetail(item) {
|
||||
// if (item.query_state !== 'success')
|
||||
// return
|
||||
uni.navigateTo({
|
||||
url: `/pages/report?order_id=${item.order_id}`,
|
||||
})
|
||||
}
|
||||
// 状态文字映射
|
||||
function stateText(state) {
|
||||
switch (state) {
|
||||
case 'pending':
|
||||
return '查询中'
|
||||
case 'success':
|
||||
return '查询成功'
|
||||
case 'failed':
|
||||
return '查询失败'
|
||||
default:
|
||||
return '未知状态'
|
||||
}
|
||||
}
|
||||
|
||||
// 状态颜色映射
|
||||
function statusClass(state) {
|
||||
switch (state) {
|
||||
case 'pending':
|
||||
return 'status-pending'
|
||||
case 'success':
|
||||
return 'status-success'
|
||||
case 'failed':
|
||||
return 'status-failed'
|
||||
default:
|
||||
return ''
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<wd-notice-bar
|
||||
text="为保证用户的隐私以及数据安全,您的报告生成30天之后将自动清除,请及时保存您的报告。" prefix="warn-bold" color="#007aff"
|
||||
background-color="#f8f8f8"
|
||||
/>
|
||||
<view class="flex flex-col gap-4 p-4">
|
||||
<view v-for="item in reportList" :key="item.id" class="card flex flex-col gap-2" @click="toDetail(item)">
|
||||
<view class="flex items-center justify-between">
|
||||
<view class="">
|
||||
状态:
|
||||
</view>
|
||||
<view class="rounded-xl px-2 py-1" :class="[statusClass(item.query_state)]">
|
||||
{{ stateText(item.query_state) }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="flex items-center justify-between">
|
||||
<view class="">
|
||||
报告类型
|
||||
</view>
|
||||
<view>
|
||||
{{ item.product_name }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="flex items-center justify-between">
|
||||
<view class="">
|
||||
查询时间:
|
||||
</view>
|
||||
<view>
|
||||
{{ item.create_time }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 加载更多 -->
|
||||
<wd-loadmore :state="loadingState" @reload="fetchData" />
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.status-pending {
|
||||
@apply bg-yellow-100 text-yellow-600;
|
||||
}
|
||||
|
||||
.status-success {
|
||||
@apply bg-green-100 text-green-600;
|
||||
}
|
||||
|
||||
.status-failed {
|
||||
@apply bg-red-100 text-red-600;
|
||||
}
|
||||
</style>
|
||||
|
||||
<route lang="json">
|
||||
{
|
||||
"layout": "page",
|
||||
"title": "历史报告"
|
||||
}
|
||||
</route>
|
136
src/pages/index.vue
Normal file
@ -0,0 +1,136 @@
|
||||
<script setup>
|
||||
function toInquire(name) {
|
||||
if (name === 'marriage') {
|
||||
uni.navigateTo({
|
||||
url: `/pages/inquire?p=toc_marriage`,
|
||||
})
|
||||
}
|
||||
else {
|
||||
uni.navigateTo({
|
||||
url: `/pages/list_${name}`,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 页面加载时生成 30 条通知数据
|
||||
onMounted(() => {
|
||||
})
|
||||
function toHistory() {
|
||||
uni.navigateTo({
|
||||
url: '/pages/history_query',
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view class="relative h-[165px] p-4">
|
||||
<image class="h-full w-full overflow-hidden rounded-xl" src="/static/image/banner.png" />
|
||||
</view>
|
||||
<view class="relative p-4 pb-4 pt-2">
|
||||
<view class="grid grid-cols-2 gap-3">
|
||||
<view
|
||||
class="relative flex flex-col cursor-pointer rounded-bl-[35px] rounded-br-lg rounded-tl-[35px] rounded-tr-lg bg-white px-4 py-6 shadow-lg"
|
||||
@click="toInquire('risk')"
|
||||
>
|
||||
<view class="min-h-18 gap-2 bg-white px-1">
|
||||
<view class="mb-2 flex justify-around">
|
||||
<image class="h-12 w-12 flex-shrink-0" src="/static/image/icon_3.png" mode="scaleToFill" />
|
||||
<view class="mt-1 max-w-max flex-shrink-0 text-left text-lg text-gray-600 font-bold">
|
||||
风险评估
|
||||
</view>
|
||||
</view>
|
||||
<view class="max-w-max text-left text-xs text-gray-600">
|
||||
检测个人不良记录、人企关系等
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view
|
||||
class="relative flex flex-col cursor-pointer rounded-bl-lg rounded-br-[35px] rounded-tl-lg rounded-tr-[35px] bg-white px-4 py-6 shadow-lg"
|
||||
@click="toInquire('marriage')"
|
||||
>
|
||||
<view class="min-h-18 gap-2 bg-white px-1">
|
||||
<view class="mb-2 flex justify-around">
|
||||
<view class="mt-1 max-w-max flex-shrink-0 text-left text-lg text-gray-600 font-bold">
|
||||
婚姻报告
|
||||
</view>
|
||||
<image class="h-12 w-12 flex-shrink-0" src="/static/image/icon_1.png" mode="scaleToFill" />
|
||||
</view>
|
||||
<view class="max-w-max text-left text-xs text-gray-600">
|
||||
核查个人不良,婚姻状态是否未婚、已婚、离婚、离婚冷静期
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view
|
||||
class="relative flex flex-col cursor-pointer rounded-bl-[35px] rounded-br-lg rounded-tl-[35px] rounded-tr-lg bg-white px-4 py-6 shadow-lg"
|
||||
@click="toInquire('lawsuit')"
|
||||
>
|
||||
<view class="min-h-18 gap-2 bg-white px-1">
|
||||
<view class="mb-2 flex justify-around">
|
||||
<image class="h-12 w-12 flex-shrink-0" src="/static/image/icon_2.png" mode="scaleToFill" />
|
||||
<view class="mt-1 max-w-max flex-shrink-0 text-left text-lg text-gray-600 font-bold">
|
||||
司法涉诉
|
||||
</view>
|
||||
</view>
|
||||
<view class="max-w-max text-left text-xs text-gray-600">
|
||||
查询个人与企业的民事案件、刑事案件、行政案件、非诉保全审查、执行案件、强制清算与破产等司法涉诉记录
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view
|
||||
class="relative flex flex-col cursor-pointer rounded-bl-lg rounded-br-[35px] rounded-tl-lg rounded-tr-[35px] bg-white px-4 py-6 shadow-lg"
|
||||
@click="toInquire('verify')"
|
||||
>
|
||||
<view class="min-h-18 gap-2 bg-white px-1">
|
||||
<view class="mb-2 flex justify-around">
|
||||
<view class="mt-1 max-w-max flex-shrink-0 text-left text-lg text-gray-600 font-bold">
|
||||
核验工具
|
||||
</view>
|
||||
<image class="h-12 w-12 flex-shrink-0" src="/static/image/icon_4.png" mode="scaleToFill" />
|
||||
</view>
|
||||
<view class="max-w-max text-left text-xs text-gray-600">
|
||||
核验身份证、手机、银行卡、自然人生存状态、学历、人车关系等的查询工具
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="mt-4 font-bold">
|
||||
更多服务
|
||||
</view>
|
||||
<view
|
||||
class="mt-4 box-border h-14 w-full flex items-center rounded-xl bg-white px-4 text-gray-700 shadow-xl"
|
||||
@click="toHistory"
|
||||
>
|
||||
<image class="mr-4 h-10 w-10" src="/static/image/bg_icon.png" mode="widthFix" />
|
||||
<view class="">
|
||||
<view class="font-bold">
|
||||
我的历史查询记录
|
||||
</view>
|
||||
<view class="text-xs">
|
||||
查询记录有效期为30天
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="shadow-3xl mt-8 w-full">
|
||||
<image class="shadow-3xl w-full overflow-hidden rounded-xl" src="/static/image/liu.png" mode="widthFix" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.clip-left {
|
||||
clip-path: polygon(0 0, 0 100%, 90% 100%, 0 100%);
|
||||
}
|
||||
|
||||
.clip-right {
|
||||
clip-path: polygon(0 0, 0 0, 90% 100%, 0 0);
|
||||
}
|
||||
</style>
|
||||
|
||||
<route type="home" lang="json">
|
||||
{
|
||||
"layout": "home",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
</route>
|
19
src/pages/inquire.vue
Normal file
@ -0,0 +1,19 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const product = ref('')
|
||||
const webviewSrc = ref('') // 可以根据不同页面设置不同的值\
|
||||
|
||||
onLoad((option) => {
|
||||
console.log('option', option)
|
||||
if (option.p) {
|
||||
product.value = option.p
|
||||
webviewSrc.value = `http://192.168.1.124:5678/inquire/${product.value}`
|
||||
}
|
||||
})
|
||||
const navigationBarTitleText = '报告查询' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
10
src/pages/list_lawsuit.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = 'http://192.168.1.124:5678/listLawsuit' // 可以根据不同页面设置不同的值
|
||||
const navigationBarTitleText = '司法涉诉' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
10
src/pages/list_marriage.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = 'http://192.168.1.124:5678/listMarriage' // 可以根据不同页面设置不同的值
|
||||
const navigationBarTitleText = '婚姻评估' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
10
src/pages/list_risk.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = 'http://192.168.1.124:5678/listRisk' // 可以根据不同页面设置不同的值
|
||||
const navigationBarTitleText = '风险评估' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
10
src/pages/list_verify.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = 'http://192.168.1.124:5678/listVerify' // 可以根据不同页面设置不同的值
|
||||
const navigationBarTitleText = '验证工具' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
204
src/pages/login.vue
Normal file
@ -0,0 +1,204 @@
|
||||
<script setup>
|
||||
import { getCode, login } from '@/api/apis'
|
||||
|
||||
const phoneNumber = ref('')
|
||||
const verificationCode = ref('')
|
||||
const password = ref('')
|
||||
const isPasswordLogin = ref(false)
|
||||
const isAgreed = ref(false)
|
||||
const isCountingDown = ref(false)
|
||||
const countdown = ref(60)
|
||||
let timer = null
|
||||
|
||||
// 聚焦状态变量
|
||||
const phoneFocused = ref(false)
|
||||
const codeFocused = ref(false)
|
||||
const passwordFocused = ref(false)
|
||||
|
||||
const isPhoneNumberValid = computed(() => {
|
||||
return /^1[3-9]\d{9}$/.test(phoneNumber.value)
|
||||
})
|
||||
|
||||
const canLogin = computed(() => {
|
||||
if (!isPhoneNumberValid.value)
|
||||
return false
|
||||
if (isPasswordLogin.value) {
|
||||
return password.value.length >= 6
|
||||
}
|
||||
else {
|
||||
return verificationCode.value.length === 6
|
||||
}
|
||||
})
|
||||
function sendVerificationCode() {
|
||||
if (isCountingDown.value || !isPhoneNumberValid.value)
|
||||
return
|
||||
if (!isPhoneNumberValid.value) {
|
||||
uni.showToast({ title: '请输入有效的手机号', icon: 'none' })
|
||||
return
|
||||
}
|
||||
getCode({
|
||||
mobile: phoneNumber.value,
|
||||
actionType: 'login',
|
||||
}).then((res) => {
|
||||
if (res.code === 200) {
|
||||
uni.showToast({ title: '获取成功', icon: 'none' })
|
||||
startCountdown()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function startCountdown() {
|
||||
isCountingDown.value = true
|
||||
countdown.value = 60
|
||||
timer = setInterval(() => {
|
||||
if (countdown.value > 0) {
|
||||
countdown.value--
|
||||
}
|
||||
else {
|
||||
clearInterval(timer)
|
||||
isCountingDown.value = false
|
||||
}
|
||||
}, 1000)
|
||||
}
|
||||
|
||||
function handleLogin() {
|
||||
if (!canLogin.value) {
|
||||
uni.showToast({ title: '请完善信息', icon: 'none' })
|
||||
return
|
||||
}
|
||||
if (!isAgreed.value) {
|
||||
uni.showToast({ title: '请先同意用户协议', icon: 'none' })
|
||||
return
|
||||
}
|
||||
login({ mobile: phoneNumber.value, code: verificationCode.value }).then((res) => {
|
||||
if (res.code === 200) {
|
||||
uni.setStorageSync('token', res.data.accessToken)
|
||||
uni.showToast({ title: '登录成功', icon: 'none' })
|
||||
uni.reLaunch({
|
||||
url: '/pages/index',
|
||||
})
|
||||
}
|
||||
else {
|
||||
uni.showToast({ title: res.msg, icon: 'none' })
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function toUserAgreement() {
|
||||
uni.navigateTo({
|
||||
url: '/pages/userAgreement',
|
||||
})
|
||||
}
|
||||
function toPrivacyPolicy() {
|
||||
uni.navigateTo({
|
||||
url: '/pages/privacyPolicy',
|
||||
})
|
||||
}
|
||||
onUnmounted(() => {
|
||||
if (timer) {
|
||||
clearInterval(timer)
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view class="login px-8">
|
||||
<view class="mb-8 pt-8 text-left">
|
||||
<view class="flex flex-col items-center">
|
||||
<image
|
||||
class="h-18 w-18 rounded-full shadow"
|
||||
src="@/static/image/logo.png"
|
||||
mode="scaleToFill"
|
||||
/>
|
||||
<image
|
||||
class="mt-4 h-10"
|
||||
src="@/static/image/logo_title.png"
|
||||
mode="aspectFit"
|
||||
/>
|
||||
</view>
|
||||
</view>
|
||||
<view class="space-y-5">
|
||||
<view class="input-container bg-blue-300/20" :class="[phoneFocused ? 'focused' : '']">
|
||||
<input
|
||||
v-model="phoneNumber" class="input-field" type="number" placeholder="请输入手机号" maxlength="11"
|
||||
@focus="phoneFocused = true" @blur="phoneFocused = false"
|
||||
>
|
||||
</view>
|
||||
<view v-if="!isPasswordLogin">
|
||||
<view class="flex items-center justify-between">
|
||||
<view class="input-container bg-blue-300/20" :class="[codeFocused ? 'focused' : '']">
|
||||
<input
|
||||
v-model="verificationCode" class="input-field" type="number" placeholder="请输入验证码" maxlength="6"
|
||||
@focus="codeFocused = true" @blur="codeFocused = false"
|
||||
>
|
||||
</view>
|
||||
<view
|
||||
class="ml-2 flex-shrink-0 rounded-lg px-4 py-2 text-sm font-bold transition duration-300 focus:outline-none"
|
||||
:class="isCountingDown || !isPhoneNumberValid ? 'cursor-not-allowed bg-gray-300 text-gray-500' : 'bg-blue-500 text-white hover:bg-blue-600'"
|
||||
@click="sendVerificationCode"
|
||||
>
|
||||
{{ isCountingDown ? `${countdown}s重新获取` : '获取验证码' }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="isPasswordLogin" class="input-container" :class="[passwordFocused ? 'focused' : '']">
|
||||
<input
|
||||
v-model="password" class="input-field" type="password" placeholder="请输入密码"
|
||||
@focus="passwordFocused = true" @blur="passwordFocused = false"
|
||||
>
|
||||
</view>
|
||||
<view class="flex items-start space-x-2">
|
||||
<wd-checkbox v-model="isAgreed" class="mt-1" />
|
||||
<text class="text-xs text-gray-400 leading-tight">
|
||||
未注册手机号登录后将自动生成账号,并且代表您已阅读并同意
|
||||
<text class="cursor-pointer text-blue-400" @click="toUserAgreement">
|
||||
《用户协议》
|
||||
</text>
|
||||
和
|
||||
<text class="cursor-pointer text-blue-400" @click="toPrivacyPolicy">
|
||||
《隐私政策》
|
||||
</text>
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
<button
|
||||
class="mt-20 block w-full flex-shrink-0 rounded-full bg-blue-500 py-3 text-lg text-white font-bold transition duration-300"
|
||||
@click="handleLogin"
|
||||
>
|
||||
登录
|
||||
</button>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.login{
|
||||
|
||||
}
|
||||
.input-container {
|
||||
border: 2px solid rgba(125, 211, 252, 0.0);
|
||||
border-radius: 1rem;
|
||||
@apply transition duration-200
|
||||
}
|
||||
|
||||
.input-container.focused {
|
||||
border: 2px solid #3b82f6;
|
||||
}
|
||||
|
||||
.input-field {
|
||||
width: 100%;
|
||||
padding: 1rem;
|
||||
transition: border-color 0.3s ease;
|
||||
outline: none;
|
||||
background: transparent;
|
||||
}
|
||||
</style>
|
||||
|
||||
<route lang="json">
|
||||
{
|
||||
"layout": "login",
|
||||
"title": "登录",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
</route>
|
114
src/pages/me.vue
Normal file
@ -0,0 +1,114 @@
|
||||
<script setup>
|
||||
import { getUserInfo } from '@/api/apis'
|
||||
|
||||
const userName = ref('点击登录')
|
||||
const userAvatar = ref('https://img0.baidu.com/it/u=1240274933,2284862568&fm=253&fmt=auto&app=138&f=PNG?w=180&h=180')
|
||||
const isLoggedIn = ref(false)
|
||||
const features = ref([
|
||||
{ title: '我的订单', icon: 'phone', action: () => handleFeatureClick('Account Settings') },
|
||||
{ title: '我的报告', icon: 'phone', action: () => handleFeatureClick('My Orders') },
|
||||
{ title: '联系客服', icon: 'phone', action: () => handleFeatureClick('Help & Support') },
|
||||
{ title: '用户协议', icon: 'phone', action: () => handleFeatureClick('Privacy Policy') },
|
||||
{ title: '退出登录', icon: 'phone', action: () => handleLogout() },
|
||||
])
|
||||
|
||||
function handleFeatureClick(feature) {
|
||||
if (!isLoggedIn.value) {
|
||||
redirectToLogin()
|
||||
return
|
||||
}
|
||||
console.log(`Clicked on: ${feature}`)
|
||||
}
|
||||
|
||||
function redirectToLogin() {
|
||||
console.log('jabhdsasdbhj')
|
||||
uni.reLaunch({ url: '/pages/login' }) // 使用 uni-app 路由跳转到登录页
|
||||
}
|
||||
|
||||
function handleLogout() {
|
||||
console.log('asdasd')
|
||||
uni.removeStorageSync('token')
|
||||
isLoggedIn.value = false
|
||||
userName.value = '点击登录'
|
||||
userAvatar.value = 'https://img0.baidu.com/it/u=1240274933,2284862568&fm=253&fmt=auto&app=138&f=PNG?w=180&h=180'
|
||||
}
|
||||
|
||||
async function fetchUserInfo() {
|
||||
try {
|
||||
// 假设通过 API 获取用户信息
|
||||
getUserInfo().then((res) => {
|
||||
if (res.code === 200) {
|
||||
console.log('res', res)
|
||||
const userinfo = res.data.userInfo
|
||||
userName.value = userinfo.userName || '182****1590'
|
||||
userAvatar.value = userinfo.userAvatar || 'https://img0.baidu.com/it/u=1240274933,2284862568&fm=253&fmt=auto&app=138&f=PNG?w=180&h=180'
|
||||
isLoggedIn.value = true
|
||||
}
|
||||
})
|
||||
}
|
||||
catch (error) {
|
||||
console.error('获取用户信息失败', error)
|
||||
}
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
const token = uni.getStorageSync('token')
|
||||
if (token) {
|
||||
isLoggedIn.value = true
|
||||
fetchUserInfo()
|
||||
}
|
||||
else {
|
||||
isLoggedIn.value = false
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view class="my-page min-h-screen flex flex-col p-4">
|
||||
<view
|
||||
class="profile-section mb-4 flex items-center gap-4 rounded-md bg-white p-4 shadow-md"
|
||||
@click="!isLoggedIn ? redirectToLogin() : null"
|
||||
>
|
||||
<wd-img :src="userAvatar" round width="100" height="100" />
|
||||
<view>
|
||||
<h2 class="text-lg font-bold">
|
||||
{{ isLoggedIn ? userName : '点击登录' }}
|
||||
</h2>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<Wdviewider />
|
||||
|
||||
<view class="features-section flex flex-col gap-2">
|
||||
<WdCell
|
||||
v-for="(feature, index) in features" :key="index" :title="feature.title" :icon="feature.icon"
|
||||
class="feature-item rounded-md bg-white p-3 shadow-sm" clickable @click="feature.action"
|
||||
/>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.my-page {}
|
||||
|
||||
.profile-section {
|
||||
@apply flex items-center gap-4 p-4 bg-white rounded-md shadow-md mb-4;
|
||||
}
|
||||
|
||||
.features-section {
|
||||
@apply flex flex-col gap-2;
|
||||
}
|
||||
|
||||
.feature-item {
|
||||
@apply bg-white p-3 rounded-md shadow-sm;
|
||||
}
|
||||
</style>
|
||||
|
||||
<route lang="json">
|
||||
{
|
||||
"layout": "home",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
</route>
|
10
src/pages/privacyPolicy.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = 'http://192.168.1.124:5678/privacyPolicy' // 可以根据不同页面设置不同的值
|
||||
const navigationBarTitleText = '隐私政策' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
24
src/pages/report.vue
Normal file
@ -0,0 +1,24 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = ref('') // 可以根据不同页面设置不同的值\
|
||||
|
||||
onLoad((option) => {
|
||||
let reportId = ''
|
||||
if (option.out_trade_no) {
|
||||
reportId = `order_no=${option.out_trade_no}`
|
||||
}
|
||||
else if (option.order_id) {
|
||||
reportId = `order_id=${option.order_id}`
|
||||
}
|
||||
else {
|
||||
return
|
||||
}
|
||||
webviewSrc.value = `http://192.168.1.124:5678/report?${reportId}`
|
||||
})
|
||||
const navigationBarTitleText = '报告结果' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
186
src/pages/result.vue
Normal file
@ -0,0 +1,186 @@
|
||||
<script setup>
|
||||
import CBad from '@/ui/CBad.vue'
|
||||
import CBankLoanApplication from '@/ui/CBankLoanApplication.vue'
|
||||
import CBankLoanBehavior from '@/ui/CBankLoanBehavior.vue'
|
||||
import CLawsuit from '@/ui/CLawsuit.vue'
|
||||
import CRelatedEnterprises from '@/ui/CRelatedEnterprises.vue'
|
||||
import CSpecialList from '@/ui/CSpecialList.vue'
|
||||
import CTabs from '@/ui/CTabs.vue'
|
||||
import { queryResultByOrder } from '@/api/apis'
|
||||
import CMarriage from '@/ui/CMarriage.vue'
|
||||
|
||||
const isDone = ref(false)
|
||||
const entData = ref([])
|
||||
const lawsuitData = ref({})
|
||||
const badData = ref({})
|
||||
|
||||
const specialData = ref({})
|
||||
|
||||
const bankLoanApplicationData = ref({})
|
||||
const marriageData = ref({})
|
||||
const bankLoanBehavior = ref({})
|
||||
onLoad((option) => {
|
||||
console.log('option', option)
|
||||
const { id } = option
|
||||
if (id) {
|
||||
queryResultByOrder(id).then((res) => {
|
||||
console.log('res', res)
|
||||
if (res.code === 200) {
|
||||
res.data.query_data.forEach((item) => {
|
||||
if (item.success) {
|
||||
switch (item.apiID) {
|
||||
case 'G09SC02':
|
||||
marriageData.value = item.data
|
||||
break
|
||||
case 'G27BJ05':
|
||||
bankLoanApplicationData.value = item.data
|
||||
break
|
||||
case 'G28BJ05':
|
||||
bankLoanBehavior.value = item.data
|
||||
break
|
||||
case 'G26BJ05':
|
||||
specialData.value = item.data
|
||||
break
|
||||
case 'G05HZ01':
|
||||
entData.value = item.data
|
||||
break
|
||||
case 'G34BJ03':
|
||||
badData.value = item.data
|
||||
break
|
||||
case 'G35SC01':
|
||||
lawsuitData.value = item.data
|
||||
break
|
||||
default:
|
||||
console.log(`未知的apiID: ${item.apiID}`)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}).finally(() => {
|
||||
isDone.value = true
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
const tabs = ref([
|
||||
{ label: '涉诉案件', value: 'lawsuit' },
|
||||
{ label: '异常名单', value: 'special' },
|
||||
{ label: '贷款申请记录', value: 'loan' },
|
||||
{ label: '报告概述', value: 'overview' },
|
||||
{ label: '基本信息', value: 'base' },
|
||||
{ label: '婚姻状态', value: 'marriage' },
|
||||
{ label: '网络贷款申请记录', value: 'netloan' },
|
||||
])
|
||||
const reportItems = ref([
|
||||
{ label: '涉诉案件', value: 'lawsuit', status: '正常' },
|
||||
{ label: '异常名单', value: 'special', status: '存在风险' },
|
||||
{ label: '借贷记录', value: 'loan', status: '正常' },
|
||||
{ label: '不良风险评估', value: 'overview', status: '存在风险' },
|
||||
{ label: '关联企业信息', value: 'base', status: '正常' },
|
||||
{ label: '婚姻状态', value: 'marriage', status: '正常' },
|
||||
{ label: '接待申请记录', value: 'netloan', status: '存在风险' },
|
||||
])
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="min-h-full from-blue-100 to-white bg-gradient-to-b">
|
||||
<!-- <div class="w-full">
|
||||
<img class="w-full object-fill" src="https://picnew13.photophoto.cn/20190315/jianyueshishangfengtaobaonanxiehaibaobannermoban-32390729_1.jpg">
|
||||
</div> -->
|
||||
<CTabs
|
||||
:tabs="tabs"
|
||||
type="blue-green"
|
||||
/>
|
||||
<template v-if="isDone">
|
||||
<div class="flex flex-col gap-y-4 p-4 pt-12">
|
||||
<div id="overview" class="title">
|
||||
报告概述
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="flex flex-col gap-y-4">
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-700 font-bold">报告时间:</span>
|
||||
<span class="text-gray-600">2024年11月18日 23:11:23</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-700 font-bold">报告编号:</span>
|
||||
<span class="text-gray-600">HUIS829981926</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mt-6">
|
||||
<div class="flex flex-col gap-y-2">
|
||||
<div v-for="item in reportItems" :key="item.value" class="flex justify-between">
|
||||
<span class="text-gray-700 font-bold">{{ item.label }}:</span>
|
||||
<span class="font-bold" :class="item.status === '正常' ? 'text-green-500' : 'text-red-500 '">{{ item.status }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div id="base" class="title">
|
||||
基本信息
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="flex flex-col gap-y-4">
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-700 font-bold">姓名:</span>
|
||||
<span class="text-gray-600">张三</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-700 font-bold">年龄:</span>
|
||||
<span class="text-gray-600">25</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-700 font-bold">性别:</span>
|
||||
<span class="text-gray-600">男</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-700 font-bold">身份证号码:</span>
|
||||
<span class="text-gray-600">123456789012345678</span>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
<div id="special" class="title">
|
||||
异常名单
|
||||
</div>
|
||||
<CSpecialList :data="specialData" />
|
||||
<div id="netloan" class="title">
|
||||
借贷记录
|
||||
</div>
|
||||
<CBankLoanBehavior :data="bankLoanBehavior" />
|
||||
<div id="loan" class="title">
|
||||
借贷申请记录
|
||||
</div>
|
||||
<CBankLoanApplication :data="bankLoanApplicationData" />
|
||||
<div id="marriage" class="title">
|
||||
婚姻状态
|
||||
</div>
|
||||
<CMarriage :data="marriageData" />
|
||||
|
||||
<div id="ent" class="title">
|
||||
关联企业
|
||||
</div>
|
||||
<CRelatedEnterprises :data="entData" />
|
||||
<div id="bad" class="title">
|
||||
不良风险评估
|
||||
</div>
|
||||
<CBad :data="badData" />
|
||||
<div id="lawsuit" class="title">
|
||||
涉诉案件
|
||||
</div>
|
||||
<CLawsuit :data="lawsuitData" />
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
</style>
|
||||
|
||||
<route lang="json">
|
||||
{
|
||||
"layout": "page"
|
||||
}
|
||||
</route>
|
10
src/pages/userAgreement.vue
Normal file
@ -0,0 +1,10 @@
|
||||
<script setup>
|
||||
import WebviewPage from '@/components/WebviewPage.vue'
|
||||
|
||||
const webviewSrc = 'http://192.168.1.124:5678/userAgreement' // 可以根据不同页面设置不同的值
|
||||
const navigationBarTitleText = '用户协议' // 同样可以根据需要修改
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<WebviewPage :webview-src="webviewSrc" :navigation-bar-title-text="navigationBarTitleText" />
|
||||
</template>
|
6
src/shims.d.ts
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
export {}
|
||||
|
||||
declare module 'vue' {
|
||||
type Hooks = App.AppInstance & Page.PageInstance
|
||||
interface ComponentCustomOptions extends Hooks {}
|
||||
}
|
BIN
src/static/image/banner.png
Normal file
After Width: | Height: | Size: 131 KiB |
BIN
src/static/image/baogao-icon.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
src/static/image/bg_2.png
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
src/static/image/bg_icon.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
src/static/image/icon_1.png
Normal file
After Width: | Height: | Size: 7.5 KiB |
BIN
src/static/image/icon_2.png
Normal file
After Width: | Height: | Size: 6.4 KiB |
BIN
src/static/image/icon_3.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
src/static/image/icon_4.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
src/static/image/index_icon_1.png
Normal file
After Width: | Height: | Size: 114 KiB |
BIN
src/static/image/index_icon_2.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
src/static/image/index_icon_3.png
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
src/static/image/index_icon_4.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
src/static/image/index_icon_4_1.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
src/static/image/index_icon_5.png
Normal file
After Width: | Height: | Size: 9.5 KiB |
BIN
src/static/image/index_icon_6.png
Normal file
After Width: | Height: | Size: 9.4 KiB |
BIN
src/static/image/index_icon_7.png
Normal file
After Width: | Height: | Size: 9.1 KiB |
BIN
src/static/image/liu.png
Normal file
After Width: | Height: | Size: 72 KiB |
BIN
src/static/image/login_bg.png
Normal file
After Width: | Height: | Size: 507 KiB |
BIN
src/static/image/logo copy.png
Normal file
After Width: | Height: | Size: 116 KiB |
BIN
src/static/image/logo.png
Normal file
After Width: | Height: | Size: 116 KiB |
BIN
src/static/image/logo_title.png
Normal file
After Width: | Height: | Size: 16 KiB |
26
src/theme.json
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"light": {
|
||||
"bgColor": "#fcfcfc",
|
||||
"bgColorBottom": "#fcfcfc",
|
||||
"bgColorTop": "#ff6b00",
|
||||
"bgTxtStyle": "dark",
|
||||
"navBgColor": "#ff6b00",
|
||||
"navTxtStyle": "black",
|
||||
"tabBgColor": "#fcfcfc",
|
||||
"tabBorderStyle": "black",
|
||||
"tabFontColor": "#1f2937",
|
||||
"tabSelectedColor": "#ff6b00"
|
||||
},
|
||||
"dark": {
|
||||
"bgColor": "#181818",
|
||||
"bgColorBottom": "#181818",
|
||||
"bgColorTop": "#ff6b00",
|
||||
"bgTxtStyle": "light",
|
||||
"navBgColor": "#ff6b00",
|
||||
"navTxtStyle": "white",
|
||||
"tabBgColor": "#181818",
|
||||
"tabBorderStyle": "white",
|
||||
"tabFontColor": "#f3f4f6",
|
||||
"tabSelectedColor": "#ff6b00"
|
||||
}
|
||||
}
|
36
src/uni-pages.d.ts
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
/* eslint-disable */
|
||||
/* prettier-ignore */
|
||||
// @ts-nocheck
|
||||
// Generated by vite-plugin-uni-pages
|
||||
|
||||
interface NavigateToOptions {
|
||||
url: "/pages/index" |
|
||||
"/pages/ai" |
|
||||
"/pages/example" |
|
||||
"/pages/history_query" |
|
||||
"/pages/inquire" |
|
||||
"/pages/list_lawsuit" |
|
||||
"/pages/list_marriage" |
|
||||
"/pages/list_risk" |
|
||||
"/pages/list_verify" |
|
||||
"/pages/login" |
|
||||
"/pages/me" |
|
||||
"/pages/privacyPolicy" |
|
||||
"/pages/report" |
|
||||
"/pages/result" |
|
||||
"/pages/userAgreement";
|
||||
}
|
||||
interface RedirectToOptions extends NavigateToOptions {}
|
||||
|
||||
interface SwitchTabOptions {
|
||||
|
||||
}
|
||||
|
||||
type ReLaunchOptions = NavigateToOptions | SwitchTabOptions;
|
||||
|
||||
declare interface Uni {
|
||||
navigateTo(options: UniNamespace.NavigateToOptions & NavigateToOptions): void;
|
||||
redirectTo(options: UniNamespace.RedirectToOptions & RedirectToOptions): void;
|
||||
switchTab(options: UniNamespace.SwitchTabOptions & SwitchTabOptions): void;
|
||||
reLaunch(options: UniNamespace.ReLaunchOptions & ReLaunchOptions): void;
|
||||
}
|
76
src/uni.scss
Normal file
@ -0,0 +1,76 @@
|
||||
/**
|
||||
* 这里是uni-app内置的常用样式变量
|
||||
*
|
||||
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
|
||||
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
|
||||
*
|
||||
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
|
||||
*/
|
||||
|
||||
/* 颜色变量 */
|
||||
|
||||
/* 行为相关颜色 */
|
||||
$uni-color-primary: #007aff;
|
||||
$uni-color-success: #4cd964;
|
||||
$uni-color-warning: #f0ad4e;
|
||||
$uni-color-error: #dd524d;
|
||||
|
||||
/* 文字基本颜色 */
|
||||
$uni-text-color: #333; // 基本色
|
||||
$uni-text-color-inverse: #fff; // 反色
|
||||
$uni-text-color-grey: #999; // 辅助灰色,如加载更多的提示信息
|
||||
$uni-text-color-placeholder: #808080;
|
||||
$uni-text-color-disable: #c0c0c0;
|
||||
|
||||
/* 背景颜色 */
|
||||
$uni-bg-color: #fff;
|
||||
$uni-bg-color-grey: #f8f8f8;
|
||||
$uni-bg-color-hover: #f1f1f1; // 点击状态颜色
|
||||
$uni-bg-color-mask: rgba(0, 0, 0, 0.4); // 遮罩颜色
|
||||
|
||||
/* 边框颜色 */
|
||||
$uni-border-color: #c8c7cc;
|
||||
|
||||
/* 尺寸变量 */
|
||||
|
||||
/* 文字尺寸 */
|
||||
$uni-font-size-sm: 12px;
|
||||
$uni-font-size-base: 14px;
|
||||
$uni-font-size-lg: 16px;
|
||||
|
||||
/* 图片尺寸 */
|
||||
$uni-img-size-sm: 20px;
|
||||
$uni-img-size-base: 26px;
|
||||
$uni-img-size-lg: 40px;
|
||||
|
||||
/* Border Radius */
|
||||
$uni-border-radius-sm: 2px;
|
||||
$uni-border-radius-base: 3px;
|
||||
$uni-border-radius-lg: 6px;
|
||||
$uni-border-radius-circle: 50%;
|
||||
|
||||
/* 水平间距 */
|
||||
$uni-spacing-row-sm: 5px;
|
||||
$uni-spacing-row-base: 10px;
|
||||
$uni-spacing-row-lg: 15px;
|
||||
|
||||
/* 垂直间距 */
|
||||
$uni-spacing-col-sm: 4px;
|
||||
$uni-spacing-col-base: 8px;
|
||||
$uni-spacing-col-lg: 12px;
|
||||
|
||||
/* 透明度 */
|
||||
$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
|
||||
|
||||
/* 文章场景相关 */
|
||||
$uni-color-title: #2c405a; // 文章标题颜色
|
||||
$uni-font-size-title: 20px;
|
||||
$uni-color-subtitle: #555; // 二级标题颜色
|
||||
$uni-font-size-subtitle: 18px;
|
||||
$uni-color-paragraph: #3f536e; // 文章段落颜色
|
||||
$uni-font-size-paragraph: 15px;
|