Browse Source

Merge branch 'jump' into preview

dlt_manageScope_0428
mk 2 years ago
parent
commit
935fd6fcc7
  1. 532
      report.20240401.102911.27544.0.001.json
  2. 532
      report.20240401.103014.37784.0.001.json
  3. 532
      report.20240401.103332.36232.0.001.json
  4. 429
      src/assets/scss/modules/index.scss
  5. 10
      src/router/index.js
  6. 16
      src/views/components/resiSearch.vue
  7. 320
      src/views/modules/base/community/community.vue
  8. 406
      src/views/modules/base/community/roomTable.vue
  9. 601
      src/views/modules/base/nonIntResi/nonIntResi.vue
  10. 563
      src/views/modules/base/resi.vue
  11. 441
      src/views/modules/home/index.vue
  12. 1
      src/views/pages/login.vue

532
report.20240401.102911.27544.0.001.json

@ -0,0 +1,532 @@
{
"header": {
"event": "Allocation failed - JavaScript heap out of memory",
"trigger": "FatalError",
"filename": "report.20240401.102911.27544.0.001.json",
"dumpEventTime": "2024-04-01T10:29:11Z",
"processId": 27544,
"cwd": "D:\\project\\epmet-work-pc",
"commandLine": [
"node",
"D:\\project\\epmet-work-pc\\node_modules\\.bin\\\\..\\@vue\\cli-service\\bin\\vue-cli-service.js",
"serve"
],
"nodejsVersion": "v11.15.0",
"wordSize": 64,
"arch": "x64",
"platform": "win32",
"componentVersions": {
"node": "11.15.0",
"v8": "7.0.276.38-node.19",
"uv": "1.27.0",
"zlib": "1.2.11",
"brotli": "1.0.7",
"ares": "1.15.0",
"modules": "67",
"nghttp2": "1.37.0",
"napi": "4",
"llhttp": "1.1.1",
"http_parser": "2.8.0",
"openssl": "1.1.1b",
"cldr": "34.0",
"icu": "63.1",
"tz": "2018e",
"unicode": "11.0"
},
"release": {
"name": "node",
"headersUrl": "https://nodejs.org/download/release/v11.15.0/node-v11.15.0-headers.tar.gz",
"sourceUrl": "https://nodejs.org/download/release/v11.15.0/node-v11.15.0.tar.gz",
"libUrl": "https://nodejs.org/download/release/v11.15.0/win-x64/node.lib"
},
"osName": "Windows_NT",
"osRelease": "10.0.22631",
"osVersion": "Windows 10 Enterprise",
"osMachine": "x86_64",
"host": "DESKTOP-LFMUCNU"
},
"javascriptStack": {
"message": "No stack.",
"stack": [
"Unavailable."
]
},
"nativeStack": [
{
"pc": "0x00007ff7a2c7d24e",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+16366"
},
{
"pc": "0x00007ff7a2c7c0f9",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+11929"
},
{
"pc": "0x00007ff7a2c7b923",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+9923"
},
{
"pc": "0x00007ff7a2d6dc22",
"symbol": "uv_loop_fork+89362"
},
{
"pc": "0x00007ff7a319609e",
"symbol": "v8::internal::FatalProcessOutOfMemory+798"
},
{
"pc": "0x00007ff7a3195fd7",
"symbol": "v8::internal::FatalProcessOutOfMemory+599"
},
{
"pc": "0x00007ff7a3249a14",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+14068"
},
{
"pc": "0x00007ff7a323f822",
"symbol": "v8::internal::Heap::CollectGarbage+7234"
},
{
"pc": "0x00007ff7a323e038",
"symbol": "v8::internal::Heap::CollectGarbage+1112"
},
{
"pc": "0x00007ff7a3247967",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+5703"
},
{
"pc": "0x00007ff7a32479e6",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+5830"
},
{
"pc": "0x00007ff7a337f8b1",
"symbol": "v8::internal::Factory::NewFillerObject+49"
},
{
"pc": "0x00007ff7a3439786",
"symbol": "v8::internal::StoreBuffer::StoreBufferOverflow+27190"
},
{
"pc": "0x0000002dfdcd0481",
"symbol": ""
}
],
"javascriptHeap": {
"totalMemory": 1512284160,
"totalCommittedMemory": 1512284160,
"usedMemory": 1407549928,
"availableMemory": 29155768,
"memoryLimit": 1526909922,
"heapSpaces": {
"read_only_space": {
"memorySize": 524288,
"committedMemory": 524288,
"capacity": 515584,
"used": 33520,
"available": 482064
},
"new_space": {
"memorySize": 33554432,
"committedMemory": 33554432,
"capacity": 16498688,
"used": 1911112,
"available": 14587576
},
"old_space": {
"memorySize": 1418924032,
"committedMemory": 1418924032,
"capacity": 1355467360,
"used": 1354856560,
"available": 610800
},
"code_space": {
"memorySize": 10485760,
"committedMemory": 10485760,
"capacity": 8944672,
"used": 8944672,
"available": 0
},
"map_space": {
"memorySize": 13643776,
"committedMemory": 13643776,
"capacity": 8269760,
"used": 8269760,
"available": 0
},
"large_object_space": {
"memorySize": 35151872,
"committedMemory": 35151872,
"capacity": 47009632,
"used": 33534304,
"available": 13475328
},
"new_large_object_space": {
"memorySize": 0,
"committedMemory": 0,
"capacity": 0,
"used": 0,
"available": 0
}
}
},
"resourceUsage": {
"userCpuSeconds": 86.89,
"kernelCpuSeconds": 2.64,
"cpuConsumptionPercent": 76.5214,
"maxRss": 1743020032,
"pageFaults": {
"IORequired": 2346018,
"IONotRequired": 0
},
"fsActivity": {
"reads": 35425,
"writes": 7978
}
},
"libuv": [
],
"environmentVariables": {
"=C:": "C:\\",
"=D:": "D:\\project\\epmet-work-pc",
"ALLUSERSPROFILE": "C:\\ProgramData",
"APPDATA": "C:\\Users\\Administrator\\AppData\\Roaming",
"BABEL_ENV": "development",
"CHROME_CRASHPAD_PIPE_NAME": "\\\\.\\pipe\\crashpad_27620_FTVXSFTCXVXRCNHE",
"COLORTERM": "truecolor",
"CommonProgramFiles": "C:\\Program Files\\Common Files",
"CommonProgramFiles(x86)": "C:\\Program Files (x86)\\Common Files",
"CommonProgramW6432": "C:\\Program Files\\Common Files",
"COMPUTERNAME": "DESKTOP-LFMUCNU",
"ComSpec": "C:\\Windows\\system32\\cmd.exe",
"DriverData": "C:\\Windows\\System32\\Drivers\\DriverData",
"EFC_14116": "1",
"FPS_BROWSER_APP_PROFILE_STRING": "Internet Explorer",
"FPS_BROWSER_USER_PROFILE_STRING": "Default",
"GIT_ASKPASS": "d:\\Program Files\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass.sh",
"HOME": "C:\\Users\\Administrator",
"HOMEDRIVE": "C:",
"HOMEPATH": "\\Users\\Administrator",
"INIT_CWD": "D:\\project\\epmet-work-pc",
"IntelliJ IDEA": "D:\\Program Files\\JetBrains\\IntelliJ IDEA 2023.3.6\\bin;",
"LANG": "zh_CN.UTF-8",
"LOCALAPPDATA": "C:\\Users\\Administrator\\AppData\\Local",
"LOGONSERVER": "\\\\DESKTOP-LFMUCNU",
"NODE": "D:\\nodejs\\node.exe",
"NODE_ENV": "development",
"NODE_EXE": "D:\\nodejs\\\\node.exe",
"NPM_CLI_JS": "D:\\nodejs\\node_modules\\npm\\bin\\npm-cli.js",
"npm_config_access": "",
"npm_config_allow_same_version": "",
"npm_config_also": "",
"npm_config_always_auth": "",
"npm_config_argv": "{\"remain\":[],\"cooked\":[\"run\",\"serve\"],\"original\":[\"run\",\"serve\"]}",
"npm_config_audit": "true",
"npm_config_audit_level": "low",
"npm_config_auth_type": "legacy",
"npm_config_bin_links": "true",
"npm_config_browser": "",
"npm_config_ca": "",
"npm_config_cache": "C:\\Users\\Administrator\\AppData\\Roaming\\npm-cache",
"npm_config_cache_lock_retries": "10",
"npm_config_cache_lock_stale": "60000",
"npm_config_cache_lock_wait": "10000",
"npm_config_cache_max": "Infinity",
"npm_config_cache_min": "10",
"npm_config_cafile": "",
"npm_config_cert": "",
"npm_config_cidr": "",
"npm_config_color": "true",
"npm_config_commit_hooks": "true",
"npm_config_depth": "Infinity",
"npm_config_description": "true",
"npm_config_dev": "",
"npm_config_dry_run": "",
"npm_config_editor": "notepad.exe",
"npm_config_engine_strict": "",
"npm_config_fetch_retries": "2",
"npm_config_fetch_retry_factor": "10",
"npm_config_fetch_retry_maxtimeout": "60000",
"npm_config_fetch_retry_mintimeout": "10000",
"npm_config_force": "",
"npm_config_git": "git",
"npm_config_git_tag_version": "true",
"npm_config_global": "",
"npm_config_globalconfig": "D:\\nodejs\\etc\\npmrc",
"npm_config_globalignorefile": "D:\\nodejs\\etc\\npmignore",
"npm_config_global_style": "",
"npm_config_group": "",
"npm_config_ham_it_up": "",
"npm_config_heading": "npm",
"npm_config_https_proxy": "",
"npm_config_if_present": "",
"npm_config_ignore_prepublish": "",
"npm_config_ignore_scripts": "",
"npm_config_init_author_email": "",
"npm_config_init_author_name": "",
"npm_config_init_author_url": "",
"npm_config_init_license": "ISC",
"npm_config_init_module": "C:\\Users\\Administrator\\.npm-init.js",
"npm_config_init_version": "1.0.0",
"npm_config_json": "",
"npm_config_key": "",
"npm_config_legacy_bundling": "",
"npm_config_link": "",
"npm_config_local_address": "",
"npm_config_loglevel": "notice",
"npm_config_logs_max": "10",
"npm_config_long": "",
"npm_config_maxsockets": "50",
"npm_config_message": "%s",
"npm_config_metrics_registry": "https://registry.npmjs.org/",
"npm_config_node_gyp": "D:\\nvm\\v11.15.0\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js",
"npm_config_node_options": "",
"npm_config_node_version": "11.15.0",
"npm_config_noproxy": "",
"npm_config_offline": "",
"npm_config_onload_script": "",
"npm_config_only": "",
"npm_config_optional": "true",
"npm_config_otp": "",
"npm_config_package_lock": "true",
"npm_config_package_lock_only": "",
"npm_config_parseable": "",
"npm_config_prefer_offline": "",
"npm_config_prefer_online": "",
"npm_config_prefix": "D:\\nodejs",
"npm_config_preid": "",
"npm_config_production": "",
"npm_config_progress": "true",
"npm_config_proxy": "",
"npm_config_read_only": "",
"npm_config_rebuild_bundle": "true",
"npm_config_registry": "https://registry.npmjs.org/",
"npm_config_rollback": "true",
"npm_config_save": "true",
"npm_config_save_bundle": "",
"npm_config_save_dev": "",
"npm_config_save_exact": "",
"npm_config_save_optional": "",
"npm_config_save_prefix": "^",
"npm_config_save_prod": "",
"npm_config_scope": "",
"npm_config_scripts_prepend_node_path": "warn-only",
"npm_config_script_shell": "",
"npm_config_searchexclude": "",
"npm_config_searchlimit": "20",
"npm_config_searchopts": "",
"npm_config_searchstaleness": "900",
"npm_config_send_metrics": "",
"npm_config_shell": "C:\\Windows\\system32\\cmd.exe",
"npm_config_shrinkwrap": "true",
"npm_config_sign_git_commit": "",
"npm_config_sign_git_tag": "",
"npm_config_sso_poll_frequency": "500",
"npm_config_sso_type": "oauth",
"npm_config_strict_ssl": "true",
"npm_config_tag": "latest",
"npm_config_tag_version_prefix": "v",
"npm_config_timing": "",
"npm_config_tmp": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"npm_config_umask": "0000",
"npm_config_unicode": "",
"npm_config_unsafe_perm": "true",
"npm_config_update_notifier": "true",
"npm_config_usage": "",
"npm_config_user": "",
"npm_config_userconfig": "C:\\Users\\Administrator\\.npmrc",
"npm_config_user_agent": "npm/6.7.0 node/v11.15.0 win32 x64",
"npm_config_version": "",
"npm_config_versions": "",
"npm_config_viewer": "browser",
"npm_execpath": "D:\\nvm\\v11.15.0\\node_modules\\npm\\bin\\npm-cli.js",
"npm_lifecycle_event": "serve",
"npm_lifecycle_script": "vue-cli-service serve",
"npm_node_execpath": "D:\\nodejs\\node.exe",
"npm_package_browserslist_0": "> 1%",
"npm_package_browserslist_1": "last 2 versions",
"npm_package_browserslist_2=not ie <": " 10",
"npm_package_dependencies_async_validator": "^4.2.5",
"npm_package_dependencies_axios": "^0.19.0",
"npm_package_dependencies_babel_eslint": "^8.0.1",
"npm_package_dependencies_babel_plugin_component": "^1.1.1",
"npm_package_dependencies_css_loader": "^5.0.0",
"npm_package_dependencies_echarts": "^5.2.2",
"npm_package_dependencies_echarts_gl": "^2.0.9",
"npm_package_dependencies_element_theme": "2.0.1",
"npm_package_dependencies_element_ui": "2.13.2",
"npm_package_dependencies_file_saver": "^2.0.5",
"npm_package_dependencies_gulp_autoprefixer": "^6.1.0",
"npm_package_dependencies_gulp_clean_css": "^4.2.0",
"npm_package_dependencies_gulp_load_plugins": "^2.0.0",
"npm_package_dependencies_gulp_rename": "^1.4.0",
"npm_package_dependencies_gulp_sass": "^4.0.2",
"npm_package_dependencies_jsencrypt": "^3.0.3",
"npm_package_dependencies_js_cookie": "^2.2.0",
"npm_package_dependencies_lodash": "^4.17.15",
"npm_package_dependencies_mint_ui": "^2.2.13",
"npm_package_dependencies_moment": "^2.29.4",
"npm_package_dependencies_node_sass": "^4.12.0",
"npm_package_dependencies_ol": "7.2.2",
"npm_package_dependencies_portfinder": "^1.0.21",
"npm_package_dependencies_proj4": "^2.8.0",
"npm_package_dependencies_qs": "^6.7.0",
"npm_package_dependencies_quill": "^1.3.6",
"npm_package_dependencies_relation_graph": "^2.1.31",
"npm_package_dependencies_screenfull": "^4.2.1",
"npm_package_dependencies_sortablejs": "^1.12.0",
"npm_package_dependencies_svg_sprite_loader": "^4.1.6",
"npm_package_dependencies_throttle_debounce": "^3.0.1",
"npm_package_dependencies_turf": "^3.0.14",
"npm_package_dependencies_vue": "^2.6.11",
"npm_package_dependencies_vuex": "^3.1.1",
"npm_package_dependencies_vue_awesome_swiper": "^3.1.3",
"npm_package_dependencies_vue_baidu_map": "^0.21.22",
"npm_package_dependencies_vue_i18n": "^8.12.0",
"npm_package_dependencies_vue_quill_editor": "^3.0.6",
"npm_package_dependencies_vue_router": "^3.0.7",
"npm_package_dependencies_v_distpicker": "^1.2.2",
"npm_package_dependencies_xlsx": "^0.17.1",
"npm_package_dependencies__antv_l7": "2.9.14",
"npm_package_dependencies__antv_l7_draw": "3.0.5",
"npm_package_dependencies__antv_l7_maps": "2.9.14",
"npm_package_dependencies__riophae_vue_treeselect": "^0.4.0",
"npm_package_dependencies__tinymce_tinymce_vue": "^3.2.8",
"npm_package_description": "```\r npm install\r ```",
"npm_package_devDependencies_cross_env": "^7.0.3",
"npm_package_devDependencies_dai_js": "^0.0.12",
"npm_package_devDependencies_element_theme_chalk": "^2.13.0",
"npm_package_devDependencies_filemanager_webpack_plugin": "^2.0.5",
"npm_package_devDependencies_natives": "^1.1.6",
"npm_package_devDependencies_ol": "^7.2.2",
"npm_package_devDependencies_sass_loader": "^7.3.1",
"npm_package_devDependencies_script_loader": "^0.7.2",
"npm_package_devDependencies_style_loader": "^3.3.3",
"npm_package_devDependencies_tinymce": "5.8.2",
"npm_package_devDependencies_vue_template_compiler": "^2.6.11",
"npm_package_devDependencies__antv_f2": "^3.8.10-beta.1",
"npm_package_devDependencies__tinymce_tinymce_vue": "3.2.8",
"npm_package_devDependencies__vue_cli_plugin_babel": "^3.10.0",
"npm_package_devDependencies__vue_cli_plugin_eslint": "^3.10.0",
"npm_package_devDependencies__vue_cli_service": "^3.10.0",
"npm_package_devDependencies__vue_eslint_config_standard": "^4.0.0",
"npm_package_element_theme_browsers_0": "> 1%",
"npm_package_element_theme_browsers_1": "last 2 versions",
"npm_package_element_theme_browsers_2=not ie <": " 10",
"npm_package_element_theme_config": "./src/element-ui/theme-variables.scss",
"npm_package_element_theme_minimize": "true",
"npm_package_element_theme_out": "./src/element-ui/theme",
"npm_package_engines_node=>": " 8.11.1",
"npm_package_engines_npm=>": " 5.6.0",
"npm_package_eslintConfig_env_node": "true",
"npm_package_eslintConfig_extends_0": "plugin:vue/essential",
"npm_package_eslintConfig_extends_1": "@vue/standard",
"npm_package_eslintConfig_parserOptions_parser": "babel-eslint",
"npm_package_eslintConfig_root": "true",
"npm_package_gitHead": "d6ca124ebbea2a05faf4403f4b6cd3801fb35b1c",
"npm_package_name": "epmet-oper-gov",
"npm_package_private": "true",
"npm_package_readmeFilename": "README.md",
"npm_package_scripts_build": "vue-cli-service build",
"npm_package_scripts_build_preview": "vue-cli-service build --mode preview",
"npm_package_scripts_build_prod": "vue-cli-service build --mode production",
"npm_package_scripts_build_shibei_prod": "vue-cli-service build --mode shibei_production",
"npm_package_scripts_build_sit": "vue-cli-service build --mode production.sit",
"npm_package_scripts_build_uat": "vue-cli-service build --mode production.uat",
"npm_package_scripts_dev=node --max_old_space_size": "4096 node_modules/@vue/cli-service/bin/vue-cli-service.js serve",
"npm_package_scripts_et": "et",
"npm_package_scripts_et_init": "et -i",
"npm_package_scripts_et_list": "gulp themes",
"npm_package_scripts_lint": "vue-cli-service lint",
"npm_package_scripts_serve": "vue-cli-service serve",
"npm_package_version": "1.0.0",
"NPM_PREFIX_NPM_CLI_JS": "D:\\nodejs\\node_modules\\npm\\bin\\npm-cli.js",
"NUMBER_OF_PROCESSORS": "16",
"NVM_HOME": "D:\\nvm",
"NVM_SYMLINK": "D:\\nodejs",
"OneDrive": "C:\\Users\\Administrator\\OneDrive",
"OPENSSL_ia32cap": "~0x200000200000000",
"ORIGINAL_XDG_CURRENT_DESKTOP": "undefined",
"OS": "Windows_NT",
"Path": "D:\\nvm\\v11.15.0\\node_modules\\npm\\node_modules\\npm-lifecycle\\node-gyp-bin;D:\\project\\epmet-work-pc\\node_modules\\.bin;D:\\Program Files (x86)\\VMware\\VMware Workstation\\bin\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;D:\\Program Files\\Bandizip;C:\\Program Files\\dotnet\\;D:\\Program Files (x86)\\Tencent\\微信web开发者工具\\dll;%NVM_H;ME%;D:\\nodejs;D:\\Program Files\\Git\\cmd;C:\\Users\\Administrator\\AppData\\Local\\Microsoft\\WindowsApps;D:\\nvm;D:\\nodejs;D:\\Program Files\\JetBrains\\WebStorm 2023.3.6\\bin;;D:\\Program Files\\JetBrains\\IntelliJ IDEA 2023.3.6\\bin;;D:\\Program Files\\Microsoft VS Code\\bin",
"PATHEXT": ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JSE;.WSF;.WSH;.MSC;.CPL",
"PROCESSOR_ARCHITECTURE": "AMD64",
"PROCESSOR_IDENTIFIER": "AMD64 Family 25 Model 116 Stepping 1, AuthenticAMD",
"PROCESSOR_LEVEL": "25",
"PROCESSOR_REVISION": "7401",
"ProgramData": "C:\\ProgramData",
"ProgramFiles": "C:\\Program Files",
"ProgramFiles(x86)": "C:\\Program Files (x86)",
"ProgramW6432": "C:\\Program Files",
"PROMPT": "$P$G",
"PSModulePath": "C:\\Users\\Administrator\\Documents\\WindowsPowerShell\\Modules;C:\\Program Files\\WindowsPowerShell\\Modules;C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\Modules",
"PUBLIC": "C:\\Users\\Public",
"SESSIONNAME": "Console",
"SystemDrive": "C:",
"SystemRoot": "C:\\Windows",
"TEMP": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"TERM_PROGRAM": "vscode",
"TERM_PROGRAM_VERSION": "1.87.2",
"TMP": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"USERDOMAIN": "DESKTOP-LFMUCNU",
"USERDOMAIN_ROAMINGPROFILE": "DESKTOP-LFMUCNU",
"USERNAME": "Administrator",
"USERPROFILE": "C:\\Users\\Administrator",
"VSCODE_GIT_ASKPASS_EXTRA_ARGS": "",
"VSCODE_GIT_ASKPASS_MAIN": "d:\\Program Files\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass-main.js",
"VSCODE_GIT_ASKPASS_NODE": "D:\\Program Files\\Microsoft VS Code\\Code.exe",
"VSCODE_GIT_IPC_HANDLE": "\\\\.\\pipe\\vscode-git-8c9cceec85-sock",
"VSCODE_INJECTION": "1",
"VSCODE_NONCE": "065ba932-95c9-4267-a735-eb438de454f4",
"VUE_APP_API_SERVER": "http://219.146.91.110:30801/api",
"VUE_APP_BIPASS_API_SERVER": "/linkdata/linkdata-gateway/route",
"VUE_APP_NODE_ENV": "dev",
"VUE_APP_PUBLIC_PATH": "epmet-oper",
"VUE_CLI_ENTRY_FILES": "[\"D:\\\\project\\\\epmet-work-pc\\\\src\\\\main.js\"]",
"WEBPACK_DEV_SERVER": "true",
"WebStorm": "D:\\Program Files\\JetBrains\\WebStorm 2023.3.6\\bin;",
"windir": "C:\\Windows"
},
"sharedObjects": [
"D:\\nodejs\\node.exe",
"C:\\Windows\\SYSTEM32\\ntdll.dll",
"C:\\Windows\\System32\\KERNEL32.DLL",
"C:\\Windows\\System32\\KERNELBASE.dll",
"C:\\Windows\\System32\\PSAPI.DLL",
"C:\\Windows\\System32\\WS2_32.dll",
"C:\\Windows\\System32\\RPCRT4.dll",
"C:\\Windows\\System32\\ADVAPI32.dll",
"C:\\Windows\\System32\\msvcrt.dll",
"C:\\Windows\\System32\\sechost.dll",
"C:\\Windows\\System32\\bcrypt.dll",
"C:\\Windows\\SYSTEM32\\dbghelp.dll",
"C:\\Windows\\System32\\ucrtbase.dll",
"C:\\Windows\\System32\\USER32.dll",
"C:\\Windows\\System32\\combase.dll",
"C:\\Windows\\System32\\win32u.dll",
"C:\\Windows\\System32\\GDI32.dll",
"C:\\Windows\\System32\\OLEAUT32.dll",
"C:\\Windows\\System32\\gdi32full.dll",
"C:\\Windows\\System32\\msvcp_win.dll",
"C:\\Windows\\System32\\CRYPT32.dll",
"C:\\Windows\\SYSTEM32\\IPHLPAPI.DLL",
"C:\\Windows\\SYSTEM32\\USERENV.dll",
"C:\\Windows\\SYSTEM32\\WINMM.dll",
"C:\\Windows\\System32\\IMM32.DLL",
"C:\\Windows\\SYSTEM32\\powrprof.dll",
"C:\\Windows\\SYSTEM32\\UMPDC.dll",
"C:\\Windows\\system32\\uxtheme.dll",
"C:\\Windows\\system32\\mswsock.dll",
"C:\\Windows\\SYSTEM32\\kernel.appcore.dll",
"C:\\Windows\\System32\\bcryptprimitives.dll",
"C:\\Windows\\system32\\napinsp.dll",
"C:\\Windows\\system32\\pnrpnsp.dll",
"C:\\Windows\\SYSTEM32\\DNSAPI.dll",
"C:\\Windows\\System32\\NSI.dll",
"C:\\Windows\\System32\\winrnr.dll",
"C:\\Windows\\system32\\wshbth.dll",
"C:\\Windows\\system32\\nlansp_c.dll",
"C:\\Windows\\SYSTEM32\\dhcpcsvc6.DLL",
"C:\\Windows\\SYSTEM32\\dhcpcsvc.DLL",
"C:\\Windows\\SYSTEM32\\CRYPTBASE.DLL",
"\\\\?\\D:\\project\\epmet-work-pc\\node_modules\\node-sass\\vendor\\win32-x64-67\\binding.node"
]
}

532
report.20240401.103014.37784.0.001.json

@ -0,0 +1,532 @@
{
"header": {
"event": "Allocation failed - JavaScript heap out of memory",
"trigger": "FatalError",
"filename": "report.20240401.103014.37784.0.001.json",
"dumpEventTime": "2024-04-01T10:30:14Z",
"processId": 37784,
"cwd": "D:\\project\\epmet-work-pc",
"commandLine": [
"node",
"D:\\project\\epmet-work-pc\\node_modules\\.bin\\\\..\\@vue\\cli-service\\bin\\vue-cli-service.js",
"serve"
],
"nodejsVersion": "v11.15.0",
"wordSize": 64,
"arch": "x64",
"platform": "win32",
"componentVersions": {
"node": "11.15.0",
"v8": "7.0.276.38-node.19",
"uv": "1.27.0",
"zlib": "1.2.11",
"brotli": "1.0.7",
"ares": "1.15.0",
"modules": "67",
"nghttp2": "1.37.0",
"napi": "4",
"llhttp": "1.1.1",
"http_parser": "2.8.0",
"openssl": "1.1.1b",
"cldr": "34.0",
"icu": "63.1",
"tz": "2018e",
"unicode": "11.0"
},
"release": {
"name": "node",
"headersUrl": "https://nodejs.org/download/release/v11.15.0/node-v11.15.0-headers.tar.gz",
"sourceUrl": "https://nodejs.org/download/release/v11.15.0/node-v11.15.0.tar.gz",
"libUrl": "https://nodejs.org/download/release/v11.15.0/win-x64/node.lib"
},
"osName": "Windows_NT",
"osRelease": "10.0.22631",
"osVersion": "Windows 10 Enterprise",
"osMachine": "x86_64",
"host": "DESKTOP-LFMUCNU"
},
"javascriptStack": {
"message": "No stack.",
"stack": [
"Unavailable."
]
},
"nativeStack": [
{
"pc": "0x00007ff7a2c7d24e",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+16366"
},
{
"pc": "0x00007ff7a2c7c0f9",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+11929"
},
{
"pc": "0x00007ff7a2c7b923",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+9923"
},
{
"pc": "0x00007ff7a2d6dc22",
"symbol": "uv_loop_fork+89362"
},
{
"pc": "0x00007ff7a319609e",
"symbol": "v8::internal::FatalProcessOutOfMemory+798"
},
{
"pc": "0x00007ff7a3195fd7",
"symbol": "v8::internal::FatalProcessOutOfMemory+599"
},
{
"pc": "0x00007ff7a3249a14",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+14068"
},
{
"pc": "0x00007ff7a323f822",
"symbol": "v8::internal::Heap::CollectGarbage+7234"
},
{
"pc": "0x00007ff7a323e038",
"symbol": "v8::internal::Heap::CollectGarbage+1112"
},
{
"pc": "0x00007ff7a3247967",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+5703"
},
{
"pc": "0x00007ff7a32479e6",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+5830"
},
{
"pc": "0x00007ff7a337f8b1",
"symbol": "v8::internal::Factory::NewFillerObject+49"
},
{
"pc": "0x00007ff7a3439786",
"symbol": "v8::internal::StoreBuffer::StoreBufferOverflow+27190"
},
{
"pc": "0x000000a7f26d0481",
"symbol": ""
}
],
"javascriptHeap": {
"totalMemory": 1509408768,
"totalCommittedMemory": 1509408768,
"usedMemory": 1355487232,
"availableMemory": 33336928,
"memoryLimit": 1526909922,
"heapSpaces": {
"read_only_space": {
"memorySize": 524288,
"committedMemory": 524288,
"capacity": 515584,
"used": 33520,
"available": 482064
},
"new_space": {
"memorySize": 33554432,
"committedMemory": 33554432,
"capacity": 16498688,
"used": 1357128,
"available": 15141560
},
"old_space": {
"memorySize": 1422594048,
"committedMemory": 1422594048,
"capacity": 1318431864,
"used": 1317220832,
"available": 1211032
},
"code_space": {
"memorySize": 6815744,
"committedMemory": 6815744,
"capacity": 5601568,
"used": 5601568,
"available": 0
},
"map_space": {
"memorySize": 19410944,
"committedMemory": 19410944,
"capacity": 6358400,
"used": 6358400,
"available": 0
},
"large_object_space": {
"memorySize": 26509312,
"committedMemory": 26509312,
"capacity": 41418056,
"used": 24915784,
"available": 16502272
},
"new_large_object_space": {
"memorySize": 0,
"committedMemory": 0,
"capacity": 0,
"used": 0,
"available": 0
}
}
},
"resourceUsage": {
"userCpuSeconds": 57.734,
"kernelCpuSeconds": 1.203,
"cpuConsumptionPercent": 111.202,
"maxRss": 1731334144,
"pageFaults": {
"IORequired": 1779717,
"IONotRequired": 0
},
"fsActivity": {
"reads": 41236,
"writes": 6
}
},
"libuv": [
],
"environmentVariables": {
"=C:": "C:\\",
"=D:": "D:\\project\\epmet-work-pc",
"ALLUSERSPROFILE": "C:\\ProgramData",
"APPDATA": "C:\\Users\\Administrator\\AppData\\Roaming",
"BABEL_ENV": "development",
"CHROME_CRASHPAD_PIPE_NAME": "\\\\.\\pipe\\crashpad_27620_FTVXSFTCXVXRCNHE",
"COLORTERM": "truecolor",
"CommonProgramFiles": "C:\\Program Files\\Common Files",
"CommonProgramFiles(x86)": "C:\\Program Files (x86)\\Common Files",
"CommonProgramW6432": "C:\\Program Files\\Common Files",
"COMPUTERNAME": "DESKTOP-LFMUCNU",
"ComSpec": "C:\\Windows\\system32\\cmd.exe",
"DriverData": "C:\\Windows\\System32\\Drivers\\DriverData",
"EFC_14116": "1",
"FPS_BROWSER_APP_PROFILE_STRING": "Internet Explorer",
"FPS_BROWSER_USER_PROFILE_STRING": "Default",
"GIT_ASKPASS": "d:\\Program Files\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass.sh",
"HOME": "C:\\Users\\Administrator",
"HOMEDRIVE": "C:",
"HOMEPATH": "\\Users\\Administrator",
"INIT_CWD": "D:\\project\\epmet-work-pc",
"IntelliJ IDEA": "D:\\Program Files\\JetBrains\\IntelliJ IDEA 2023.3.6\\bin;",
"LANG": "zh_CN.UTF-8",
"LOCALAPPDATA": "C:\\Users\\Administrator\\AppData\\Local",
"LOGONSERVER": "\\\\DESKTOP-LFMUCNU",
"NODE": "D:\\nodejs\\node.exe",
"NODE_ENV": "development",
"NODE_EXE": "D:\\nodejs\\\\node.exe",
"NPM_CLI_JS": "D:\\nodejs\\node_modules\\npm\\bin\\npm-cli.js",
"npm_config_access": "",
"npm_config_allow_same_version": "",
"npm_config_also": "",
"npm_config_always_auth": "",
"npm_config_argv": "{\"remain\":[],\"cooked\":[\"run\",\"serve\"],\"original\":[\"run\",\"serve\"]}",
"npm_config_audit": "true",
"npm_config_audit_level": "low",
"npm_config_auth_type": "legacy",
"npm_config_bin_links": "true",
"npm_config_browser": "",
"npm_config_ca": "",
"npm_config_cache": "C:\\Users\\Administrator\\AppData\\Roaming\\npm-cache",
"npm_config_cache_lock_retries": "10",
"npm_config_cache_lock_stale": "60000",
"npm_config_cache_lock_wait": "10000",
"npm_config_cache_max": "Infinity",
"npm_config_cache_min": "10",
"npm_config_cafile": "",
"npm_config_cert": "",
"npm_config_cidr": "",
"npm_config_color": "true",
"npm_config_commit_hooks": "true",
"npm_config_depth": "Infinity",
"npm_config_description": "true",
"npm_config_dev": "",
"npm_config_dry_run": "",
"npm_config_editor": "notepad.exe",
"npm_config_engine_strict": "",
"npm_config_fetch_retries": "2",
"npm_config_fetch_retry_factor": "10",
"npm_config_fetch_retry_maxtimeout": "60000",
"npm_config_fetch_retry_mintimeout": "10000",
"npm_config_force": "",
"npm_config_git": "git",
"npm_config_git_tag_version": "true",
"npm_config_global": "",
"npm_config_globalconfig": "D:\\nodejs\\etc\\npmrc",
"npm_config_globalignorefile": "D:\\nodejs\\etc\\npmignore",
"npm_config_global_style": "",
"npm_config_group": "",
"npm_config_ham_it_up": "",
"npm_config_heading": "npm",
"npm_config_https_proxy": "",
"npm_config_if_present": "",
"npm_config_ignore_prepublish": "",
"npm_config_ignore_scripts": "",
"npm_config_init_author_email": "",
"npm_config_init_author_name": "",
"npm_config_init_author_url": "",
"npm_config_init_license": "ISC",
"npm_config_init_module": "C:\\Users\\Administrator\\.npm-init.js",
"npm_config_init_version": "1.0.0",
"npm_config_json": "",
"npm_config_key": "",
"npm_config_legacy_bundling": "",
"npm_config_link": "",
"npm_config_local_address": "",
"npm_config_loglevel": "notice",
"npm_config_logs_max": "10",
"npm_config_long": "",
"npm_config_maxsockets": "50",
"npm_config_message": "%s",
"npm_config_metrics_registry": "https://registry.npmjs.org/",
"npm_config_node_gyp": "D:\\nvm\\v11.15.0\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js",
"npm_config_node_options": "",
"npm_config_node_version": "11.15.0",
"npm_config_noproxy": "",
"npm_config_offline": "",
"npm_config_onload_script": "",
"npm_config_only": "",
"npm_config_optional": "true",
"npm_config_otp": "",
"npm_config_package_lock": "true",
"npm_config_package_lock_only": "",
"npm_config_parseable": "",
"npm_config_prefer_offline": "",
"npm_config_prefer_online": "",
"npm_config_prefix": "D:\\nodejs",
"npm_config_preid": "",
"npm_config_production": "",
"npm_config_progress": "true",
"npm_config_proxy": "",
"npm_config_read_only": "",
"npm_config_rebuild_bundle": "true",
"npm_config_registry": "https://registry.npmjs.org/",
"npm_config_rollback": "true",
"npm_config_save": "true",
"npm_config_save_bundle": "",
"npm_config_save_dev": "",
"npm_config_save_exact": "",
"npm_config_save_optional": "",
"npm_config_save_prefix": "^",
"npm_config_save_prod": "",
"npm_config_scope": "",
"npm_config_scripts_prepend_node_path": "warn-only",
"npm_config_script_shell": "",
"npm_config_searchexclude": "",
"npm_config_searchlimit": "20",
"npm_config_searchopts": "",
"npm_config_searchstaleness": "900",
"npm_config_send_metrics": "",
"npm_config_shell": "C:\\Windows\\system32\\cmd.exe",
"npm_config_shrinkwrap": "true",
"npm_config_sign_git_commit": "",
"npm_config_sign_git_tag": "",
"npm_config_sso_poll_frequency": "500",
"npm_config_sso_type": "oauth",
"npm_config_strict_ssl": "true",
"npm_config_tag": "latest",
"npm_config_tag_version_prefix": "v",
"npm_config_timing": "",
"npm_config_tmp": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"npm_config_umask": "0000",
"npm_config_unicode": "",
"npm_config_unsafe_perm": "true",
"npm_config_update_notifier": "true",
"npm_config_usage": "",
"npm_config_user": "",
"npm_config_userconfig": "C:\\Users\\Administrator\\.npmrc",
"npm_config_user_agent": "npm/6.7.0 node/v11.15.0 win32 x64",
"npm_config_version": "",
"npm_config_versions": "",
"npm_config_viewer": "browser",
"npm_execpath": "D:\\nvm\\v11.15.0\\node_modules\\npm\\bin\\npm-cli.js",
"npm_lifecycle_event": "serve",
"npm_lifecycle_script": "vue-cli-service serve",
"npm_node_execpath": "D:\\nodejs\\node.exe",
"npm_package_browserslist_0": "> 1%",
"npm_package_browserslist_1": "last 2 versions",
"npm_package_browserslist_2=not ie <": " 10",
"npm_package_dependencies_async_validator": "^4.2.5",
"npm_package_dependencies_axios": "^0.19.0",
"npm_package_dependencies_babel_eslint": "^8.0.1",
"npm_package_dependencies_babel_plugin_component": "^1.1.1",
"npm_package_dependencies_css_loader": "^5.0.0",
"npm_package_dependencies_echarts": "^5.2.2",
"npm_package_dependencies_echarts_gl": "^2.0.9",
"npm_package_dependencies_element_theme": "2.0.1",
"npm_package_dependencies_element_ui": "2.13.2",
"npm_package_dependencies_file_saver": "^2.0.5",
"npm_package_dependencies_gulp_autoprefixer": "^6.1.0",
"npm_package_dependencies_gulp_clean_css": "^4.2.0",
"npm_package_dependencies_gulp_load_plugins": "^2.0.0",
"npm_package_dependencies_gulp_rename": "^1.4.0",
"npm_package_dependencies_gulp_sass": "^4.0.2",
"npm_package_dependencies_jsencrypt": "^3.0.3",
"npm_package_dependencies_js_cookie": "^2.2.0",
"npm_package_dependencies_lodash": "^4.17.15",
"npm_package_dependencies_mint_ui": "^2.2.13",
"npm_package_dependencies_moment": "^2.29.4",
"npm_package_dependencies_node_sass": "^4.12.0",
"npm_package_dependencies_ol": "7.2.2",
"npm_package_dependencies_portfinder": "^1.0.21",
"npm_package_dependencies_proj4": "^2.8.0",
"npm_package_dependencies_qs": "^6.7.0",
"npm_package_dependencies_quill": "^1.3.6",
"npm_package_dependencies_relation_graph": "^2.1.31",
"npm_package_dependencies_screenfull": "^4.2.1",
"npm_package_dependencies_sortablejs": "^1.12.0",
"npm_package_dependencies_svg_sprite_loader": "^4.1.6",
"npm_package_dependencies_throttle_debounce": "^3.0.1",
"npm_package_dependencies_turf": "^3.0.14",
"npm_package_dependencies_vue": "^2.6.11",
"npm_package_dependencies_vuex": "^3.1.1",
"npm_package_dependencies_vue_awesome_swiper": "^3.1.3",
"npm_package_dependencies_vue_baidu_map": "^0.21.22",
"npm_package_dependencies_vue_i18n": "^8.12.0",
"npm_package_dependencies_vue_quill_editor": "^3.0.6",
"npm_package_dependencies_vue_router": "^3.0.7",
"npm_package_dependencies_v_distpicker": "^1.2.2",
"npm_package_dependencies_xlsx": "^0.17.1",
"npm_package_dependencies__antv_l7": "2.9.14",
"npm_package_dependencies__antv_l7_draw": "3.0.5",
"npm_package_dependencies__antv_l7_maps": "2.9.14",
"npm_package_dependencies__riophae_vue_treeselect": "^0.4.0",
"npm_package_dependencies__tinymce_tinymce_vue": "^3.2.8",
"npm_package_description": "```\r npm install\r ```",
"npm_package_devDependencies_cross_env": "^7.0.3",
"npm_package_devDependencies_dai_js": "^0.0.12",
"npm_package_devDependencies_element_theme_chalk": "^2.13.0",
"npm_package_devDependencies_filemanager_webpack_plugin": "^2.0.5",
"npm_package_devDependencies_natives": "^1.1.6",
"npm_package_devDependencies_ol": "^7.2.2",
"npm_package_devDependencies_sass_loader": "^7.3.1",
"npm_package_devDependencies_script_loader": "^0.7.2",
"npm_package_devDependencies_style_loader": "^3.3.3",
"npm_package_devDependencies_tinymce": "5.8.2",
"npm_package_devDependencies_vue_template_compiler": "^2.6.11",
"npm_package_devDependencies__antv_f2": "^3.8.10-beta.1",
"npm_package_devDependencies__tinymce_tinymce_vue": "3.2.8",
"npm_package_devDependencies__vue_cli_plugin_babel": "^3.10.0",
"npm_package_devDependencies__vue_cli_plugin_eslint": "^3.10.0",
"npm_package_devDependencies__vue_cli_service": "^3.10.0",
"npm_package_devDependencies__vue_eslint_config_standard": "^4.0.0",
"npm_package_element_theme_browsers_0": "> 1%",
"npm_package_element_theme_browsers_1": "last 2 versions",
"npm_package_element_theme_browsers_2=not ie <": " 10",
"npm_package_element_theme_config": "./src/element-ui/theme-variables.scss",
"npm_package_element_theme_minimize": "true",
"npm_package_element_theme_out": "./src/element-ui/theme",
"npm_package_engines_node=>": " 8.11.1",
"npm_package_engines_npm=>": " 5.6.0",
"npm_package_eslintConfig_env_node": "true",
"npm_package_eslintConfig_extends_0": "plugin:vue/essential",
"npm_package_eslintConfig_extends_1": "@vue/standard",
"npm_package_eslintConfig_parserOptions_parser": "babel-eslint",
"npm_package_eslintConfig_root": "true",
"npm_package_gitHead": "d6ca124ebbea2a05faf4403f4b6cd3801fb35b1c",
"npm_package_name": "epmet-oper-gov",
"npm_package_private": "true",
"npm_package_readmeFilename": "README.md",
"npm_package_scripts_build": "vue-cli-service build",
"npm_package_scripts_build_preview": "vue-cli-service build --mode preview",
"npm_package_scripts_build_prod": "vue-cli-service build --mode production",
"npm_package_scripts_build_shibei_prod": "vue-cli-service build --mode shibei_production",
"npm_package_scripts_build_sit": "vue-cli-service build --mode production.sit",
"npm_package_scripts_build_uat": "vue-cli-service build --mode production.uat",
"npm_package_scripts_dev=node --max_old_space_size": "4096 node_modules/@vue/cli-service/bin/vue-cli-service.js serve",
"npm_package_scripts_et": "et",
"npm_package_scripts_et_init": "et -i",
"npm_package_scripts_et_list": "gulp themes",
"npm_package_scripts_lint": "vue-cli-service lint",
"npm_package_scripts_serve": "vue-cli-service serve",
"npm_package_version": "1.0.0",
"NPM_PREFIX_NPM_CLI_JS": "D:\\nodejs\\node_modules\\npm\\bin\\npm-cli.js",
"NUMBER_OF_PROCESSORS": "16",
"NVM_HOME": "D:\\nvm",
"NVM_SYMLINK": "D:\\nodejs",
"OneDrive": "C:\\Users\\Administrator\\OneDrive",
"OPENSSL_ia32cap": "~0x200000200000000",
"ORIGINAL_XDG_CURRENT_DESKTOP": "undefined",
"OS": "Windows_NT",
"Path": "D:\\nvm\\v11.15.0\\node_modules\\npm\\node_modules\\npm-lifecycle\\node-gyp-bin;D:\\project\\epmet-work-pc\\node_modules\\.bin;D:\\Program Files (x86)\\VMware\\VMware Workstation\\bin\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;D:\\Program Files\\Bandizip;C:\\Program Files\\dotnet\\;D:\\Program Files (x86)\\Tencent\\微信web开发者工具\\dll;%NVM_H;ME%;D:\\nodejs;D:\\Program Files\\Git\\cmd;C:\\Users\\Administrator\\AppData\\Local\\Microsoft\\WindowsApps;D:\\nvm;D:\\nodejs;D:\\Program Files\\JetBrains\\WebStorm 2023.3.6\\bin;;D:\\Program Files\\JetBrains\\IntelliJ IDEA 2023.3.6\\bin;;D:\\Program Files\\Microsoft VS Code\\bin",
"PATHEXT": ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JSE;.WSF;.WSH;.MSC;.CPL",
"PROCESSOR_ARCHITECTURE": "AMD64",
"PROCESSOR_IDENTIFIER": "AMD64 Family 25 Model 116 Stepping 1, AuthenticAMD",
"PROCESSOR_LEVEL": "25",
"PROCESSOR_REVISION": "7401",
"ProgramData": "C:\\ProgramData",
"ProgramFiles": "C:\\Program Files",
"ProgramFiles(x86)": "C:\\Program Files (x86)",
"ProgramW6432": "C:\\Program Files",
"PROMPT": "$P$G",
"PSModulePath": "C:\\Users\\Administrator\\Documents\\WindowsPowerShell\\Modules;C:\\Program Files\\WindowsPowerShell\\Modules;C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\Modules",
"PUBLIC": "C:\\Users\\Public",
"SESSIONNAME": "Console",
"SystemDrive": "C:",
"SystemRoot": "C:\\Windows",
"TEMP": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"TERM_PROGRAM": "vscode",
"TERM_PROGRAM_VERSION": "1.87.2",
"TMP": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"USERDOMAIN": "DESKTOP-LFMUCNU",
"USERDOMAIN_ROAMINGPROFILE": "DESKTOP-LFMUCNU",
"USERNAME": "Administrator",
"USERPROFILE": "C:\\Users\\Administrator",
"VSCODE_GIT_ASKPASS_EXTRA_ARGS": "",
"VSCODE_GIT_ASKPASS_MAIN": "d:\\Program Files\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass-main.js",
"VSCODE_GIT_ASKPASS_NODE": "D:\\Program Files\\Microsoft VS Code\\Code.exe",
"VSCODE_GIT_IPC_HANDLE": "\\\\.\\pipe\\vscode-git-8c9cceec85-sock",
"VSCODE_INJECTION": "1",
"VSCODE_NONCE": "065ba932-95c9-4267-a735-eb438de454f4",
"VUE_APP_API_SERVER": "http://219.146.91.110:30801/api",
"VUE_APP_BIPASS_API_SERVER": "/linkdata/linkdata-gateway/route",
"VUE_APP_NODE_ENV": "dev",
"VUE_APP_PUBLIC_PATH": "epmet-oper",
"VUE_CLI_ENTRY_FILES": "[\"D:\\\\project\\\\epmet-work-pc\\\\src\\\\main.js\"]",
"WEBPACK_DEV_SERVER": "true",
"WebStorm": "D:\\Program Files\\JetBrains\\WebStorm 2023.3.6\\bin;",
"windir": "C:\\Windows"
},
"sharedObjects": [
"D:\\nodejs\\node.exe",
"C:\\Windows\\SYSTEM32\\ntdll.dll",
"C:\\Windows\\System32\\KERNEL32.DLL",
"C:\\Windows\\System32\\KERNELBASE.dll",
"C:\\Windows\\System32\\PSAPI.DLL",
"C:\\Windows\\System32\\WS2_32.dll",
"C:\\Windows\\System32\\RPCRT4.dll",
"C:\\Windows\\System32\\ADVAPI32.dll",
"C:\\Windows\\System32\\msvcrt.dll",
"C:\\Windows\\System32\\sechost.dll",
"C:\\Windows\\SYSTEM32\\dbghelp.dll",
"C:\\Windows\\System32\\bcrypt.dll",
"C:\\Windows\\System32\\ucrtbase.dll",
"C:\\Windows\\System32\\USER32.dll",
"C:\\Windows\\System32\\combase.dll",
"C:\\Windows\\System32\\win32u.dll",
"C:\\Windows\\System32\\GDI32.dll",
"C:\\Windows\\System32\\OLEAUT32.dll",
"C:\\Windows\\System32\\gdi32full.dll",
"C:\\Windows\\System32\\msvcp_win.dll",
"C:\\Windows\\System32\\CRYPT32.dll",
"C:\\Windows\\SYSTEM32\\IPHLPAPI.DLL",
"C:\\Windows\\SYSTEM32\\USERENV.dll",
"C:\\Windows\\SYSTEM32\\WINMM.dll",
"C:\\Windows\\System32\\IMM32.DLL",
"C:\\Windows\\SYSTEM32\\powrprof.dll",
"C:\\Windows\\SYSTEM32\\UMPDC.dll",
"C:\\Windows\\system32\\uxtheme.dll",
"C:\\Windows\\system32\\mswsock.dll",
"C:\\Windows\\SYSTEM32\\kernel.appcore.dll",
"C:\\Windows\\System32\\bcryptprimitives.dll",
"C:\\Windows\\system32\\napinsp.dll",
"C:\\Windows\\system32\\pnrpnsp.dll",
"C:\\Windows\\SYSTEM32\\DNSAPI.dll",
"C:\\Windows\\System32\\NSI.dll",
"C:\\Windows\\System32\\winrnr.dll",
"C:\\Windows\\system32\\wshbth.dll",
"C:\\Windows\\system32\\nlansp_c.dll",
"C:\\Windows\\SYSTEM32\\dhcpcsvc6.DLL",
"C:\\Windows\\SYSTEM32\\dhcpcsvc.DLL",
"C:\\Windows\\SYSTEM32\\CRYPTBASE.DLL",
"\\\\?\\D:\\project\\epmet-work-pc\\node_modules\\node-sass\\vendor\\win32-x64-67\\binding.node"
]
}

532
report.20240401.103332.36232.0.001.json

@ -0,0 +1,532 @@
{
"header": {
"event": "Allocation failed - JavaScript heap out of memory",
"trigger": "FatalError",
"filename": "report.20240401.103332.36232.0.001.json",
"dumpEventTime": "2024-04-01T10:33:32Z",
"processId": 36232,
"cwd": "D:\\project\\epmet-work-pc",
"commandLine": [
"node",
"D:\\project\\epmet-work-pc\\node_modules\\.bin\\\\..\\@vue\\cli-service\\bin\\vue-cli-service.js",
"serve"
],
"nodejsVersion": "v11.15.0",
"wordSize": 64,
"arch": "x64",
"platform": "win32",
"componentVersions": {
"node": "11.15.0",
"v8": "7.0.276.38-node.19",
"uv": "1.27.0",
"zlib": "1.2.11",
"brotli": "1.0.7",
"ares": "1.15.0",
"modules": "67",
"nghttp2": "1.37.0",
"napi": "4",
"llhttp": "1.1.1",
"http_parser": "2.8.0",
"openssl": "1.1.1b",
"cldr": "34.0",
"icu": "63.1",
"tz": "2018e",
"unicode": "11.0"
},
"release": {
"name": "node",
"headersUrl": "https://nodejs.org/download/release/v11.15.0/node-v11.15.0-headers.tar.gz",
"sourceUrl": "https://nodejs.org/download/release/v11.15.0/node-v11.15.0.tar.gz",
"libUrl": "https://nodejs.org/download/release/v11.15.0/win-x64/node.lib"
},
"osName": "Windows_NT",
"osRelease": "10.0.22631",
"osVersion": "Windows 10 Enterprise",
"osMachine": "x86_64",
"host": "DESKTOP-LFMUCNU"
},
"javascriptStack": {
"message": "No stack.",
"stack": [
"Unavailable."
]
},
"nativeStack": [
{
"pc": "0x00007ff7a2c7d24e",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+16366"
},
{
"pc": "0x00007ff7a2c7c0f9",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+11929"
},
{
"pc": "0x00007ff7a2c7b923",
"symbol": "std::basic_ios<char,std::char_traits<char> >::fill+9923"
},
{
"pc": "0x00007ff7a2d6dc22",
"symbol": "uv_loop_fork+89362"
},
{
"pc": "0x00007ff7a319609e",
"symbol": "v8::internal::FatalProcessOutOfMemory+798"
},
{
"pc": "0x00007ff7a3195fd7",
"symbol": "v8::internal::FatalProcessOutOfMemory+599"
},
{
"pc": "0x00007ff7a3249a14",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+14068"
},
{
"pc": "0x00007ff7a323f822",
"symbol": "v8::internal::Heap::CollectGarbage+7234"
},
{
"pc": "0x00007ff7a323e038",
"symbol": "v8::internal::Heap::CollectGarbage+1112"
},
{
"pc": "0x00007ff7a3247967",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+5703"
},
{
"pc": "0x00007ff7a32479e6",
"symbol": "v8::internal::Heap::RootIsImmortalImmovable+5830"
},
{
"pc": "0x00007ff7a337f8b1",
"symbol": "v8::internal::Factory::NewFillerObject+49"
},
{
"pc": "0x00007ff7a3439786",
"symbol": "v8::internal::StoreBuffer::StoreBufferOverflow+27190"
},
{
"pc": "0x00000324f16d0481",
"symbol": ""
}
],
"javascriptHeap": {
"totalMemory": 1482133504,
"totalCommittedMemory": 1482133504,
"usedMemory": 1375147320,
"availableMemory": 45816464,
"memoryLimit": 1526909922,
"heapSpaces": {
"read_only_space": {
"memorySize": 524288,
"committedMemory": 524288,
"capacity": 515584,
"used": 33520,
"available": 482064
},
"new_space": {
"memorySize": 2097152,
"committedMemory": 2097152,
"capacity": 1031168,
"used": 188256,
"available": 842912
},
"old_space": {
"memorySize": 1429409792,
"committedMemory": 1429409792,
"capacity": 1339055240,
"used": 1338394536,
"available": 660704
},
"code_space": {
"memorySize": 6815744,
"committedMemory": 6815744,
"capacity": 5770272,
"used": 5770272,
"available": 0
},
"map_space": {
"memorySize": 17313792,
"committedMemory": 17313792,
"capacity": 6369280,
"used": 6369280,
"available": 0
},
"large_object_space": {
"memorySize": 25972736,
"committedMemory": 25972736,
"capacity": 68222240,
"used": 24391456,
"available": 43830784
},
"new_large_object_space": {
"memorySize": 0,
"committedMemory": 0,
"capacity": 0,
"used": 0,
"available": 0
}
}
},
"resourceUsage": {
"userCpuSeconds": 79.953,
"kernelCpuSeconds": 1.218,
"cpuConsumptionPercent": 121.151,
"maxRss": 1704890368,
"pageFaults": {
"IORequired": 2434376,
"IONotRequired": 0
},
"fsActivity": {
"reads": 41236,
"writes": 6
}
},
"libuv": [
],
"environmentVariables": {
"=C:": "C:\\",
"=D:": "D:\\project\\epmet-work-pc",
"ALLUSERSPROFILE": "C:\\ProgramData",
"APPDATA": "C:\\Users\\Administrator\\AppData\\Roaming",
"BABEL_ENV": "development",
"CHROME_CRASHPAD_PIPE_NAME": "\\\\.\\pipe\\crashpad_27620_FTVXSFTCXVXRCNHE",
"COLORTERM": "truecolor",
"CommonProgramFiles": "C:\\Program Files\\Common Files",
"CommonProgramFiles(x86)": "C:\\Program Files (x86)\\Common Files",
"CommonProgramW6432": "C:\\Program Files\\Common Files",
"COMPUTERNAME": "DESKTOP-LFMUCNU",
"ComSpec": "C:\\Windows\\system32\\cmd.exe",
"DriverData": "C:\\Windows\\System32\\Drivers\\DriverData",
"EFC_14116": "1",
"FPS_BROWSER_APP_PROFILE_STRING": "Internet Explorer",
"FPS_BROWSER_USER_PROFILE_STRING": "Default",
"GIT_ASKPASS": "d:\\Program Files\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass.sh",
"HOME": "C:\\Users\\Administrator",
"HOMEDRIVE": "C:",
"HOMEPATH": "\\Users\\Administrator",
"INIT_CWD": "D:\\project\\epmet-work-pc",
"IntelliJ IDEA": "D:\\Program Files\\JetBrains\\IntelliJ IDEA 2023.3.6\\bin;",
"LANG": "zh_CN.UTF-8",
"LOCALAPPDATA": "C:\\Users\\Administrator\\AppData\\Local",
"LOGONSERVER": "\\\\DESKTOP-LFMUCNU",
"NODE": "D:\\nodejs\\node.exe",
"NODE_ENV": "development",
"NODE_EXE": "D:\\nodejs\\\\node.exe",
"NPM_CLI_JS": "D:\\nodejs\\node_modules\\npm\\bin\\npm-cli.js",
"npm_config_access": "",
"npm_config_allow_same_version": "",
"npm_config_also": "",
"npm_config_always_auth": "",
"npm_config_argv": "{\"remain\":[],\"cooked\":[\"run\",\"serve\"],\"original\":[\"run\",\"serve\"]}",
"npm_config_audit": "true",
"npm_config_audit_level": "low",
"npm_config_auth_type": "legacy",
"npm_config_bin_links": "true",
"npm_config_browser": "",
"npm_config_ca": "",
"npm_config_cache": "C:\\Users\\Administrator\\AppData\\Roaming\\npm-cache",
"npm_config_cache_lock_retries": "10",
"npm_config_cache_lock_stale": "60000",
"npm_config_cache_lock_wait": "10000",
"npm_config_cache_max": "Infinity",
"npm_config_cache_min": "10",
"npm_config_cafile": "",
"npm_config_cert": "",
"npm_config_cidr": "",
"npm_config_color": "true",
"npm_config_commit_hooks": "true",
"npm_config_depth": "Infinity",
"npm_config_description": "true",
"npm_config_dev": "",
"npm_config_dry_run": "",
"npm_config_editor": "notepad.exe",
"npm_config_engine_strict": "",
"npm_config_fetch_retries": "2",
"npm_config_fetch_retry_factor": "10",
"npm_config_fetch_retry_maxtimeout": "60000",
"npm_config_fetch_retry_mintimeout": "10000",
"npm_config_force": "",
"npm_config_git": "git",
"npm_config_git_tag_version": "true",
"npm_config_global": "",
"npm_config_globalconfig": "D:\\nodejs\\etc\\npmrc",
"npm_config_globalignorefile": "D:\\nodejs\\etc\\npmignore",
"npm_config_global_style": "",
"npm_config_group": "",
"npm_config_ham_it_up": "",
"npm_config_heading": "npm",
"npm_config_https_proxy": "",
"npm_config_if_present": "",
"npm_config_ignore_prepublish": "",
"npm_config_ignore_scripts": "",
"npm_config_init_author_email": "",
"npm_config_init_author_name": "",
"npm_config_init_author_url": "",
"npm_config_init_license": "ISC",
"npm_config_init_module": "C:\\Users\\Administrator\\.npm-init.js",
"npm_config_init_version": "1.0.0",
"npm_config_json": "",
"npm_config_key": "",
"npm_config_legacy_bundling": "",
"npm_config_link": "",
"npm_config_local_address": "",
"npm_config_loglevel": "notice",
"npm_config_logs_max": "10",
"npm_config_long": "",
"npm_config_maxsockets": "50",
"npm_config_message": "%s",
"npm_config_metrics_registry": "https://registry.npmjs.org/",
"npm_config_node_gyp": "D:\\nvm\\v11.15.0\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js",
"npm_config_node_options": "",
"npm_config_node_version": "11.15.0",
"npm_config_noproxy": "",
"npm_config_offline": "",
"npm_config_onload_script": "",
"npm_config_only": "",
"npm_config_optional": "true",
"npm_config_otp": "",
"npm_config_package_lock": "true",
"npm_config_package_lock_only": "",
"npm_config_parseable": "",
"npm_config_prefer_offline": "",
"npm_config_prefer_online": "",
"npm_config_prefix": "D:\\nodejs",
"npm_config_preid": "",
"npm_config_production": "",
"npm_config_progress": "true",
"npm_config_proxy": "",
"npm_config_read_only": "",
"npm_config_rebuild_bundle": "true",
"npm_config_registry": "https://registry.npmjs.org/",
"npm_config_rollback": "true",
"npm_config_save": "true",
"npm_config_save_bundle": "",
"npm_config_save_dev": "",
"npm_config_save_exact": "",
"npm_config_save_optional": "",
"npm_config_save_prefix": "^",
"npm_config_save_prod": "",
"npm_config_scope": "",
"npm_config_scripts_prepend_node_path": "warn-only",
"npm_config_script_shell": "",
"npm_config_searchexclude": "",
"npm_config_searchlimit": "20",
"npm_config_searchopts": "",
"npm_config_searchstaleness": "900",
"npm_config_send_metrics": "",
"npm_config_shell": "C:\\Windows\\system32\\cmd.exe",
"npm_config_shrinkwrap": "true",
"npm_config_sign_git_commit": "",
"npm_config_sign_git_tag": "",
"npm_config_sso_poll_frequency": "500",
"npm_config_sso_type": "oauth",
"npm_config_strict_ssl": "true",
"npm_config_tag": "latest",
"npm_config_tag_version_prefix": "v",
"npm_config_timing": "",
"npm_config_tmp": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"npm_config_umask": "0000",
"npm_config_unicode": "",
"npm_config_unsafe_perm": "true",
"npm_config_update_notifier": "true",
"npm_config_usage": "",
"npm_config_user": "",
"npm_config_userconfig": "C:\\Users\\Administrator\\.npmrc",
"npm_config_user_agent": "npm/6.7.0 node/v11.15.0 win32 x64",
"npm_config_version": "",
"npm_config_versions": "",
"npm_config_viewer": "browser",
"npm_execpath": "D:\\nvm\\v11.15.0\\node_modules\\npm\\bin\\npm-cli.js",
"npm_lifecycle_event": "serve",
"npm_lifecycle_script": "vue-cli-service serve",
"npm_node_execpath": "D:\\nodejs\\node.exe",
"npm_package_browserslist_0": "> 1%",
"npm_package_browserslist_1": "last 2 versions",
"npm_package_browserslist_2=not ie <": " 10",
"npm_package_dependencies_async_validator": "^4.2.5",
"npm_package_dependencies_axios": "^0.19.0",
"npm_package_dependencies_babel_eslint": "^8.0.1",
"npm_package_dependencies_babel_plugin_component": "^1.1.1",
"npm_package_dependencies_css_loader": "^5.0.0",
"npm_package_dependencies_echarts": "^5.2.2",
"npm_package_dependencies_echarts_gl": "^2.0.9",
"npm_package_dependencies_element_theme": "2.0.1",
"npm_package_dependencies_element_ui": "2.13.2",
"npm_package_dependencies_file_saver": "^2.0.5",
"npm_package_dependencies_gulp_autoprefixer": "^6.1.0",
"npm_package_dependencies_gulp_clean_css": "^4.2.0",
"npm_package_dependencies_gulp_load_plugins": "^2.0.0",
"npm_package_dependencies_gulp_rename": "^1.4.0",
"npm_package_dependencies_gulp_sass": "^4.0.2",
"npm_package_dependencies_jsencrypt": "^3.0.3",
"npm_package_dependencies_js_cookie": "^2.2.0",
"npm_package_dependencies_lodash": "^4.17.15",
"npm_package_dependencies_mint_ui": "^2.2.13",
"npm_package_dependencies_moment": "^2.29.4",
"npm_package_dependencies_node_sass": "^4.12.0",
"npm_package_dependencies_ol": "7.2.2",
"npm_package_dependencies_portfinder": "^1.0.21",
"npm_package_dependencies_proj4": "^2.8.0",
"npm_package_dependencies_qs": "^6.7.0",
"npm_package_dependencies_quill": "^1.3.6",
"npm_package_dependencies_relation_graph": "^2.1.31",
"npm_package_dependencies_screenfull": "^4.2.1",
"npm_package_dependencies_sortablejs": "^1.12.0",
"npm_package_dependencies_svg_sprite_loader": "^4.1.6",
"npm_package_dependencies_throttle_debounce": "^3.0.1",
"npm_package_dependencies_turf": "^3.0.14",
"npm_package_dependencies_vue": "^2.6.11",
"npm_package_dependencies_vuex": "^3.1.1",
"npm_package_dependencies_vue_awesome_swiper": "^3.1.3",
"npm_package_dependencies_vue_baidu_map": "^0.21.22",
"npm_package_dependencies_vue_i18n": "^8.12.0",
"npm_package_dependencies_vue_quill_editor": "^3.0.6",
"npm_package_dependencies_vue_router": "^3.0.7",
"npm_package_dependencies_v_distpicker": "^1.2.2",
"npm_package_dependencies_xlsx": "^0.17.1",
"npm_package_dependencies__antv_l7": "2.9.14",
"npm_package_dependencies__antv_l7_draw": "3.0.5",
"npm_package_dependencies__antv_l7_maps": "2.9.14",
"npm_package_dependencies__riophae_vue_treeselect": "^0.4.0",
"npm_package_dependencies__tinymce_tinymce_vue": "^3.2.8",
"npm_package_description": "```\r npm install\r ```",
"npm_package_devDependencies_cross_env": "^7.0.3",
"npm_package_devDependencies_dai_js": "^0.0.12",
"npm_package_devDependencies_element_theme_chalk": "^2.13.0",
"npm_package_devDependencies_filemanager_webpack_plugin": "^2.0.5",
"npm_package_devDependencies_natives": "^1.1.6",
"npm_package_devDependencies_ol": "^7.2.2",
"npm_package_devDependencies_sass_loader": "^7.3.1",
"npm_package_devDependencies_script_loader": "^0.7.2",
"npm_package_devDependencies_style_loader": "^3.3.3",
"npm_package_devDependencies_tinymce": "5.8.2",
"npm_package_devDependencies_vue_template_compiler": "^2.6.11",
"npm_package_devDependencies__antv_f2": "^3.8.10-beta.1",
"npm_package_devDependencies__tinymce_tinymce_vue": "3.2.8",
"npm_package_devDependencies__vue_cli_plugin_babel": "^3.10.0",
"npm_package_devDependencies__vue_cli_plugin_eslint": "^3.10.0",
"npm_package_devDependencies__vue_cli_service": "^3.10.0",
"npm_package_devDependencies__vue_eslint_config_standard": "^4.0.0",
"npm_package_element_theme_browsers_0": "> 1%",
"npm_package_element_theme_browsers_1": "last 2 versions",
"npm_package_element_theme_browsers_2=not ie <": " 10",
"npm_package_element_theme_config": "./src/element-ui/theme-variables.scss",
"npm_package_element_theme_minimize": "true",
"npm_package_element_theme_out": "./src/element-ui/theme",
"npm_package_engines_node=>": " 8.11.1",
"npm_package_engines_npm=>": " 5.6.0",
"npm_package_eslintConfig_env_node": "true",
"npm_package_eslintConfig_extends_0": "plugin:vue/essential",
"npm_package_eslintConfig_extends_1": "@vue/standard",
"npm_package_eslintConfig_parserOptions_parser": "babel-eslint",
"npm_package_eslintConfig_root": "true",
"npm_package_gitHead": "d6ca124ebbea2a05faf4403f4b6cd3801fb35b1c",
"npm_package_name": "epmet-oper-gov",
"npm_package_private": "true",
"npm_package_readmeFilename": "README.md",
"npm_package_scripts_build": "vue-cli-service build",
"npm_package_scripts_build_preview": "vue-cli-service build --mode preview",
"npm_package_scripts_build_prod": "vue-cli-service build --mode production",
"npm_package_scripts_build_shibei_prod": "vue-cli-service build --mode shibei_production",
"npm_package_scripts_build_sit": "vue-cli-service build --mode production.sit",
"npm_package_scripts_build_uat": "vue-cli-service build --mode production.uat",
"npm_package_scripts_dev=node --max_old_space_size": "4096 node_modules/@vue/cli-service/bin/vue-cli-service.js serve",
"npm_package_scripts_et": "et",
"npm_package_scripts_et_init": "et -i",
"npm_package_scripts_et_list": "gulp themes",
"npm_package_scripts_lint": "vue-cli-service lint",
"npm_package_scripts_serve": "vue-cli-service serve",
"npm_package_version": "1.0.0",
"NPM_PREFIX_NPM_CLI_JS": "D:\\nodejs\\node_modules\\npm\\bin\\npm-cli.js",
"NUMBER_OF_PROCESSORS": "16",
"NVM_HOME": "D:\\nvm",
"NVM_SYMLINK": "D:\\nodejs",
"OneDrive": "C:\\Users\\Administrator\\OneDrive",
"OPENSSL_ia32cap": "~0x200000200000000",
"ORIGINAL_XDG_CURRENT_DESKTOP": "undefined",
"OS": "Windows_NT",
"Path": "D:\\nvm\\v11.15.0\\node_modules\\npm\\node_modules\\npm-lifecycle\\node-gyp-bin;D:\\project\\epmet-work-pc\\node_modules\\.bin;D:\\Program Files (x86)\\VMware\\VMware Workstation\\bin\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;D:\\Program Files\\Bandizip;C:\\Program Files\\dotnet\\;D:\\Program Files (x86)\\Tencent\\微信web开发者工具\\dll;%NVM_H;ME%;D:\\nodejs;D:\\Program Files\\Git\\cmd;C:\\Users\\Administrator\\AppData\\Local\\Microsoft\\WindowsApps;D:\\nvm;D:\\nodejs;D:\\Program Files\\JetBrains\\WebStorm 2023.3.6\\bin;;D:\\Program Files\\JetBrains\\IntelliJ IDEA 2023.3.6\\bin;;D:\\Program Files\\Microsoft VS Code\\bin",
"PATHEXT": ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JSE;.WSF;.WSH;.MSC;.CPL",
"PROCESSOR_ARCHITECTURE": "AMD64",
"PROCESSOR_IDENTIFIER": "AMD64 Family 25 Model 116 Stepping 1, AuthenticAMD",
"PROCESSOR_LEVEL": "25",
"PROCESSOR_REVISION": "7401",
"ProgramData": "C:\\ProgramData",
"ProgramFiles": "C:\\Program Files",
"ProgramFiles(x86)": "C:\\Program Files (x86)",
"ProgramW6432": "C:\\Program Files",
"PROMPT": "$P$G",
"PSModulePath": "C:\\Users\\Administrator\\Documents\\WindowsPowerShell\\Modules;C:\\Program Files\\WindowsPowerShell\\Modules;C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\Modules",
"PUBLIC": "C:\\Users\\Public",
"SESSIONNAME": "Console",
"SystemDrive": "C:",
"SystemRoot": "C:\\Windows",
"TEMP": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"TERM_PROGRAM": "vscode",
"TERM_PROGRAM_VERSION": "1.87.2",
"TMP": "C:\\Users\\Administrator\\AppData\\Local\\Temp",
"USERDOMAIN": "DESKTOP-LFMUCNU",
"USERDOMAIN_ROAMINGPROFILE": "DESKTOP-LFMUCNU",
"USERNAME": "Administrator",
"USERPROFILE": "C:\\Users\\Administrator",
"VSCODE_GIT_ASKPASS_EXTRA_ARGS": "",
"VSCODE_GIT_ASKPASS_MAIN": "d:\\Program Files\\Microsoft VS Code\\resources\\app\\extensions\\git\\dist\\askpass-main.js",
"VSCODE_GIT_ASKPASS_NODE": "D:\\Program Files\\Microsoft VS Code\\Code.exe",
"VSCODE_GIT_IPC_HANDLE": "\\\\.\\pipe\\vscode-git-8c9cceec85-sock",
"VSCODE_INJECTION": "1",
"VSCODE_NONCE": "ef108932-8b13-4bc6-86ce-98b15eb66515",
"VUE_APP_API_SERVER": "http://219.146.91.110:30801/api",
"VUE_APP_BIPASS_API_SERVER": "/linkdata/linkdata-gateway/route",
"VUE_APP_NODE_ENV": "dev",
"VUE_APP_PUBLIC_PATH": "epmet-oper",
"VUE_CLI_ENTRY_FILES": "[\"D:\\\\project\\\\epmet-work-pc\\\\src\\\\main.js\"]",
"WEBPACK_DEV_SERVER": "true",
"WebStorm": "D:\\Program Files\\JetBrains\\WebStorm 2023.3.6\\bin;",
"windir": "C:\\Windows"
},
"sharedObjects": [
"D:\\nodejs\\node.exe",
"C:\\Windows\\SYSTEM32\\ntdll.dll",
"C:\\Windows\\System32\\KERNEL32.DLL",
"C:\\Windows\\System32\\KERNELBASE.dll",
"C:\\Windows\\System32\\PSAPI.DLL",
"C:\\Windows\\System32\\WS2_32.dll",
"C:\\Windows\\System32\\RPCRT4.dll",
"C:\\Windows\\System32\\ADVAPI32.dll",
"C:\\Windows\\System32\\msvcrt.dll",
"C:\\Windows\\System32\\sechost.dll",
"C:\\Windows\\System32\\bcrypt.dll",
"C:\\Windows\\System32\\USER32.dll",
"C:\\Windows\\System32\\win32u.dll",
"C:\\Windows\\SYSTEM32\\dbghelp.dll",
"C:\\Windows\\System32\\GDI32.dll",
"C:\\Windows\\System32\\gdi32full.dll",
"C:\\Windows\\System32\\ucrtbase.dll",
"C:\\Windows\\System32\\msvcp_win.dll",
"C:\\Windows\\System32\\combase.dll",
"C:\\Windows\\System32\\CRYPT32.dll",
"C:\\Windows\\System32\\OLEAUT32.dll",
"C:\\Windows\\SYSTEM32\\IPHLPAPI.DLL",
"C:\\Windows\\SYSTEM32\\USERENV.dll",
"C:\\Windows\\SYSTEM32\\WINMM.dll",
"C:\\Windows\\System32\\IMM32.DLL",
"C:\\Windows\\SYSTEM32\\powrprof.dll",
"C:\\Windows\\SYSTEM32\\UMPDC.dll",
"C:\\Windows\\system32\\uxtheme.dll",
"C:\\Windows\\system32\\mswsock.dll",
"C:\\Windows\\SYSTEM32\\kernel.appcore.dll",
"C:\\Windows\\System32\\bcryptprimitives.dll",
"C:\\Windows\\system32\\napinsp.dll",
"C:\\Windows\\system32\\pnrpnsp.dll",
"C:\\Windows\\SYSTEM32\\DNSAPI.dll",
"C:\\Windows\\System32\\NSI.dll",
"C:\\Windows\\System32\\winrnr.dll",
"C:\\Windows\\system32\\wshbth.dll",
"C:\\Windows\\system32\\nlansp_c.dll",
"C:\\Windows\\SYSTEM32\\dhcpcsvc6.DLL",
"C:\\Windows\\SYSTEM32\\dhcpcsvc.DLL",
"C:\\Windows\\SYSTEM32\\CRYPTBASE.DLL",
"\\\\?\\D:\\project\\epmet-work-pc\\node_modules\\node-sass\\vendor\\win32-x64-67\\binding.node"
]
}

429
src/assets/scss/modules/index.scss

@ -1,30 +1,113 @@
@import "../c/config";
@import "../c/function";
// .g-row {
// padding: 5px 6px;
// display: flex;
// height: 100%;
// .g-row-left {
// margin-right: auto;
// width: calc(66%);
// flex-direction: column;
// // justify-content: space-around;
// }
// .g-row-right {
// display: flex;
// margin-left: auto;
// width: calc(34% - 16px);
// flex-direction: column;
// justify-content: space-around;
// }
// }
.white-box {
background-color: white;
margin-top: 10px;
box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.08), 0px 3px 6px -4px rgba(0, 0, 0, 0.12);
flex-grow: 1;
max-height: calc(50% - 10px);
overflow: hidden scroll;
position: relative;
}
// .echart{
// position: absolute;
// // left: -20px;
// top: 10px;
// width: 1004px;
// user-select: none;
// -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
// padding: 0px;
// margin: 0px;
// border-width: 0px;
// height: 260px;
// }
.noe-text {
position: relative;
// position: fixed;
padding-left: 14px;
height: 30px;
margin-right: 10px;
font-size: 15px;
z-index: 1;
display: flex;
justify-content: space-between;
background: white;
// max-width: calc(100% - 20px);
width: 100%;
// overflow-x: auto;
}
.noe-text::before {
content: "";
position: absolute;
top: 5px;
left: 0;
height: 70%;
width: 4px;
background-color: #2683DB;
}
.g-row {
padding: 5px 6px;
display: flex;
height: 100%;
align-items: stretch;
.g-row-left {
margin-right: auto;
width: calc(66%);
display: flex;
// margin-right: auto;
margin-right: 10px;
width: calc(60% - 25px);
flex-direction: column;
justify-content: space-around;
// justify-content: space-around;
}
.g-row-right {
display: flex;
margin-left: auto;
width: calc(34% - 16px);
margin-right: 5px;
flex-grow: 0.5;
width: calc(40% - 25px);
flex-direction: column;
justify-content: space-around;
}
}
.m-box {
flex-grow: 1;
position: relative;
padding: 16px;
// padding: 16px;
margin-top: 10px;
margin-left: 10px;
background: #ffffff;
box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.08), 0px 3px 6px -4px rgba(0, 0, 0, 0.12);
border-radius: 2px;
.merw {
background: #000;
margin-top: 10px;
}
.header {
padding: 4px 0;
font-size: 15px;
@ -32,8 +115,10 @@
font-weight: 500;
color: rgba(0, 0, 0, 0.85);
line-height: 17px;
margin-top: 10px;
margin-left: 10px;
> img {
>img {
vertical-align: bottom;
margin-right: 5px;
width: 17px;
@ -41,6 +126,14 @@
}
}
.newqsa {
border-left: 4px solid #2683DB;
height: 70%;
// width: 4px;
margin-left: -10px;
padding-left: 8px;
}
.more {
position: absolute;
top: 14px;
@ -63,10 +156,39 @@
.m-search {
box-sizing: border-box;
padding: 40px 80px;
margin-bottom: 16px;
height: 280px;
background-image: url("../../images/index/chaxun-bg.png");
margin-bottom: 10px;
height: 200px;
// background-image: url("../../images/index/chaxun-bg.png");
background-size: cover;
position: relative;
.wrap {
position: absolute;
top: 0;
left: 0;
width: 100%;
}
.mewq {
// background-color: #333;
width: inherit;
margin-left: -69px;
height: 64px;
margin-top: 85px;
box-sizing: border-box;
margin-right: -68px;
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 5px;
text-align: center;
}
.boxss {
background-color: #F8F8F8;
border-radius: 10px;
}
.title {
height: 47px;
@ -80,7 +202,8 @@
margin-top: 24px;
display: flex;
align-items: center;
> div {
>div {
position: relative;
margin-right: 30px;
width: 56px;
@ -95,13 +218,16 @@
&:hover {
color: $c1_on;
}
&.z-on {
color: #ffffff;
background: $c1;
margin-left: 10px;
&:hover {
color: #ffffff;
}
&::after {
content: "";
display: block;
@ -123,10 +249,13 @@
margin-top: 15px;
display: flex;
align-items: center;
margin-left: 10px;
.search-input {
position: relative;
width: 60%;
left: 0;
right: 0;
width: 98%;
height: 48px;
background: #ffffff;
border-radius: 4px;
@ -182,6 +311,7 @@
font-weight: 500;
color: #ffffff;
cursor: pointer;
&:hover {
background: $c1_on;
}
@ -200,6 +330,7 @@
font-weight: 500;
color: $c1;
cursor: pointer;
img {
width: 20px;
height: 20px;
@ -216,134 +347,148 @@
.m-pan {
position: relative;
box-sizing: border-box;
width: 100%;
height:calc( 100vh - 420px);
// width: 100%;
// height:calc( 82vh - 420px);
height: calc(82vh - 460px);
overflow: hidden;
.flex_box{
height:calc(100% - 30px);
width: 100%;
overflow: hidden;
.cnt {
margin-top: 20px;
display: flex;
.flex_box {
height: calc(100% - 30px);
width: 100%;
overflow: hidden;
height: 100%;
.cnt-left {
box-sizing: border-box;
padding: 16px;
width: 240px;
height: 402px;
background: #f5f7fa;
border-radius: 2px;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: rgba(0, 0, 0, 0.85);
line-height: 24px;
display: flex;
flex-direction: column;
.cnt {
margin-top: 20px;
display: flex;
overflow: hidden;
height: 100%;
.subtitle {
padding: 4px 0;
font-size: 15px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
flex: 1;
.cnt-left {
box-sizing: border-box;
padding: 16px;
width: 240px;
height: 402px;
background: #f5f7fa;
border-radius: 2px;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: rgba(0, 0, 0, 0.85);
line-height: 17px;
&:last-of-type {
margin-top: 40px;
}
line-height: 24px;
height: 100%;
> img {
vertical-align: bottom;
margin-right: 5px;
width: 17px;
height: 17px;
}
}
}
.cnt-right {
.list {
margin-bottom: 71px;
.item {
margin-bottom: 30px;
display: flex;
align-items: center;
font-size: 14px;
.subtitle {
padding: 4px 0;
font-size: 15px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: rgba(44, 53, 66, 0.85);
line-height: 24px;
cursor: pointer;
color: rgba(0, 0, 0, 0.85);
line-height: 17px;
&:hover {
color: $c1;
&:last-of-type {
margin-top: 40px;
}
.item-name {
margin-left: 5px;
width: 80px;
flex-shrink: 0;
>img {
vertical-align: bottom;
margin-right: 5px;
width: 17px;
height: 17px;
}
}
}
.item-div {
width: 1px;
height: 12px;
background: #d8d8d8;
border-radius: 1px;
}
.cnt-right {
.list {
margin-bottom: 71px;
margin-left: 10px;
.item {
margin-bottom: 30px;
display: flex;
align-items: center;
font-size: 14px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: rgba(44, 53, 66, 0.85);
line-height: 24px;
cursor: pointer;
.item-count {
margin-left: 20px;
width: 90px;
flex-shrink: 0;
}
&:hover {
color: $c1;
}
.item-per {
min-width: 70px;
}
.item-name {
margin-left: 5px;
width: 80px;
flex-shrink: 0;
}
.item-div {
width: 1px;
height: 12px;
background: #d8d8d8;
border-radius: 1px;
}
.item-count {
margin-left: 20px;
width: 90px;
flex-shrink: 0;
}
.item-per {
min-width: 70px;
}
.item-progress {
margin-right: 15px;
width: 100%;
height: 24px;
background: #e6f0ff;
border-radius: 1px;
overflow: hidden;
b {
display: block;
.item-progress {
margin-right: 15px;
width: 100%;
height: 24px;
background: #7ba6e6;
background: #e6f0ff;
border-radius: 1px;
overflow: hidden;
b {
display: block;
height: 24px;
background: #7ba6e6;
}
}
}
}
}
}
::v-deep .el-tabs__content {
overflow: scroll !important;
height: 100% !important;
::v-deep .el-tabs__content {
overflow: scroll !important;
height: 100% !important;
}
}
}
}
}
.m-tx {
margin-bottom: 13px;
width: 100%;
height:calc( 100vh - 430px);
// margin-bottom: 13px;
// width: 100%;
height: 200px;
overflow: hidden;
padding-right: 5px;
box-sizing: border-box;
// padding-right: 5px;
// box-sizing: border-box;
// flex-grow: 1;
// overflow: hidden scroll;
.cnt {
box-sizing: border-box;
margin-top: 12px;
border-radius: 2px;
overflow:hidden scroll ;
overflow: hidden scroll;
height: calc(100% - 50px);
.empty {
text-align: center;
color: #999;
img {
display: block;
width: 120px;
@ -354,13 +499,17 @@
.item {
padding: 16px 0 7px;
border-bottom: 1px dashed #f0f5fa;
&:last-child {
border-bottom: none;
}
display: flex;
align-items: center;
.item_right{
.item_right {
flex: 1;
.item-title {
@include toe;
height: 22px;
@ -369,23 +518,29 @@
font-weight: 400;
color: rgba(0, 0, 0, 0.85);
line-height: 22px;
margin-left: 10px;
&:hover {
color: $c1;
cursor: pointer;
}
}
.item-date {
font-size: 12px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: rgba(0, 0, 0, 0.45);
line-height: 17px;
margin-left: 10px;
}
}
.item_left{
.item_left {
width: 40px;
margin-right:15px;
.i-tag{
margin-right: 15px;
.i-tag {
display: block;
margin-right: 15px;
width: 40px;
@ -401,12 +556,13 @@
font-weight: 600;
}
}
}
}
}
.m-tb {
height: 302px;
height: 260px;
.cnt {
box-sizing: border-box;
@ -437,9 +593,11 @@
color: #333333;
line-height: 24px;
}
.item-btns {
margin-left: auto;
display: flex;
.item-btn {
display: flex;
align-items: center;
@ -449,19 +607,23 @@
font-weight: 400;
color: $c1;
text-align: center;
&:hover {
color: $c1_on;
cursor: pointer;
}
&:last-child {
margin-right: 2px;
}
img {
display: block;
width: 15px;
height: 15px;
margin-right: 2px;
}
span {
display: block;
}
@ -470,3 +632,46 @@
}
}
}
.table-container {
// max-height: 300px;
overflow-y: auto;
}
.table {
border-collapse: collapse;
width: 90%;
margin: 0 auto;
// height: auto;
margin-top: 45px;
}
.table th,
.table td {
border: 1px solid rgb(230, 230, 230);
padding: 8px;
text-align: center;
}
.table th {
background-color: #F5F7FB;
padding: 8px;
text-align: center;
width: 100px;
}
.row {
display: flex;
}
.cell {
border: 1px solid #F5F7FB;
padding: 8px;
}
.special-header {
background-color: #FFFCF1;
/* 设置特定表头的背景颜色为 #FFFCF1 */
}
.update-settings {
margin-right: 25px;
}

10
src/router/index.js

@ -98,6 +98,16 @@ export const moduleRoutes = {
],
},
},
{
path: "base-nonIntResi",
props: true,
name: "base-nonIntResi",
component: () => import("@/views/modules/base/nonIntResi/nonIntResi"),
meta: {
isTab: true,
title: "信息不完整",
},
},
{
path: "shequ-chaxun",
props: true,

16
src/views/components/resiSearch.vue

@ -118,7 +118,8 @@
</el-date-picker>
</el-form-item>
<el-form-item label="备注">
<el-input v-model="form.remark" placeholder="请输入" size="small" class="u-item-width-normal" clearable></el-input>
<el-input v-model="form.remark" placeholder="请输入" size="small" class="u-item-width-normal"
clearable></el-input>
</el-form-item>
</el-form>
</div>
@ -302,7 +303,7 @@ export default {
}
],
projectStaffList: [
{
{
label: '志愿者',
value: 'VOLUNTEER_FLAG'
},
@ -360,6 +361,8 @@ export default {
birthdayEnd: '',
ageStart: '',
ageEnd: '',
integrityScoreFrom: null,//
integrityScoreTo: null,//end
gender: '',
cultureLevel: '',
localResidenceFlag: '',
@ -711,6 +714,13 @@ export default {
}
}
},
informationChange() {
this.form.integrityScoreFrom = parseFloat(this.form.integrityScoreFrom);
this.form.integrityScoreTo = parseFloat(this.form.integrityScoreTo);
if (isNaN(this.form.integrityScoreFrom) || isNaN(this.form.integrityScoreTo)) {
this.$message.warning('请输入数字');
}
},
handleChangeAgency(val) {
this.sarr = []
@ -1007,7 +1017,7 @@ export default {
}
return subYear - 1 + '-' + nowMonth + '-' + nowDay
},
handelClickBasicType(){
handelClickBasicType() {
this.form.name = '';
this.form.mobile = '';
this.form.idNum = '';

320
src/views/modules/base/community/community.vue

@ -1,29 +1,14 @@
<template>
<div class="g-main">
<div :style="{ height: rowHeight }"
class="div_tree">
<el-input placeholder="输入关键字进行过滤"
v-model="filterText"
@keydown.native.enter="handleChangeSerch()">
<div :style="{ height: rowHeight }" class="div_tree">
<el-input placeholder="输入关键字进行过滤" v-model="filterText" @keydown.native.enter="handleChangeSerch()">
</el-input>
<el-scrollbar :style="{ height: treeHeight }"
class="scrollar">
<el-tree ref="ref_tree"
v-loading="treeLoading"
class="filter_tree"
:data="treeData"
:props="defaultProps"
:highlight-current="true"
node-key="id"
:expand-on-click-node="false"
:filter-node-method="filterNode"
@node-click="handleNodeClick"
lazy
:auto-expand-parent="true"
:default-expanded-keys="autoOpenArr"
:load="lazyLoadTree">
<span slot-scope="{ node, data }"
class="custom-tree-node">
<el-scrollbar :style="{ height: treeHeight }" class="scrollar">
<el-tree ref="ref_tree" v-loading="treeLoading" class="filter_tree" :data="treeData" :props="defaultProps"
:highlight-current="true" node-key="id" :expand-on-click-node="false" :filter-node-method="filterNode"
@node-click="handleNodeClick" lazy :auto-expand-parent="true" :default-expanded-keys="autoOpenArr"
:load="lazyLoadTree">
<span slot-scope="{ node, data }" class="custom-tree-node">
<!-- <img
v-if="showIcons(data)"
src="@/assets/images/index/abnormal.png"
@ -42,107 +27,57 @@
<span style="color: red">{{ data.showNum }}</span>
<span>{{ ")" }}</span>
</span> -->
<el-tooltip
:content="tooltipTitle"
:disabled="isShowTooltip"
placement="top"
effect="dark"
>
<span class="over-ellipsis" @mouseover="mouseOverNode($event)">
{{ node.label }}
</span>
</el-tooltip>
<el-tooltip :content="tooltipTitle" :disabled="isShowTooltip" placement="top" effect="dark">
<span class="over-ellipsis" @mouseover="mouseOverNode($event)">
{{ node.label }}
</span>
</el-tooltip>
</span>
</el-tree>
</el-scrollbar>
</div>
<div class="div_left">
<div class="m-search"
style="flex-direction: column">
<div class="m-search" style="flex-direction: column">
<section :class="boxHeight ? 'm-form-box-height' : 'm-form-box-height-auto'">
<el-form :inline="true"
class="communityHeight"
ref="ref_searchform"
:label-width="'100px'">
<el-form-item label="房主姓名"
prop="ownerName">
<el-input v-model="ownerName"
class="u-item-width-normal"
size="small"
clearable
placeholder="请输入内容">
<el-form :inline="true" class="communityHeight" ref="ref_searchform" :label-width="'100px'">
<el-form-item label="房主姓名" prop="ownerName">
<el-input v-model="ownerName" class="u-item-width-normal" size="small" clearable placeholder="请输入内容">
</el-input>
</el-form-item>
<el-form-item label="联系电话"
prop="ownerPhone">
<el-input v-model="ownerPhone"
class="u-item-width-normal"
size="small"
clearable
placeholder="请输入联系电话">
<el-form-item label="联系电话" prop="ownerPhone">
<el-input v-model="ownerPhone" class="u-item-width-normal" size="small" clearable placeholder="请输入联系电话">
</el-input>
</el-form-item>
<el-form-item label="房屋状态"
prop="rentFlag">
<el-select class="u-item-width-normal"
v-model="rentFlag"
placeholder="请选择"
size="small"
clearable>
<el-option v-for="item in rentList"
:key="item.value"
:label="item.label"
:value="item.value">
<el-form-item label="房屋状态" prop="rentFlag">
<el-select class="u-item-width-normal" v-model="rentFlag" placeholder="请选择" size="small" clearable>
<el-option v-for="item in rentList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="房屋用途"
prop="purpose">
<el-select v-model="purpose"
class="u-item-width-normal"
placeholder="请选择"
size="small"
clearable>
<el-option v-for="item in purposeArr"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue">
<el-form-item label="房屋用途" prop="purpose">
<el-select v-model="purpose" class="u-item-width-normal" placeholder="请选择" size="small" clearable>
<el-option v-for="item in purposeArr" :key="item.dictValue" :label="item.dictName"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="更新时间"
prop="updateStartDate">
<el-date-picker v-model="updateStartDate"
:picker-options="startPickerOptions"
class="u-item-width-daterange"
size="small"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
value="yyyy-MM-dd"
placeholder="开始时间">
<el-form-item label="更新时间" prop="updateStartDate">
<el-date-picker v-model="updateStartDate" :picker-options="startPickerOptions"
class="u-item-width-daterange" size="small" type="datetime" value-format="yyyy-MM-dd HH:mm:ss"
value="yyyy-MM-dd" placeholder="开始时间">
</el-date-picker>
<span class="u-data-tag"></span>
<el-date-picker v-model="updateEndDate"
:picker-options="endPickerOptions"
class="u-item-width-daterange u-data-tag"
size="small"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
value="yyyy-MM-dd"
placeholder="结束时间">
<el-date-picker v-model="updateEndDate" :picker-options="endPickerOptions"
class="u-item-width-daterange u-data-tag" size="small" type="datetime"
value-format="yyyy-MM-dd HH:mm:ss" value="yyyy-MM-dd" placeholder="结束时间">
</el-date-picker>
</el-form-item>
<el-form-item label="备注"
prop="remark">
<el-input v-model="remark"
class="u-item-width-normal"
size="small"
clearable
placeholder="请输入备注">
<el-form-item label="备注" prop="remark">
<el-input v-model="remark" class="u-item-width-normal" size="small" clearable placeholder="请输入备注">
</el-input>
</el-form-item>
@ -232,15 +167,9 @@
</el-form>
</section>
<el-row>
<el-col :span="24"
align="right">
<el-button style="margin-left: 10px"
size="small"
type="primary"
@click="handleSearch">查询</el-button>
<el-button size="small"
class="diy-button--white"
@click="resetSearch">重置</el-button>
<el-col :span="24" align="right">
<el-button style="margin-left: 10px" size="small" type="primary" @click="handleSearch">查询</el-button>
<el-button size="small" class="diy-button--white" @click="resetSearch">重置</el-button>
<!-- <el-button style="margin: 0 6px 0 10px"
size="small"
class="div-table-button--blue"
@ -252,54 +181,24 @@
</div>
<div class="">
<build-table v-if="selTreeObj.level === 'neighborHood' && !showRoomTable"
ref="ref_neighTable"
:staffAgencyId="staffAgencyId"
:showImportBtn="showImportBtn"
:ownerName="ownerName"
:ownerPhone="ownerPhone"
:rentFlag="rentFlag"
:purpose="purpose"
:remark="remark"
:updateStartDate="updateStartDate"
:updateEndDate="updateEndDate"
:searchHeight="searchHeight"
@toNextLevel="toNextLevel"
@refreshTree="refreshTree"></build-table>
<room-table v-if="showRoomTable || selTreeObj.level === 'building'"
:staffAgencyId="staffAgencyId"
:showImportBtn="showImportBtn"
:ownerName="ownerName"
:ownerPhone="ownerPhone"
:rentFlag="rentFlag"
:purpose="purpose"
:neighborHoodId="neighborHoodId"
:buildingId="buildingId"
:buildingUnitId="buildingUnitId"
:houseId="houseId"
:remark="remark"
:updateStartDate="updateStartDate"
:updateEndDate="updateEndDate"
ref="ref_buildingTable"
@refreshTree="refreshTree"></room-table>
<community-table v-if="
selTreeObj.level !== 'building' &&
selTreeObj.level !== 'neighborHood' &&
!showRoomTable
"
@toNextLevel="toNextLevel"
:staffAgencyId="staffAgencyId"
:ownerName="ownerName"
:ownerPhone="ownerPhone"
:rentFlag="rentFlag"
:purpose="purpose"
:remark="remark"
:updateStartDate="updateStartDate"
:updateEndDate="updateEndDate"
ref="ref_communityTable"
@refreshTree="refreshTree"></community-table>
<build-table v-if="selTreeObj.level === 'neighborHood' && !showRoomTable" ref="ref_neighTable"
:staffAgencyId="staffAgencyId" :showImportBtn="showImportBtn" :ownerName="ownerName" :ownerPhone="ownerPhone"
:rentFlag="rentFlag" :purpose="purpose" :remark="remark" :updateStartDate="updateStartDate"
:updateEndDate="updateEndDate" :searchHeight="searchHeight" @toNextLevel="toNextLevel"
@refreshTree="refreshTree"></build-table>
<room-table v-if="showRoomTable || selTreeObj.level === 'building'" :staffAgencyId="staffAgencyId"
:showImportBtn="showImportBtn" :ownerName="ownerName" :ownerPhone="ownerPhone" :rentFlag="rentFlag"
:purpose="purpose" :neighborHoodId="neighborHoodId" :buildingId="buildingId" :buildingUnitId="buildingUnitId"
:houseId="houseId" :remark="remark" :updateStartDate="updateStartDate" :updateEndDate="updateEndDate"
ref="ref_buildingTable" @refreshTree="refreshTree"></room-table>
<community-table v-if="selTreeObj.level !== 'building' &&
selTreeObj.level !== 'neighborHood' &&
!showRoomTable
" @toNextLevel="toNextLevel" :staffAgencyId="staffAgencyId" :ownerName="ownerName" :ownerPhone="ownerPhone"
:rentFlag="rentFlag" :purpose="purpose" :remark="remark" :updateStartDate="updateStartDate"
:updateEndDate="updateEndDate" ref="ref_communityTable" @refreshTree="refreshTree"></community-table>
</div>
</div>
</div>
@ -317,7 +216,7 @@ import nextTick from "dai-js/tools/nextTick";
import debounce from "lodash/debounce";
let loading; //
export default {
data () {
data() {
let endDisabledDate = (time) => {
//datareturn
let nowData = Date.now();
@ -441,8 +340,8 @@ export default {
treeIsOk: true,//
isShowTooltip:false,
tooltipTitle:null,
isShowTooltip: false,
tooltipTitle: null,
};
},
components: {
@ -451,9 +350,8 @@ export default {
buildTable,
roomTable,
},
async mounted () {
async mounted() {
this.searchHeight = this.$refs.ref_searchform.offsetHeight;
this.treeLoading = true;
await this.loadOrgData();
@ -469,20 +367,34 @@ export default {
});
}
this.treeLoading = false;
if (this.$route.query.param1 === 'zizhuM') {
this.rentFlag = '0';
} else if (this.$route.query.param1 === 'chuzuM') {
this.rentFlag = '1';
} else if (this.$route.query.param1 === 'xianzhiM') {
this.rentFlag = '2';
}
if (this.rentFlag !== '') {
this.handleSearch()
// console.log("this.rentFlag", this.rentFlag)
}
},
computed: {
rowHeight () {
rowHeight() {
return this.$store.state.inIframe
? this.clientHeight - 140 + this.iframeHeight + "px"
: this.clientHeight - 140 + "px";
},
treeHeight () {
treeHeight() {
return this.$store.state.inIframe
? this.clientHeight - 245 + this.iframeHeight + "px"
: this.clientHeight - 245 + "px";
},
...mapGetters(["clientHeight", "iframeHeight"]),
showIcons () {
showIcons() {
return function (data) {
if (data.level == "building") {
let arr = data.showNum.split("/");
@ -500,14 +412,14 @@ export default {
// filterText (val) {
// this.$refs.ref_tree.filter(val);
// },
updateStartDate () { }
updateStartDate() { }
},
methods: {
mouseOverNode(event){
mouseOverNode(event) {
var target = event.target;
let textLength = target.clientWidth;
let containerLength = target.scrollWidth;
if (textLength < containerLength) {
this.tooltipTitle = event.target.innerText;
this.isShowTooltip = false;
@ -515,7 +427,7 @@ export default {
this.isShowTooltip = true;
}
},
handleChangeV (val) {
handleChangeV(val) {
this.buildingId = "";
this.buildingUnitId = "";
this.houseId = "";
@ -524,17 +436,17 @@ export default {
// this.getHouseList();
},
handleChangeB (val) {
handleChangeB(val) {
this.buildingUnitId = "";
this.houseId = "";
this.getUniList();
// this.getHouseList();
},
handleChangeD () {
handleChangeD() {
this.houseId = "";
this.getHouseList();
},
async lazyLoadTree (node, resolve) {
async lazyLoadTree(node, resolve) {
const url = `/actual/base/communityBuilding/tree/nextTreeNode?id=${node.data.id}&level=${node.data.level}`;
const { data, code, msg } = await requestGet(url);
@ -550,7 +462,7 @@ export default {
}
// }
},
async getValiheList () {
async getValiheList() {
const { user } = this.$store.state;
if (!this.selGridId) {
this.selAgencyId = this.selAgencyId ? this.selAgencyId : user.agencyId;
@ -563,12 +475,10 @@ export default {
agencyId: this.selAgencyId,
isPage: false,
};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.optionsV = data;
this.neighborHoodId = "";
this.buildingId = "";
this.buildingUnitId = "";
@ -577,7 +487,7 @@ export default {
this.$message.error(msg);
}
},
async getBuildList () {
async getBuildList() {
const url = "/actual/base/communityBuilding/buildingoption";
let params = {
quartersId: this.neighborHoodId,
@ -594,7 +504,7 @@ export default {
}
},
//
async handleChangeSerch () {
async handleChangeSerch() {
this.startLoading();
this.$refs.ref_tree.$data.store.lazy = !this.filterText;
if (this.filterText.length > 0 && this.filterText != "") {
@ -620,7 +530,7 @@ export default {
}
this.endLoading();
},
startLoading () {
startLoading() {
loading = Loading.service({
lock: true, //
text: "正在加载……", //
@ -628,13 +538,13 @@ export default {
});
},
//
endLoading () {
endLoading() {
// clearTimeout(timer);
if (loading) {
loading.close();
}
},
async getUniList () {
async getUniList() {
const url = "/actual/base/communityBuildingUnit/unitoption";
// const url = "http://yapi.elinkservice.cn/mock/245/epmetuser/epidemicPrevention/page"
let params = {
@ -651,7 +561,7 @@ export default {
this.$message.error(msg);
}
},
getHouseList () {
getHouseList() {
let params = {
buildingId: this.buildingId,
unitId: this.buildingUnitId,
@ -671,7 +581,7 @@ export default {
});
},
handleSearch () {
handleSearch() {
console.log(this.selTreeObj)
this.showRoomTable = true;
this.$nextTick(() => {
@ -681,7 +591,7 @@ export default {
},
//
resetSearch () {
resetSearch() {
this.ownerName = "";
this.ownerPhone = "";
this.rentFlag = "";
@ -702,7 +612,7 @@ export default {
});
},
async loadOpenNode () {
async loadOpenNode() {
const url = "/gov/org/building/tree-ids";
let params = {};
@ -714,7 +624,7 @@ export default {
this.$message.error(msg);
}
},
async loadTree (isRefresh) {
async loadTree(isRefresh) {
const url = "/actual/base/communityBuilding/tree/initTree";
const { data, code, msg } = await requestGet(url);
if (code === 0) {
@ -738,7 +648,7 @@ export default {
}
},
handleTreeData (treeData) {
handleTreeData(treeData) {
for (let i in treeData) {
treeData[i].showIcon = false;
if (treeData[i].level === "building") {
@ -758,7 +668,7 @@ export default {
},
//
async loadOrgData () {
async loadOrgData() {
const url = "/gov/org/agency/maporg";
// const url = "http://yapi.elinkservice.cn/mock/245/gov/org/agency/maporg"
let params = {};
@ -775,7 +685,8 @@ export default {
}
},
async handleNodeClick (obj) {
async handleNodeClick(obj) {
if (!this.treeIsOk) {
setTimeout(() => {
this.handleNodeClick(obj);
@ -842,7 +753,7 @@ export default {
},
//
async refreshTree () {
async refreshTree() {
this.treeLoading = true;
await this.loadTree(this.selTreeObj.id);
this.$nextTick(() => {
@ -853,7 +764,7 @@ export default {
},
//
async toNextLevel (row, level) {
async toNextLevel(row, level) {
this.autoOpenArr = [];
@ -914,7 +825,7 @@ export default {
},
//
getTreeObj (obj) {
getTreeObj(obj) {
if (!obj.latitude) {
obj.latitude = this.centerPoint[0];
}
@ -926,13 +837,13 @@ export default {
},
filterNode (value, data) {
filterNode(value, data) {
if (!value) return true;
return data.label.indexOf(value) !== -1;
},
//
startLoading () {
startLoading() {
loading = Loading.service({
lock: true, //
text: "正在加载……", //
@ -940,7 +851,7 @@ export default {
});
},
//
endLoading () {
endLoading() {
// clearTimeout(timer);
if (loading) {
loading.close();
@ -959,23 +870,24 @@ export default {
.m-search ::v-deep .el-row {
margin-right: 0;
}
.g-main {
display: flex;
}
.scrollar {
margin-top: 30px;
/deep/
.el-tree--highlight-current
.el-tree-node.is-current
> .el-tree-node__content {
/deep/ .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
background: #e6f0ff;
border-radius: 2px;
}
/deep/ .el-tree-node:focus > .el-tree-node__content {
/deep/ .el-tree-node:focus>.el-tree-node__content {
color: #0056d6;
// background-color: #e6f0ff;
}
// /deep/ .el-tree-node__expand-icon {
// color: #0043c8;
// border: 1px solid #e1ecff;
@ -1036,20 +948,24 @@ export default {
0px 3px 6px -4px rgba(0, 0, 0, 0.12);
// border-radius: 5px;
overflow-y: hidden;
/deep/ .el-scrollbar__wrap {
overflow-x: hidden !important;
}
/deep/ .el-scrollbar__bar{
/deep/ .el-scrollbar__bar {
right: -2px;
}
//
/deep/ .el-input--medium .el-input__inner {
height: 32px;
background: rgba(0, 0, 0, 0.05);
border-radius: 4px;
}
}
.custom-tree-node {
flex: 1;
display: flex;
@ -1067,6 +983,7 @@ export default {
white-space: nowrap;
-webkit-line-clamp: 1;
}
.filter_tree {
overflow-x: auto;
// background-color: #f6f6f6;
@ -1077,6 +994,7 @@ export default {
// flex: 1;
width: calc(100% - 200px);
}
::v-deep .el-dialog__body {
padding: 0;
}

406
src/views/modules/base/community/roomTable.vue

@ -3,130 +3,74 @@
<div class="u-table-btn2">
<div class="u-table-btn2-left">
<!-- v-show="btnAuths.ic_house_add" -->
<el-button v-if="agencyObj.level === 'building' || source !== 'search'"
class="diy-button--blue"
icon="el-icon-plus"
size="small"
:disabled="addDisabled"
@click="handleAdd">新增房屋</el-button>
<el-button v-if="agencyObj.level === 'building' || source !== 'search'" class="diy-button--blue"
icon="el-icon-plus" size="small" :disabled="addDisabled" @click="handleAdd">新增房屋</el-button>
<div class="u-btn-upload"
v-if="showImportBtn">
<div class="u-btn-upload" v-if="showImportBtn">
<el-popover popper-class="btn-popper"
placement="bottom"
width="20"
trigger="hover">
<el-popover popper-class="btn-popper" placement="bottom" width="20" trigger="hover">
<div class="table-more-btn">
<!-- v-if="btnAuths.ic_house_import" -->
<el-upload ref="upload"
:multiple="false"
style="text-align: center"
:show-file-list="false"
:before-upload="beforeUpload"
action=""
accept=".xls,.xlsx"
:limit="1"
:on-exceed="handleExceed"
:http-request="uploadFile">
<el-button style=""
size="small"
type="text"
class="diy-button--other">导入房屋数据</el-button>
<el-upload ref="upload" :multiple="false" style="text-align: center" :show-file-list="false"
:before-upload="beforeUpload" action="" accept=".xls,.xlsx" :limit="1" :on-exceed="handleExceed"
:http-request="uploadFile">
<el-button style="" size="small" type="text" class="diy-button--other">导入房屋数据</el-button>
</el-upload>
</div>
<el-button size="small"
style="float:right"
class="diy-button--white"
slot="reference">导入<i class="el-icon-arrow-down el-icon--right"></i></el-button>
<el-button size="small" style="float:right" class="diy-button--white" slot="reference">导入<i
class="el-icon-arrow-down el-icon--right"></i></el-button>
</el-popover>
</div>
<!-- v-if="btnAuths.ic_house_export" -->
<el-button style="float: left; margin-left: 10px"
class="diy-button--white"
size="small"
@click="handleExport">导出</el-button>
<el-button style="float: left; margin-left: 10px" class="diy-button--white" size="small"
@click="handleExport">导出</el-button>
<!-- v-if="btnAuths.ic_house_batch_del" -->
<el-button style="float: left; margin-left: 10px"
class="diy-button--white"
size="small"
@click="deleteBatch">批量删除</el-button>
<el-button style="float: left; margin-left: 10px" class="diy-button--white" size="small"
@click="deleteBatch">批量删除</el-button>
</div>
<div>
<el-popover popper-class="btn-popper"
placement="bottom"
style="margin-left: 10px"
width="20"
trigger="hover">
<el-popover popper-class="btn-popper" placement="bottom" style="margin-left: 10px" width="20" trigger="hover">
<div class="table-more-btn">
<!-- v-if="btnAuths.ic_house_import" -->
<el-button :headers="$getElUploadHeaders()"
class="diy-button--other"
size="small"
type="text"
@click="handleExportModule('community')">下载小区模板</el-button>
<el-button :headers="$getElUploadHeaders()" class="diy-button--other" size="small" type="text"
@click="handleExportModule('community')">下载小区模板</el-button>
</div>
<div class="table-more-btn">
<!-- v-if="btnAuths.ic_house_import" -->
<el-button :headers="$getElUploadHeaders()"
class="diy-button--other"
size="small"
type="text"
@click="handleExportModule('building')">下载楼栋模板</el-button>
<el-button :headers="$getElUploadHeaders()" class="diy-button--other" size="small" type="text"
@click="handleExportModule('building')">下载楼栋模板</el-button>
</div>
<div class="table-more-btn">
<!-- v-if="btnAuths.ic_house_import" -->
<el-button :headers="$getElUploadHeaders()"
class="diy-button--other"
size="small"
type="text"
@click="handleExportModule('room')">下载房屋模板</el-button>
<el-button :headers="$getElUploadHeaders()" class="diy-button--other" size="small" type="text"
@click="handleExportModule('room')">下载房屋模板</el-button>
</div>
<!-- v-if="btnAuths.ic_house_export_yhyd" -->
<div class="table-more-btn">
<el-button style=""
class="diy-button--other"
size="small"
type="text"
:disabled="yihuyidangDisabled"
@click="handleExportYihuyidang()">导出一户一档</el-button>
<el-button style="" class="diy-button--other" size="small" type="text" :disabled="yihuyidangDisabled"
@click="handleExportYihuyidang()">导出一户一档</el-button>
</div>
<!-- btnAuths.ic_house_smart_import && -->
<div v-if="displayedBaobiaoBtn"
class="table-more-btn">
<el-button size="small"
class="diy-button--other"
type="text"
@click="reportForm">智能填报</el-button>
<div v-if="displayedBaobiaoBtn" class="table-more-btn">
<el-button size="small" class="diy-button--other" type="text" @click="reportForm">智能填报</el-button>
</div>
<el-button size="small"
style="float:right"
class="diy-button--white"
slot="reference">更多<i class="el-icon-arrow-down el-icon--right"></i></el-button>
<el-button size="small" style="float:right" class="diy-button--white" slot="reference">更多<i
class="el-icon-arrow-down el-icon--right"></i></el-button>
</el-popover>
</div>
</div>
<div class="m-table-item">
<el-table ref="ref_table"
:data="tableData"
v-loading="tableLoading"
@sort-change="handleSortOrderChange"
border
:height="tableHeight"
style="width: 100%"
@select-all="selectAll"
@selection-change="selectionChange">
<el-table-column type="selection"
:selectable="checkSelect"
width="55">
<el-table ref="ref_table" :data="tableData" v-loading="tableLoading" @sort-change="handleSortOrderChange" border
:height="tableHeight" style="width: 100%" @select-all="selectAll" @selection-change="selectionChange">
<el-table-column type="selection" :selectable="checkSelect" width="55">
</el-table-column>
<!-- <el-table-column fixed="left"
width="70"
@ -137,183 +81,84 @@
:index="indexMethod">
</el-table-column> -->
<el-table-column prop="houseNameShow"
header-align="left"
align="left"
label="房屋名称"
fixed="left"
min-width="160">
<el-table-column prop="houseNameShow" header-align="left" align="left" label="房屋名称" fixed="left"
min-width="160">
</el-table-column>
<el-table-column prop="neighborHoodName"
label="所属小区"
header-align="left"
align="left"
min-width="150">
<el-table-column prop="neighborHoodName" label="所属小区" header-align="left" align="left" min-width="150">
</el-table-column>
<el-table-column prop="buildingName"
label="所属楼栋"
header-align="left"
align="left"
width="90">
<el-table-column prop="buildingName" label="所属楼栋" header-align="left" align="left" width="90">
</el-table-column>
<el-table-column prop="unitNum"
label="单元号"
header-align="left"
align="left"
width="80">
<el-table-column prop="unitNum" label="单元号" header-align="left" align="left" width="80">
</el-table-column>
<el-table-column prop="doorName"
label="门牌号"
header-align="left"
align="left"
width="80">
<el-table-column prop="doorName" label="门牌号" header-align="left" align="left" width="80">
</el-table-column>
<el-table-column prop="houseType"
label="类型"
header-align="left"
align="left"
width="70">
<el-table-column prop="houseType" label="类型" header-align="left" align="left" width="70">
</el-table-column>
<el-table-column prop="purpose"
label="用途"
header-align="left"
align="left"
width="70">
<el-table-column prop="purpose" label="用途" header-align="left" align="left" width="70">
</el-table-column>
<el-table-column prop="rentFlag"
label="房屋状态"
header-align="left"
align="left"
width="90">
<el-table-column prop="rentFlag" label="房屋状态" header-align="left" align="left" width="90">
</el-table-column>
<el-table-column prop="ownerName"
label="房主姓名"
header-align="left"
align="left"
width="90">
<el-table-column prop="ownerName" label="房主姓名" header-align="left" align="left" width="90">
</el-table-column>
<el-table-column prop="ownerPhone"
label="联系方式"
header-align="left"
align="left"
width="110">
<el-table-column prop="ownerPhone" label="联系方式" header-align="left" align="left" width="110">
</el-table-column>
<el-table-column prop="ownerIdCard"
label="证件号"
header-align="left"
align="left"
width="170">
<el-table-column prop="ownerIdCard" label="证件号" header-align="left" align="left" width="170">
</el-table-column>
<el-table-column prop="remark"
label="备注"
header-align="left"
align="left"
width="170">
<el-table-column prop="remark" label="备注" header-align="left" align="left" width="170">
</el-table-column>
<el-table-column prop="sort"
sortable="custom"
min-width="100"
header-align="left"
align="left"
label="排序">
<el-table-column prop="sort" sortable="custom" min-width="100" header-align="left" align="left" label="排序">
<template slot-scope="scope">
<div @click="handleEditSort(scope.row)">
<span v-if="!scope.row.isChange">{{ scope.row.sort }}</span>
<!-- :precision="2" -->
<el-input-number v-else
@change="handleChangeSort(scope.row)"
v-model="scope.row.sort"
class="item_width_4"
size="small"
:min="0"
:max="9999"
label="描述文字"></el-input-number>
<el-input-number v-else @change="handleChangeSort(scope.row)" v-model="scope.row.sort"
class="item_width_4" size="small" :min="0" :max="9999" label="描述文字"></el-input-number>
</div>
</template>
</el-table-column>
<el-table-column label="操作"
fixed="right"
width="220"
header-align="center"
align="center"
class="operate">
<el-table-column label="操作" fixed="right" width="220" header-align="center" align="center" class="operate">
<template slot-scope="scope">
<!-- v-if="btnAuths.ic_house_view" -->
<el-button type="text"
class="div-table-button--blue"
size="small"
@click="handleDetail(scope.row)">查看</el-button>
<el-button type="text" class="div-table-button--blue" size="small"
@click="handleDetail(scope.row)">查看</el-button>
<!-- btnAuths.ic_house_update && -->
<el-button type="text"
class="div-table-button--blue"
size="small"
@click="handleEdit(scope.row)">编辑</el-button>
<el-button type="text" class="div-table-button--blue" size="small"
@click="handleEdit(scope.row)">编辑</el-button>
<!-- btnAuths.ic_house_del && -->
<el-button type="text"
class="div-table-button--blue"
size="small"
@click="handleDelete(scope.row)">删除</el-button>
<el-button type="text" class="div-table-button--blue" size="small"
@click="handleDelete(scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
<div>
<el-pagination @size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page.sync="pageNo"
:page-sizes="[20, 50, 100, 200]"
:page-size="pageSize"
layout="sizes, prev, pager, next, total"
:total="total">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="pageNo"
:page-sizes="[20, 50, 100, 200]" :page-size="pageSize" layout="sizes, prev, pager, next, total"
:total="total">
</el-pagination>
</div>
</div>
<!-- 修改弹出框 -->
<el-dialog :visible.sync="formShow"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="formTitle"
width="670px"
top="5vh"
class="dialog-h"
@closed="diaClose">
<room-form ref="ref_form"
@dialogCancle="addFormCancle"
@dialogOk="addFormOk"></room-form>
<el-dialog :visible.sync="formShow" :close-on-click-modal="false" :close-on-press-escape="false" :title="formTitle"
width="670px" top="5vh" class="dialog-h" @closed="diaClose">
<room-form ref="ref_form" @dialogCancle="addFormCancle" @dialogOk="addFormOk"></room-form>
</el-dialog>
<!-- 详情弹出框 -->
<el-dialog :visible.sync="detailShow"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="'查看房屋'"
width="820px"
top="5vh"
class="dialog-h"
@closed="detailFormCancle">
<el-dialog :visible.sync="detailShow" :close-on-click-modal="false" :close-on-press-escape="false" :title="'查看房屋'"
width="820px" top="5vh" class="dialog-h" @closed="detailFormCancle">
<!-- :view_real_data="btnAuths.ic_house_view_real_data" -->
<room-detail ref="ref_form_detail"
@diaDetailClose="detailFormCancle"></room-detail>
<room-detail ref="ref_form_detail" @diaDetailClose="detailFormCancle"></room-detail>
</el-dialog>
<el-dialog :visible.sync="diyDialog"
:close-on-click-modal="false"
:close-on-press-escape="false"
width="1150px"
title="导出模板"
top="5vh"
class="dialog-h">
<community-export-info v-if="diyDialog"
ref="ref_diy"
:list="exportList"
:search="{
formCode: 'community_info',
pageNo: pageNo,
pageSize: pageSize,
conditions:queryConditions
}"
:orgId="agencyObj.id"
@close="handleDiyClose"></community-export-info>
<el-dialog :visible.sync="diyDialog" :close-on-click-modal="false" :close-on-press-escape="false" width="1150px"
title="导出模板" top="5vh" class="dialog-h">
<community-export-info v-if="diyDialog" ref="ref_diy" :list="exportList" :search="{
formCode: 'community_info',
pageNo: pageNo,
pageSize: pageSize,
conditions: queryConditions
}" :orgId="agencyObj.id" @close="handleDiyClose"></community-export-info>
</el-dialog>
<baobiao ref="baobiao" />
</div>
@ -331,13 +176,13 @@ import util from "@/js/util";
let loading; //
export default {
data () {
data() {
return {
searchHeight: 190,//
source: "tree", //
importRoomLoading: false,
total: 0,
pageSize:window.localStorage.getItem('pageSize') || 20,
pageSize: window.localStorage.getItem('pageSize') || 20,
pageNo: 0,
sortType: "asc", //ascdesc
tableLoading: true,
@ -401,10 +246,9 @@ export default {
roomDetail,
communityExportInfo
},
async mounted () {
async mounted() {
this.updateBtnAuths();
this.getQueryConditions()
// this.displayedBaobiaoBtn = await this.$refs.baobiao.existsTemplate({
// elseParams: {
// categoryKeys: ["house_info"],
@ -413,7 +257,7 @@ export default {
// });
},
computed: {
tableHeight () {
tableHeight() {
console.log(this.searchHeight)
let height = this.searchHeight + 270
return this.$store.state.inIframe ? this.clientHeight - height + this.iframeHeight : this.clientHeight - height
@ -424,7 +268,7 @@ export default {
},
methods: {
//
updateBtnAuths () {
updateBtnAuths() {
let rot = this.$route;
if (Array.isArray(rot.meta.btns)) {
rot.meta.btns.forEach((item) => {
@ -433,7 +277,7 @@ export default {
}
},
reportForm () {
reportForm() {
let paramMap = {
pageSize: this.pageSize,
pageNo: this.pageNo,
@ -461,25 +305,25 @@ export default {
});
},
indexMethod (index) {
indexMethod(index) {
return index + 1;
},
handleSortOrderChange (value) {
handleSortOrderChange(value) {
this.sortType = value.order === "ascending" ? "asc" : "desc";
this.loadTable();
},
handleSortChange (value) {
handleSortChange(value) {
this.sortType = value.order === "ascending" ? "asc" : "desc";
this.loadTable();
},
handleEditSort (row) {
handleEditSort(row) {
if (!row.isChange) {
row.isChange = true;
}
},
async handleChangeSort (row, index) {
async handleChangeSort(row, index) {
// row.isChange = false
let params = {
@ -502,7 +346,7 @@ export default {
}
},
checkSelect (row, index) {
checkSelect(row, index) {
let isChecked = true;
// if (row.showBtn) {
// //
@ -513,9 +357,8 @@ export default {
return isChecked;
},
loadTreeFromSearch () { },
async loadTable (source, treeObj) {
loadTreeFromSearch() { },
async loadTable(source, treeObj) {
this.source = source;
this.tableLoading = true;
this.addDisabled = true
@ -528,7 +371,6 @@ export default {
//
this.agencyObj = treeObj;
}
if (this.agencyObj.level === "grid") {
this.agencyLevel = "grid";
} else if (this.agencyObj.level === "neighborHood") {
@ -541,7 +383,6 @@ export default {
// if (fromTree) {
// this.agencyObj = treeObj
// }
//
console.log(this.buildingId, '1111');
@ -563,7 +404,6 @@ export default {
buildingUnitId: this.buildingUnitId,
houseId: this.houseId,
};
const url = "/actual/base/communityHouse/listHouses";
const { data, code, msg } = await requestPost(url, params);
@ -596,30 +436,30 @@ export default {
this.tableLoading = false;
},
diaClose () {
diaClose() {
this.$refs.ref_form.resetData();
this.formShow = false;
},
handleDetail (row) {
handleDetail(row) {
this.lookResiId = row.resiId;
let { agencyId, gridId, gridName, houseId, houseName} = row
this.$store.dispatch('saveDataH', { agencyId, gridId, gridName, houseId, houseName});
this.$router.push({ name: 'house-huaxiang' });
this.$store.state.contentTabs = this.$store.state.contentTabs.map(item => {
if (item.name === "house-huaxiang") {
return { ...item, title: name };
}
return item;
});
let { agencyId, gridId, gridName, houseId, houseName } = row
this.$store.dispatch('saveDataH', { agencyId, gridId, gridName, houseId, houseName });
this.$router.push({ name: 'house-huaxiang' });
this.$store.state.contentTabs = this.$store.state.contentTabs.map(item => {
if (item.name === "house-huaxiang") {
return { ...item, title: name };
}
return item;
});
},
detailFormCancle () {
detailFormCancle() {
// this.$refs.ref_form_detail.diaDestroy()
this.detailShow = false;
},
handleAdd () {
handleAdd() {
this.formTitle = "新增房屋";
this.formShow = true;
this.$nextTick(() => {
@ -627,7 +467,7 @@ export default {
});
},
handleEdit (row) {
handleEdit(row) {
this.formTitle = "修改房屋";
this.formShow = true;
this.$nextTick(() => {
@ -635,24 +475,24 @@ export default {
});
},
addFormCancle () {
addFormCancle() {
this.formShow = false;
},
addFormOk () {
addFormOk() {
this.formShow = false;
this.loadTable();
this.$emit('refreshTree')
},
selectAll (selection) {
selectAll(selection) {
this.selection = selection;
},
selectionChange (selection) {
selectionChange(selection) {
this.selection = selection;
},
async handleDelete (row) {
async handleDelete(row) {
this.$confirm("确认删除?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
@ -674,7 +514,7 @@ export default {
});
},
deleteBatch () {
deleteBatch() {
if (this.selection.length > 0) {
this.$confirm("确认删除选择的房屋?", "提示", {
confirmButtonText: "确定",
@ -704,7 +544,7 @@ export default {
}
},
async deleteRoom (ids, forceDelete) {
async deleteRoom(ids, forceDelete) {
const url = "/actual/base/communityHouse/deleteCommunityInfoByIds";
let params = {
forceDelete: forceDelete,
@ -748,7 +588,7 @@ export default {
//
async handleExport () {
async handleExport() {
// let title = this.agencyObj.label;
// title = title + "";
@ -802,7 +642,7 @@ export default {
// );
await this.getExportList();
},
async getExportList (type) {
async getExportList(type) {
const url = "/oper/customize/icformitemgroup/list";
let params = {
formCode: "community_info",
@ -826,7 +666,7 @@ export default {
this.$message.error(msg);
}
},
async getQueryConditions () {
async getQueryConditions() {
let params = {
formCode: "community_info",
customerId: this.$store.state.user.customerId,
@ -849,11 +689,11 @@ export default {
this.$message.error(data.msg);
}
},
handleDiyClose () {
handleDiyClose() {
this.diyDialog = false;
},
//
download (data, fileName) {
download(data, fileName) {
if (!data) {
return;
}
@ -877,7 +717,7 @@ export default {
}
},
handleExportModule (type) {
handleExportModule(type) {
let title = ''
let url = ""
@ -910,7 +750,7 @@ export default {
},
//
handleExportYihuyidang () {
handleExportYihuyidang() {
this.yihuyidangDisabled = true;
let title = this.agencyObj.label;
title = title + "-一户一档";
@ -970,7 +810,7 @@ export default {
);
},
//
beforeUpload (file) {
beforeUpload(file) {
this.files = file;
const isText = file.type === "application/vnd.ms-excel";
@ -987,11 +827,11 @@ export default {
}
},
//
handleExceed (files, fileList) {
handleExceed(files, fileList) {
this.$message.warning(`当前限制选择 1 个文件,请删除后继续上传`);
},
async uploadFile () {
async uploadFile() {
if (this.fileName == "") {
this.$message.warning("请选择要上传的文件!");
return false;
@ -1045,7 +885,7 @@ export default {
);
},
showMessage (msg) {
showMessage(msg) {
this.$alert(msg, "操作结果", {
confirmButtonText: "关闭",
callback: (action) => {
@ -1055,18 +895,18 @@ export default {
});
},
handleSizeChange (val) {
handleSizeChange(val) {
this.pageSize = val;
this.pageNo = 1;
this.loadTable();
},
handleCurrentChange (val) {
handleCurrentChange(val) {
this.pageNo = val;
this.loadTable();
},
//
startLoading () {
startLoading() {
loading = Loading.service({
lock: true, //
text: "正在加载……", //
@ -1074,7 +914,7 @@ export default {
});
},
//
endLoading () {
endLoading() {
// clearTimeout(timer);
if (loading) {
loading.close();
@ -1082,7 +922,7 @@ export default {
},
},
watch: {
selection (val) {
selection(val) {
if (val.length > 0) {
this.showDeletBtn = true;
} else {
@ -1090,7 +930,7 @@ export default {
}
},
'$store.state.sidebarFold': {
handler (newVal, oldVal) {
handler(newVal, oldVal) {
if (newVal) {//
this.searchHeight = 155
@ -1160,7 +1000,7 @@ export default {
},
};
</script>
<style lang="scss" scoped >
<style lang="scss" scoped>
@import "@/assets/scss/modules/visual/communityManage.scss";
@import "@/assets/scss/modules/management/list-main.scss";
</style>

601
src/views/modules/base/nonIntResi/nonIntResi.vue

@ -0,0 +1,601 @@
<template>
<div class="g-main">
<div>
<div class="m-search">
<el-form
:inline="true"
:model="formData"
ref="ref_searchform"
:label-width="'105px'"
>
<el-form-item label="名称模糊查询">
<el-select
v-model="basicType"
class="u-item-width-service"
clearable
size="small"
>
<template>
<el-option
@click.native="handelClickBasicType"
:label="item.label"
:value="item.value"
v-for="(item, index) in basicInfoList"
:key="index"
>
</el-option>
</template>
</el-select>
</el-form-item>
<el-form-item
v-for="(item, index) in basicInfoList"
:key="index"
v-if="basicType == item.value"
>
<el-input
v-model="formData[item.value]"
class="u-item-width-service"
placeholder="请输入"
clearable
size="small"
>
</el-input>
</el-form-item>
<el-form-item label="性别">
<el-select
v-model="formData.gender"
placeholder="请输入"
size="small"
class="u-item-width-normal"
clearable
>
<el-option
v-for="item in genderList"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="居民年龄">
<el-input
v-model="formData.ageFrom"
@change="handleAgeChange"
class="u-item-width-daterange"
placeholder="请输入"
clearable
size="small"
>
</el-input>
<span class="u-data-tag"></span>
<el-input
v-model="formData.ageTo"
@change="handleAgeChange"
class="u-item-width-daterange u-data-tag"
placeholder="请输入"
clearable
size="small"
>
</el-input>
</el-form-item>
<el-row type="flex">
<el-col :span="24" align="right">
<el-button
style="margin-left: 30px"
size="small"
type="primary "
@click="handleSearch"
>查询</el-button
>
<el-button
style="margin-left: 10px"
is-plain
class="diy-button--white el-button--default"
size="small"
@click="resetSearch"
>重置</el-button
>
</el-col>
</el-row>
</el-form>
</div>
<div class="m-table">
<div class="div_btn">
<div class="div_btn_left">
<el-button
size="small"
@click="handleAdd"
type="primary"
icon="el-icon-plus"
>新增居民</el-button
>
</div>
<!-- <el-button
@click="handleExport"
type="primary"
size="small"
class="diy-button--white el-button--default"
>导出</el-button
> -->
<!-- <el-button
@click="onDeleteBatch"
style="margin: 0 10px"
size="small"
type="primary"
>
批量删除
</el-button> -->
</div>
<el-table
:data="tableData"
border
v-loading="tableLoading"
class="m-table-item"
style="width: 100%"
:height="maxTableHeight"
@selection-change="onMultiSelection"
>
<el-table-column
type="selection"
fixed="left"
align="center"
width="50"
/>
<el-table-column
prop="resiName"
align="center"
width="100"
label="姓名"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
prop="genderName"
align="center"
width="80"
label="性别"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
<span>{{
scope.row.gender
? scope.row.gender == "1"
? "男"
: scope.row.gender == "2"
? "女"
: "--"
: "--"
}}</span>
</template>
</el-table-column>
<el-table-column
prop="age"
align="center"
width="50"
label="年龄"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
prop="mobile"
align="center"
width="150"
label="联系电话"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
prop="idNum"
align="center"
width="200"
label="证件号"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
prop="homeFullName"
align="center"
width="100"
label="居住房屋"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
prop="resiCategoriesStr"
align="center"
label="居民分类"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
prop="partyFlag"
align="center"
width="100"
label="政治面貌"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
{{
scope.row.gender
? scope.row.partyFlag === 1
? "党员"
: scope.row.partyFlag === 2
? "共青团员"
: scope.row.partyFlag === 0
? "群众"
: "--"
: "--"
}}
</template>
</el-table-column>
<el-table-column
prop="synthesizeScore"
align="center"
width="100"
label="完整度得分"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
prop="updateTime"
align="center"
width="100"
label="最近更新时间"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
fixed="right"
label="操作"
align="center"
width="120"
>
<template slot-scope="scope">
<el-button
@click="handleLook(scope.row)"
type="text"
size="small"
>查看</el-button
>
<el-button @click="handleEdit(scope.row)" type="text" size="small"
>编辑</el-button
>
</template>
</el-table-column>
</el-table>
<div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page.sync="pageNo"
:page-sizes="[20, 50, 100, 200]"
:page-size="parseInt(pageSize)"
layout="sizes, prev, pager, next, total"
:total="total"
>
</el-pagination>
</div>
</div>
</div>
<el-dialog title="密码验证" :visible.sync="showCheckPassword">
<el-form
:model="checkPasswordFrom"
:rules="checkPasswordRulse"
ref="checkPasswordFrom"
>
<el-form-item label="密码" prop="password">
<el-input
v-model="checkPasswordFrom.password"
autocomplete="off"
type="password"
placeholder="请输入当前账号密码"
@keydown.native.enter="handelClickCheckPassword"
></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="showCheckPassword = false"> </el-button>
<el-button type="primary" @click="handelClickCheckPassword"
> </el-button
>
</div>
</el-dialog>
</div>
</template>
<script>
import { requestPost, requestGet } from "@/js/dai/request";
import nextTick from "dai-js/tools/nextTick";
import { genderList } from "@/js/columns/constants";
import { mapGetters } from "vuex";
import axios from "axios";
export default {
components: {},
data() {
return {
tableLoading: false,
user: {},
agencyId: "",
searchH: 170,
tableData: [],
genderList,
editUserId: "",
showCheckPassword:false,
formData: {
ageFrom: "",
ageTo: "",
resiName: "",
mobile: "",
idNum: "",
nativePlace: "",
gender: "",
},
pageNo: 1,
pageSize: window.localStorage.getItem("pageSize") || 20,
checkPasswordFrom: {
password: "",
},
checkPasswordRulse: {
password: [
{ required: true, message: "请输入密码", trigger: "blur" },
{
min: 6,
max: 18,
message: "长度在 6 到 18 个字符",
trigger: "blur",
},
],
},
total: 0,
basicType: "resiName",
basicInfoList: [
{
label: "姓名",
value: "resiName",
},
{
label: "联系电话",
value: "mobile",
},
{
label: "证件号",
value: "idNum",
},
],
};
},
computed: {
maxTableHeight() {
const h = this.clientHeight - this.searchH - 330 + this.iframeHeight;
const _h = this.clientHeight - 330 - this.searchH;
return this.$store.state.inIframe ? h : _h;
},
...mapGetters(["clientHeight", "iframeHeight"]),
},
watch: {
"$route.query"(newVal, oldVal) {
this.getTableData();
},
},
async created() {
// await this.getDicts();
},
mounted() {
console.log(this.$store.state);
this.user = this.$store.state.user;
this.agencyId = this.user.agencyId;
this.getTableData();
},
methods: {
// --------------------------------------------------------------------------------
async getDicts() {
try {
const requests = [
this.$http.post("sys/dict/data/nation", {
formCode: "resi_base_info",
}),
this.$http.post("sys/dict/data/education", {
formCode: "resi_base_info",
}),
];
const dictKeys = ["nationList", "educationList"]; //
const results = await Promise.all(requests);
results.forEach((result, index) => {
if (result.data.code === 0) {
this.dicts[dictKeys[index]].push(...result.data.data);
} else {
console.log(`获取${dictKeys[index]}失败: ${result.data.msg}`);
}
});
} catch (error) {
console.log("获取字典失败: ", error);
}
},
// ------------------------------------------------------------------------------
handelClickBasicType() {
this.formData.name = "";
this.formData.mobile = "";
this.formData.idNum = "";
this.formData.nativePlace = "";
this.formData.remark = "";
},
handleAgeChange() {
if (this.formData.ageStart && this.formData.ageEnd) {
if (this.formData.ageStart > this.formData.ageEnd) {
this.$message.warning("结束年龄不能小于开始年龄");
}
}
},
//
handleSearch(val) {
console.log(this.formData);
this.pageNo = 1;
this.getTableData();
},
async handleAdd() {
this.$router.push({ name: "add-resi" });
},
//
async handleLook(row) {
this.lookResiId = row.resiId;
let {
agencyId,
gridId,
gridName,
gender,
homeId,
homeName,
resiName,
resiId,
} = row;
this.$store.dispatch("saveData", {
agencyId,
gridId,
gridName,
gender,
homeId,
homeName,
name:resiName,
resiId,
});
this.$router.push({ name: "jumin-huaxiang" });
this.$store.state.contentTabs = this.$store.state.contentTabs.map(
(item) => {
if (item.name === "jumin-huaxiang") {
return { ...item, title: name };
}
return item;
}
);
},
//
async handleEdit(row) {
this.editUserId = row.resiId;
this.showCheckPassword = true;
},
//
async getTableData() {
this.tableLoading = true;
const url =
"/actual/base/residentIntegrity/resiCategoryStats/nonIntResiList";
const query = this.$route.query;
this.houseId = query.houseId;
const { pageSize, pageNo, formData } = this;
const { data, code, msg } = await requestGet(url, {
pageSize,
pageNo,
resultScopeType: "nonIntegrity",
resiCategory: this.$route.query.resiCategory || null, //
...formData,
});
data.list.forEach((item) => {
if (item.resiCategories) {
item.resiCategoriesStr = item.resiCategories
.map((item) => item.categoryName)
.join(",");
}
});
this.tableLoading = false;
if (code === 0) {
this.total = data.total || 0;
this.tableData = data.list;
} else {
this.$message.error(msg);
}
},
//
handelClickCheckPassword() {
this.$refs.checkPasswordFrom.validate(async (vali) => {
if (vali) {
const url = `/actual/base/residentBaseInfo/getResiUserInfo/${this.editUserId}`;
let parm = {
password: this.checkPasswordFrom.password,
};
const { data, code, msg } = await requestPost(url, parm);
if (code === 0) {
this.showCheckPassword = false;
this.$router.push({
name: "edit-resi",
query: { id: this.editUserId },
params: { idNum: data.idNum, mobile: data.mobile,name:data.name },
});
this.checkPasswordFrom.password = "";
} else {
this.$message.error(msg);
}
} else {
return false;
}
});
},
//
handleSizeChange(val) {
this.pageSize = val;
window.localStorage.setItem("pageSize", val);
this.getTableData();
},
//
handleCurrentChange(val) {
this.pageNo = val;
this.getTableData();
},
//
resetSearch() {
this.formData = {};
this.pageNo = 1;
this.getTableData();
},
//
onMultiSelection(rows) {
this.multiSelection = rows;
},
//
onDeleteBatch() {
if (this.multiSelection.length == 0) {
this.$message.warning("请先选中至少一项");
return;
}
this.$confirm("删除之后无法恢复,确认删除?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
this.cancelFuwu(this.multiSelection.map((e) => e.categorizedResiId));
})
.catch((err) => {
console.error(err);
this.$message.error("删除失败");
});
},
},
props: {},
};
</script>
<style lang="scss" scoped>
@import "@/assets/scss/buttonstyle.scss";
@import "@/assets/scss/modules/management/list-main.scss";
@import "@/assets/scss/modules/shequzhili/event-info.scss";
.div_btn_left > * {
margin-right: 10px;
}
</style>

563
src/views/modules/base/resi.vue

@ -1,29 +1,13 @@
<template>
<div class="g-main">
<div :style="{ height: rowHeight }" class="div_tree">
<el-input
placeholder="输入关键字进行过滤"
v-model="filterText"
@keydown.native.enter="handleChangeSerch()"
>
<el-input placeholder="输入关键字进行过滤" v-model="filterText" @keydown.native.enter="handleChangeSerch()">
</el-input>
<el-scrollbar :style="{ height: treeHeight }" class="scrollar">
<el-tree
ref="ref_tree"
v-loading="treeLoading"
class="filter_tree"
:data="treeData"
:props="defaultProps"
:highlight-current="true"
node-key="id"
:expand-on-click-node="false"
:filter-node-method="filterNode"
@node-click="handleNodeClick"
lazy
:auto-expand-parent="true"
:default-expanded-keys="autoOpenArr"
:load="lazyLoadTree"
>
<el-tree ref="ref_tree" v-loading="treeLoading" class="filter_tree" :data="treeData" :props="defaultProps"
:highlight-current="true" node-key="id" :expand-on-click-node="false" :filter-node-method="filterNode"
@node-click="handleNodeClick" lazy :auto-expand-parent="true" :default-expanded-keys="autoOpenArr"
:load="lazyLoadTree">
<div slot-scope="{ node, data }" class="custom-tree-node">
<!-- <img
v-if="showIcons(data)"
@ -35,7 +19,6 @@
margin-top: -3px;
"
/> -->
<!-- <span v-if="data.level==='building'&&!data.showIcon"
style="padding-left:20px;">{{ ' ' }}</span> -->
<!-- <span v-if="data.showIcon" :id="data.id"
@ -43,16 +26,11 @@
<span style="color: red">{{ data.showNum }}</span>
<span>{{ ")" }}</span>
</span> -->
<el-tooltip
:content="tooltipTitle"
:disabled="isShowTooltip"
placement="top"
effect="dark"
>
<span class="over-ellipsis" @mouseover="mouseOverNode($event)">
{{ node.label }}
</span>
</el-tooltip>
<el-tooltip :content="tooltipTitle" :disabled="isShowTooltip" placement="top" effect="dark">
<span class="over-ellipsis" @mouseover="mouseOverNode($event)">
{{ node.label }}
</span>
</el-tooltip>
<!-- <span :id="data.id">{{ data.label }}</span> -->
</div>
</el-tree>
@ -60,45 +38,20 @@
</div>
<section style="width: calc(100% - 200px)">
<div class="m-search">
<section
:class="
showSercahStatus ? 'm-form-box-height-auto' : 'm-form-box-height'
"
>
<resi-search
ref="myResiSearch"
@handleSearchFrom="handleSearchFrom"
/>
<section :class="showSercahStatus ? 'm-form-box-height-auto' : 'm-form-box-height'
">
<resi-search ref="myResiSearch" @handleSearchFrom="handleSearchFrom" />
</section>
<el-row class="resi-search">
<el-col :span="24">
<el-button
size="small"
type="primary"
@click="handleSearchFrom('search')"
>查询</el-button
>
<el-button
style="margin-left: 10px"
size="small"
plain
class="f-right5 diy-button--white"
@click="resetSearchForm"
>重置</el-button
>
<el-button
type="text"
size="small"
style="margin-left: 10px"
class="f-right5"
@click="showSercahStatus = !showSercahStatus"
>
<i
:class="
showSercahStatus ? 'el-icon-arrow-up' : 'el-icon-arrow-down'
"
></i>
<el-button size="small" type="primary" @click="handleSearchFrom('search')">查询</el-button>
<el-button style="margin-left: 10px" size="small" plain class="f-right5 diy-button--white"
@click="resetSearchForm">重置</el-button>
<el-button type="text" size="small" style="margin-left: 10px" class="f-right5"
@click="showSercahStatus = !showSercahStatus">
<i :class="showSercahStatus ? 'el-icon-arrow-up' : 'el-icon-arrow-down'
"></i>
{{ showSercahStatus ? "收起" : "展开" }}
</el-button>
</el-col>
@ -143,72 +96,50 @@
@click="reportForm"
class="diy-button--white">核对</el-button> -->
<el-button
style="margin-left: 10px"
v-if="btnAuths.ic_resi_batch_del"
size="small"
class="diy-button--add"
type="parimary"
@click="deleteBatch"
>批量删除</el-button
>
<el-button style="margin-left: 10px" v-if="btnAuths.ic_resi_batch_del" size="small" class="diy-button--add"
type="parimary" @click="deleteBatch">批量删除</el-button>
<!-- <el-button type="primary" size="small">下载人口模板</el-button> -->
</div>
</div>
<el-table
ref="ref_table"
class="m-table-item"
:data="tableData"
v-loading="tableLoading"
border
style="width: 100%"
:height="tableHeight"
@select-all="selectAll"
@selection-change="selectionChange"
>
<el-table ref="ref_table" class="m-table-item" :data="tableData" v-loading="tableLoading" border
style="width: 100%" :height="tableHeight" @select-all="selectAll" @selection-change="selectionChange">
<!-- :selectable="checkSelectable" -->
<el-table-column
type="selection"
fixed="left"
align="center"
width="50"
/>
<el-table-column
label="序号"
type="index"
fixed="left"
align="left"
width="50"
>
<el-table-column type="selection" fixed="left" align="center" width="50" />
<el-table-column label="序号" type="index" fixed="left" align="left" width="50">
</el-table-column>
<el-table-column
v-for="item in tableHeader"
:key="item.columnName"
:prop="item.columnName"
:label="item.label"
align="left"
:show-overflow-tooltip="true"
:width="item.width || ''"
>
<el-table-column v-for="item in tableHeader" :key="item.columnName" :prop="item.columnName"
:label="item.label" align="left" :show-overflow-tooltip="true" :width="item.width || ''">
<template slot-scope="scope">
<a
v-if="item.columnName == 'NAME' && btnAuths.ic_resi_view"
class="name-a"
>
<a v-if="item.columnName == 'NAME' && btnAuths.ic_resi_view" class="name-a">
{{ handleFilterSpan(scope.row, item) }}
</a>
<div v-else-if="item.columnName == 'gender'">
{{
scope.row.gender == null
? "--"
: scope.row.gender == 1
? "男"
: scope.row.gender == 2
? "女"
: "--"
}}
</div>
<div v-else-if="item.columnName == 'nationality'">
{{
scope.row.gender == null
? "--"
: scope.row.gender == 1
? "男"
: scope.row.gender == 2
? "女"
: "--"
? ((1 - scope.row.nationality)*100).toFixed(2) + '%'
: ((1 - scope.row.nationality)*100).toFixed(2) + '%'
}}
</div>
<div v-else-if="item.columnName == 'gridName'">
<template>
<div class="resiCategoryInfoBox">
@ -234,84 +165,44 @@
<template v-if="scope.row.home">
<div>
{{
scope.row.home.resiHouseRel != null
? scope.row.home.resiHouseRel == 0
? "自住"
: scope.row.home.resiHouseRel == 1
? "租住"
: ""
: ""
}}
scope.row.home.resiHouseRel != null
? scope.row.home.resiHouseRel == 0
? "自住"
: scope.row.home.resiHouseRel == 1
? "租住"
: ""
: ""
}}
</div>
</template>
</div>
<span v-else>{{ handleFilterSpan(scope.row, item) }}</span>
</template>
</el-table-column>
<el-table-column
fixed="right"
label="操作"
align="center"
width="200"
>
<el-table-column fixed="right" label="操作" align="center" width="200">
<template slot-scope="scope">
<el-button
v-if="btnAuths.ic_resi_view"
type="text"
size="small"
@click="handleLook(scope.row)"
>查看</el-button
>
<el-button v-if="btnAuths.ic_resi_view" type="text" size="small"
@click="handleLook(scope.row)">查看</el-button>
<template v-if="filterEdit(scope.row.agencyId)">
<el-button
v-if="btnAuths.ic_resi_update"
style="margin-right: 10px"
@click="handelCLickShowCheckPassword(scope.row)"
size="small"
type="text"
>编辑</el-button
>
<el-popconfirm
v-if="btnAuths.ic_resi_del"
title="删除之后无法回复,确认删除?"
@onConfirm="handleDel(scope.row)"
>
<el-button size="small" type="text" slot="reference"
>删除</el-button
>
<el-button v-if="btnAuths.ic_resi_update" style="margin-right: 10px"
@click="handelCLickShowCheckPassword(scope.row)" size="small" type="text">编辑</el-button>
<el-popconfirm v-if="btnAuths.ic_resi_del" title="删除之后无法回复,确认删除?" @onConfirm="handleDel(scope.row)">
<el-button size="small" type="text" slot="reference">删除</el-button>
</el-popconfirm>
<el-dropdown
trigger="click"
style="margin-left: 10px"
@command="(command) => handelRegister(command, scope.row)"
>
<el-button
class="div-table-button--blue"
size="small"
type="text"
style="font-size: 10px"
>
</el-button
>
<el-dropdown trigger="click" style="margin-left: 10px"
@command="(command) => handelRegister(command, scope.row)">
<el-button class="div-table-button--blue" size="small" type="text" style="font-size: 10px">
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item
v-if="false && btnAuths.ic_resi_change_rec"
command="bgjl"
>变更记录</el-dropdown-item
>
<el-dropdown-item
v-if="btnAuths.ic_resi_update"
command="swdj"
>死亡登记</el-dropdown-item
>
<el-dropdown-item
v-if="btnAuths.ic_resi_update"
command="qcdj"
>迁出登记</el-dropdown-item
>
<el-dropdown-item v-if="false && btnAuths.ic_resi_change_rec" command="bgjl">变更记录</el-dropdown-item>
<el-dropdown-item v-if="btnAuths.ic_resi_update" command="swdj">死亡登记</el-dropdown-item>
<el-dropdown-item v-if="btnAuths.ic_resi_update" command="qcdj">迁出登记</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template>
@ -321,30 +212,17 @@
<div class="div-flex">
<div class="m-page">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page.sync="currentPage"
:page-sizes="[20, 50, 100, 200]"
:page-size="pageSize"
layout="sizes, prev, pager, next, total"
:total="total"
>
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page.sync="currentPage" :page-sizes="[20, 50, 100, 200]" :page-size="pageSize"
layout="sizes, prev, pager, next, total" :total="total">
</el-pagination>
</div>
</div>
</div>
</section>
<!-- 变更记录 -->
<el-dialog
:visible.sync="changeRecordShow"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="'变更记录'"
width="1150px"
top="5vh"
@closed="diaClose"
>
<el-dialog :visible.sync="changeRecordShow" :close-on-click-modal="false" :close-on-press-escape="false"
:title="'变更记录'" width="1150px" top="5vh" @closed="diaClose">
<resi-change-record ref="ref_changerecord"></resi-change-record>
</el-dialog>
@ -352,56 +230,26 @@
<baobiao ref="baobiao" />
<!-- 迁出登记 -->
<el-dialog
:visible.sync="tranferShow"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="'迁出登记'"
width="562px"
top="5vh"
class="dialog-h"
@closed="diaClose"
>
<resi-change-transfer
ref="ref_change_transfer"
@dialogCancle="transferClose"
></resi-change-transfer>
<el-dialog :visible.sync="tranferShow" :close-on-click-modal="false" :close-on-press-escape="false" :title="'迁出登记'"
width="562px" top="5vh" class="dialog-h" @closed="diaClose">
<resi-change-transfer ref="ref_change_transfer" @dialogCancle="transferClose"></resi-change-transfer>
</el-dialog>
<!-- 死亡登记 -->
<el-dialog
:visible.sync="deathShow"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="'死亡登记'"
width="620px"
top="5vh"
class="dialog-h"
@closed="diaClose"
>
<el-dialog :visible.sync="deathShow" :close-on-click-modal="false" :close-on-press-escape="false" :title="'死亡登记'"
width="620px" top="5vh" class="dialog-h" @closed="diaClose">
<resideath-add ref="ref_death" @dialogCancle="deathClose"></resideath-add>
</el-dialog>
<el-dialog title="密码验证" :visible.sync="showCheckPassword">
<el-form
:model="checkPasswordFrom"
:rules="checkPasswordRulse"
ref="checkPasswordFrom"
>
<el-form :model="checkPasswordFrom" :rules="checkPasswordRulse" ref="checkPasswordFrom">
<el-form-item label="密码" prop="password">
<el-input
v-model="checkPasswordFrom.password"
autocomplete="off"
type="password"
placeholder="请输入当前账号密码"
@keydown.native.enter="handelClickCheckPassword"
></el-input>
<el-input v-model="checkPasswordFrom.password" autocomplete="off" type="password" placeholder="请输入当前账号密码"
@keydown.native.enter="handelClickCheckPassword"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="showCheckPassword = false"> </el-button>
<el-button type="primary" @click="handelClickCheckPassword"
> </el-button
>
<el-button type="primary" @click="handelClickCheckPassword"> </el-button>
</div>
</el-dialog>
</div>
@ -477,6 +325,8 @@ export default {
conditions: [],
activeName: "",
tableData: [],
tableDataTow: [],
valueb: '',
searchList: [],
treeData: [],
@ -509,6 +359,7 @@ export default {
// { columnName: "agencyName", label: "", width: 150 },
{ columnName: "idTypeName", label: "证件类型", width: 80 },
{ columnName: "idNum", label: "证件号", width: 170 },
{ columnName: "nationality", label: "信息完整度", width: 95 },
{ columnName: "categoryNames", label: "居民分类" },
{ columnName: "nationalityName", label: "国籍", width: 50 },
{ columnName: "nationName", label: "民族", width: 50 },
@ -548,8 +399,8 @@ export default {
category: this.$route.query.category,
searchForm: {},
isShowTooltip:false,
tooltipTitle:null,
isShowTooltip: false,
tooltipTitle: null,
};
},
@ -595,15 +446,15 @@ export default {
});
this.handleSearchFrom();
},
activated(){
activated() {
this.handleSearchFrom();
},
methods: {
mouseOverNode(event){
mouseOverNode(event) {
var target = event.target;
let textLength = target.clientWidth;
let containerLength = target.scrollWidth;
console.log(textLength,containerLength);
console.log(textLength, containerLength);
if (textLength < containerLength) {
this.tooltipTitle = event.target.innerText;
this.isShowTooltip = false;
@ -647,35 +498,153 @@ export default {
});
},
handleSearchFrom(type) {
// console.log("this.$route.query.param1", this.$route.query.param1);
this.valueb = this.$route.query.param1;
// 使
const { categoryKey, agencyId, level } = this.$refs.myResiSearch.form;
//
let _obj = JSON.parse(JSON.stringify(this.$refs.myResiSearch.form));
// categoryKey
if (Array.isArray(categoryKey) && categoryKey.length) {
_obj.categoryKey = categoryKey.join(",");
} else {
_obj.categoryKey = "";
console.log('213', _obj)
switch (this.valueb) {
case '党员':
_obj.partyFlag = 1
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '残疾人':
_obj.healthStatus.push('DISABILITY_FLAG');
// _obj.integrityScoreFrom = parseInt(0)
// _obj.integrityScoreTo = parseInt(60)
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '退役军人':
_obj.attentionCrowds.push('VETERAN_FLAG');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
_obj.partyFlag = 1;
this.getTableData(_obj);
break;
case '失业人员':
_obj.careerStatus = 0
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '低保人员':
_obj.attentionCrowds.push('SUBSISTENCE_ALLOW');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '保障房人员':
_obj.attentionCrowds.push('ENSURE_HOUSE_FLAG');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '特殊人员':
_obj.attentionCrowds.push('ENSURE_HOUSE_FLAG');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '大病人员':
_obj.healthStatus.push('SERIOUS_ILLNESS_F');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '慢病人员':
_obj.healthStatus.push('CHRONIC_DISEASE_F');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '老年人':
_obj.attentionCrowds.push('OLD_PEOPLE_FLAG');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
case '特扶人员':
_obj.attentionCrowds.push('SPECIAL_SUPPORT_F');
_obj.integrityScoreFrom = 0
_obj.integrityScoreTo = 60
this.getTableData(_obj);
break;
default:
// categoryKey
if (Array.isArray(categoryKey) && categoryKey.length) {
_obj.categoryKey = categoryKey.join(",");
} else {
_obj.categoryKey = "";
}
// agencyId
if (Array.isArray(agencyId) && agencyId.length) {
_obj.agencyId = agencyId[agencyId.length - 1];
} else {
_obj.agencyId = "";
}
_obj.level = level || "";
_obj.orgType = level || "";
_obj = { ..._obj, ...this.searchAgencyObj };
if (type) {
this.currentPage = 1;
}
console.log("this.valueb", _obj)
this.getTableData(_obj);
this.searchForm = _obj;
// form
this.$refs.myResiSearch.form.categoryKey = categoryKey;
this.$refs.myResiSearch.form.agencyId = agencyId;
}
// //
// if (this.valueb == '') {
// _obj.partyFlag = 1
// this.getTableData(_obj);
// // console.log("this.valueb",this.valueb)
// } if (this.valueb == '') {
// _obj.healthStatus.push('DISABILITY_FLAG');
// this.getTableData(_obj);
// } if (this.valueb == '退') {
// _obj.attentionCrowds.push('VETERAN_FLAG');
// _obj.partyFlag = 1
// this.getTableData(_obj);
// }
// else {
// // categoryKey
// if (Array.isArray(categoryKey) && categoryKey.length) {
// _obj.categoryKey = categoryKey.join(",");
// } else {
// _obj.categoryKey = "";
// }
// // agencyId
// if (Array.isArray(agencyId) && agencyId.length) {
// _obj.agencyId = agencyId[agencyId.length - 1];
// } else {
// _obj.agencyId = "";
// }
// _obj.level = level || "";
// _obj.orgType = level || "";
// _obj = { ..._obj, ...this.searchAgencyObj };
// if (type) {
// this.currentPage = 1;
// }
// console.log("this.valueb", _obj)
// this.getTableData(_obj);
// this.searchForm = _obj;
// // form
// this.$refs.myResiSearch.form.categoryKey = categoryKey;
// this.$refs.myResiSearch.form.agencyId = agencyId;
// }
// agencyId
if (Array.isArray(agencyId) && agencyId.length) {
_obj.agencyId = agencyId[agencyId.length - 1];
} else {
_obj.agencyId = "";
}
_obj.level = level || "";
_obj.orgType = level || "";
_obj = { ..._obj, ...this.searchAgencyObj };
if (type) {
this.currentPage = 1;
}
this.getTableData(_obj);
this.searchForm = _obj;
// form
this.$refs.myResiSearch.form.categoryKey = categoryKey;
this.$refs.myResiSearch.form.agencyId = agencyId;
},
//
// checkSelectable (row, index) {
@ -1018,7 +987,7 @@ export default {
this.$router.push({
name: "edit-resi",
query: { id: this.editUserId },
params: { idNum: data.idNum, mobile: data.mobile,name:data.name },
params: { idNum: data.idNum, mobile: data.mobile, name: data.name, nationality: data.nationality },
});
this.checkPasswordFrom.password = "";
} else {
@ -1065,10 +1034,12 @@ export default {
"/actual/base/residentBaseInfo/page",
params
);
// console.log("bubububuhbu", data)
this.tableLoading = false;
if (data.code === 0) {
this.total = data.data.total;
this.tableData = data.data.list;
// console.log("", this.tableDataTow)
} else {
this.$message.error(data.msg);
}
@ -1174,7 +1145,7 @@ export default {
this.autoOpenArr.push(data.id);
if (!isRefresh && data) {
this.selTreeObj = data;
}
} else {
this.$message.error(msg);
@ -1203,7 +1174,7 @@ export default {
this.handleSearchFrom("type");
}
},
},
watch: {
$route: {
@ -1234,9 +1205,11 @@ export default {
<style lang="scss" scoped>
@import "@/assets/scss/modules/management/list-main.scss";
@import "@/assets/scss/buttonstyle.scss";
.g-main {
display: flex;
}
.div_tree {
margin: 7px 8px 7px 7px;
width: 200px;
@ -1246,32 +1219,36 @@ export default {
0px 3px 6px -4px rgba(0, 0, 0, 0.12);
// border-radius: 5px;
overflow-y: hidden;
.scrollar{
.scrollar {
margin-top: 30px;
}
/deep/ .el-scrollbar__wrap {
overflow-x: hidden !important;
}
/deep/ .el-scrollbar__bar{
/deep/ .el-scrollbar__bar {
right: -2px;
}
.custom-tree-node {
flex: 1;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 14px;
overflow: hidden;
}
.over-ellipsis {
display: block;
width: 140PX;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
-webkit-line-clamp: 1;
}
.custom-tree-node {
flex: 1;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 14px;
overflow: hidden;
}
.over-ellipsis {
display: block;
width: 140PX;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
-webkit-line-clamp: 1;
}
//
/deep/ .el-input--medium .el-input__inner {
@ -1279,10 +1256,11 @@ export default {
background: rgba(0, 0, 0, 0.05);
border-radius: 4px;
}
// flex: 0 0 280px;
background: #ffffff;
box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.08),
0px 3px 6px -4px rgba(0, 0, 0, 0.12);
0px 3px 6px -4px rgba(0, 0, 0, 0.12);
// border-radius: 5px;
overflow-y: hidden;
}
@ -1308,6 +1286,7 @@ export default {
}
.tabs-other-info {
// ::v-deep .el-tabs__nav-wrap::after,
::v-deep .el-tabs__active-bar_active {
background-color: #0055d7;

441
src/views/modules/home/index.vue

@ -4,10 +4,9 @@
<div class="g-row-left">
<div class="m-box m-search">
<div class="wrap">
<div class="title">
<!-- <div class="title">
<span>社区查询</span>
</div>
</div> -->
<div class="tabs">
<div :class="{ 'z-on': searchData.type == 'jumin' }" @click="searchDataTab('jumin')">查居民</div>
<div :class="{ 'z-on': searchData.type == 'fangwu' }" @click="searchDataTab('fangwu')">查房屋</div>
@ -16,7 +15,8 @@
<div class="search">
<div class="search-input">
<div class="input">
<input type="text" :placeholder="typePlaceholder[searchData.type]" v-model="searchData.searchKey" @keyup.enter="handleClickSearchBtn" />
<input type="text" :placeholder="typePlaceholder[searchData.type]" v-model="searchData.searchKey"
@keyup.enter="handleClickSearchBtn" />
<div class="close-btn" v-if="searchData.searchKey != ''" @click="searchData.searchKey = ''">
<img src="@/assets/img/shequ/close.png" />
@ -26,121 +26,120 @@
</div>
</div>
</div>
<div class="mewq">
<div class="boxss">
<div style="margin-top: 10px;">
<span style="color: #2683DB; font-size: 25px;">{{ pandectData.totalResidents }}</span>
<br>
<span style="color: #858585; font-size: 12px;">居民总数</span>
</div>
</div>
<div class="boxss">
<div style="margin-top: 10px;">
<span style="color: #2683DB; font-size: 25px;">{{ pandectData.permanentResiCount }}</span>
<br>
<span style="color: #858585; font-size: 12px;">常住人口</span>
</div>
</div>
<div class="boxss">
<div style="margin-top: 10px;">
<span style="color: #2683DB; font-size: 25px;">{{ pandectData.floatingResiCount }}</span>
<br>
<span style="color: #858585; font-size: 12px;">流动人口</span>
</div>
</div>
<div class="boxss">
<div style="margin-top: 10px;" @click="jumpToHouse()">
<span style="color: #2683DB; font-size: 25px;">{{ pandectData.homeCount }}</span>
<br>
<span style="color: #858585; font-size: 12px;">房屋总数</span>
</div>
</div>
<div class="boxss" @click="jumpToHouse('zizhuM')">
<div style="margin-top: 10px;">
<span style="color: #2683DB; font-size: 25px;">{{ pandectData.selfStay }}</span>
<br>
<span style="color: #858585; font-size: 12px;">自住房屋</span>
</div>
</div>
<div class="boxss" @click="jumpToHouse('chuzuM')">
<div style="margin-top: 10px;">
<span style="color: #2683DB; font-size: 25px;">{{ pandectData.rentOut }}</span>
<br>
<span style="color: #858585; font-size: 12px;">出租房屋</span>
</div>
</div>
<div class="boxss" @click="jumpToHouse('xianzhiM')">
<div style="margin-top: 10px;">
<span style="color: #2683DB; font-size: 25px;">{{ pandectData.vacantHouse }}</span>
<br>
<span style="color: #858585; font-size: 12px;">闲置房屋</span>
</div>
</div>
</div>
</div>
<div class="m-pan m-box">
<div class="header">
<!-- <div class="header">
<img src="@/assets/images/index/title-icon-sqzl.png" />
<span>组织总览</span>
</div>
</div> -->
<div class="flex_box">
<div class="header">
<div class="newqsa"><span>居民分类信息不完整数量统计</span></div>
<!-- <img src="@/assets/images/index/title-icon-zntb.png" /> -->
</div>
<div class="cnt">
<div class="cnt-left">
<div class="subtitle">
<img src="@/assets/images/index/i-sqjj.png"/>
<span>{{agencyLevel!='district'?agencyLevel=='street'?'街道':agencyLevel=='community'?'社区':agencyLevel=='grid'?'网格':'组织':'组织'}}简介 </span>
</div>
<p>
{{ pandectData.deptName }}<span v-if="pandectData.gridCount">划分为 <b>{{
pandectData.underCount
}}</b> <b>{{
pandectData.underName
}}</b> </span> 现有房屋 <b>{{ pandectData.homeCount }}</b> 自住房屋 <b>{{
pandectData.selfStay
}}</b> 出租房屋 <b>{{
pandectData.rentOut
}}</b> 闲置房屋 <b>{{
pandectData.vacantHouse
}}</b> 现有居民 <b>{{ pandectData.resiCount }}</b> <b>{{
pandectData.totalResidents
}}</b> 其中常住人口 <b>{{ pandectData.permanentResiCount }}</b> 流动人口 <b>{{
pandectData.floatingResiCount
}}</b> 各类群体分布如下
</p>
<div class="subtitle">
<img src="@/assets/images/index/i-fxjg.png" />
<span>分析结果</span>
</div>
<!-- 树状图 -->
<div class="echart" id="myBarchart" style="width: 100%; height: 100%;"></div>
<!-- 树状图end -->
</div>
</div>
</div>
<p class="hint" v-if="resiCategory.list.length > 0">
根据数据分析结果建议重点关注
<b>{{ resiCategory.list[0].name }}{{ resiCategory.list[1].name }}{{ resiCategory.list[2].name }}</b>
三类群体开展相关的社区服务和活动
</p>
</div>
<el-tabs v-model="activeName" style="width: calc(100% - 240px - 40px); margin-left: auto">
<el-tab-pane label="居民分类统计" name="resi">
<div class="cnt-right">
<div class="list">
<div class="item" @click="handleClickCategory(item)" :key="item.code" v-for="(item, index) in resiCategory.list">
<div>{{ ("0" + (index + 1)).substr(-2) }}.</div>
<div class="item-name">
{{ item.name }}
</div>
<div class="item-div"></div>
<div class="item-count">{{ item.count }}</div>
<div class="item-progress">
<b
:style="{
width: item.per + '%',
}"></b>
</div>
<div class="item-per">{{ item.per }} %</div>
</div>
</div>
</div>
</el-tab-pane>
<!-- <el-tab-pane label="智能预测"
name="zhineng">
<div class="cnt-right">
<div class="list">
<div class="item" :key="item.code" v-for="(item, index) in znycCategory.list">
<div>{{ ("0" + (index + 1)).substr(-2) }}.</div>
<div class="item-name">
{{ item.name }}
</div>
<div class="item-div"></div>
<div class="item-count">{{ item.count }}</div>
<div class="item-progress">
<b
:style="{
width: item.per + '%',
}"></b>
</div>
<div class="item-per">{{ item.per }} %</div>
</div>
</div>
</div>
</el-tab-pane> -->
</el-tabs>
<div class="m-box m-tb">
<div class="wrap">
<div class="header">
<div class="newqsa"><span>不满意事项(月度)趋势分析</span></div>
<!-- <img src="@/assets/images/index/title-icon-zntb.png" /> -->
</div>
</div>
<!-- <div class="more">更多></div> -->
<div class="cnt">
<div id="my_chart" style="width: 100%; height: 230px; position: relative; top: -30px"></div>
</div>
</div>
</div>
<div class="g-row-right">
<div class="g-row-right" style="margin-right: 20px;">
<div class="m-box m-tx">
<div class="header">
<img src="@/assets/images/index/title-icon-zntx.png" />
<span>智能提醒</span>
<div class="newqsa"><span>消息提醒</span></div>
<!-- <img src="@/assets/images/index/title-icon-zntx.png" /> -->
</div>
<div class="more" @click="toNoticePage">更多></div>
<div class="cnt" v-if="noticeData.length > 0">
<div @click="handleClickNotice(item)" class="item" :key="'notice' + item.targetId + index" v-for="(item, index) in noticeData">
<div class="item_left">
<i class="i-tag" v-if="item.readFlag == 1">已读</i>
<i class="i-tag" v-else>未读</i>
</div>
<div class="cnt" v-if="noticeData.length > 0" style="margin-top: 0px;">
<div @click="handleClickNotice(item)" class="item" :key="'notice' + item.targetId + index"
v-for="(item, index) in noticeData">
<div class="item_right">
<div class="item-date">
{{ item.createdTime }}
</div>
<div class="item-title">
{{ item.content }}
<div class="item-title"
style="white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 450px;">
<img v-if="index === 0" class="thumbnail_1" referrerpolicy="no-referrer"
src="https://lanhu.oss-cn-beijing.aliyuncs.com/psjidpevo98fb607sd028bliakr139r25k82b2fbda-8291-4fe3-b190-bfe723a10036" />{{
item.content }}
</div>
</div>
<div class="item_left">
<i class="i-tag" v-if="item.readFlag == 1">已读</i>
<i class="i-tag" v-else>未读</i>
</div>
</div>
</div>
<div class="cnt" v-else>
<div class="empty">
<img src="~@/assets/images/shuju/renfang/index/empty.png" />
@ -148,17 +147,44 @@
</div>
</div>
</div>
<div class="m-box m-tb">
<div class="wrap">
<div class="header">
<img src="@/assets/images/index/title-icon-zntb.png" />
<span>不满意事项月度趋势分析</span>
</div>
</div>
<!-- <div class="more">更多></div> -->
<div class="cnt">
<div id="my_chart" style="width: 100%; height: 230px; position: relative; top: -10px"></div>
<div class="m-box m-tx" style="position: relative;">
<div class="noe-text"> <span style="margin-top: 10px;">居民分类更新情况</span> <span class="update-settings"
style="margin-top: 10px;" v-show="showAll" @click="jumpToJuMin()"><img referrerpolicy="no-referrer"
src="https://lanhu.oss-cn-beijing.aliyuncs.com/pskhmf0717eflwg54wn73s6spnsg6u48r0f69e94b-2bc8-4156-8330-902087b72e0b" />更新设置</span>
</div>
<el-table :data="tableList" style="width: 100%;margin-top:26px;overflow-y: scroll;" :height="maxTableHeight" border :cell-style="columnbackgroundStyle" class="m-table-item">
<el-table-column label="居民类别" align="center" width="105">
<template slot-scope="scope">
<span style="color:#989898">{{scope.row.residentCategoryName}}</span>
</template>
</el-table-column>
<el-table-column label="总人数" width="105" align="center">
<template slot-scope="scope">
<span style="color:#006fd6">{{scope.row.total}}</span>
</template>
</el-table-column>
<el-table-column label="分类信息不完整数" align="center" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span style="color:#ff1200;cursor: pointer;" @click="handelCLickJump(scope.row)">{{scope.row.nonIntegratedNum}}</span>
</template>
</el-table-column>
<el-table-column label="更新负责人" :show-overflow-tooltip="true" align="center" v-if="showAll">
<template slot-scope="scope">
<span style="color:#ff1200;">{{scope.row.userName}}</span>
</template>
</el-table-column>
<el-table-column label="更新周期" align="center" width="105">
<template slot-scope="scope">
<span style="color:#989898;">{{scope.row.updatePeriod?scope.row.updatePeriod =='month'?'每自然月':scope.row.updatePeriod =='halfMonth'?'每半自然月':scope.row.updatePeriod =='week'?'每周':'':''}}</span>
</template>
</el-table-column>
<el-table-column label="更新人数" align="center" width="105">
<template slot-scope="scope">
<span style="color:#006fd6;">{{scope.row.updateResiNum}}</span><span style="color:#989898;">({{scope.row.updatePeriodName?scope.row.updatePeriodName:'--'}})</span>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
@ -183,6 +209,7 @@ export default {
type: "jumin",
searchKey: "",
},
showAll: false,
typePlaceholder: {
jumin: "请输入姓名或联系电话或证件号",
@ -195,6 +222,18 @@ export default {
total: "",
list: [],
},
tableList: [
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
// { shenfen: '', zongNumber: '10', noAllNuber: '1', fuzeren: '', zhouqi: '1', addNum: '1' },
],
znycCategory: {
loading: false,
total: "",
@ -215,19 +254,45 @@ export default {
floatingResiCount: "",
permanentResiCount: "",
},
noticeData: [],
activeName: "resi",
myChart: {},
agencyLevel:'',
myBarchart:{},
agencyLevel: '',
yData: [
// {
// value: 720,
// itemStyle: {
// color: {
// type: 'linear',
// x: 0,
// y: 0,
// x2: 0,
// y2: 1,
// colorStops: [{
// offset: 0, color: '#2D7DF2' //
// }, {
// offset: 0.45, color: '#7EB1FE' //
// }, {
// offset: 0.45, color: '#EFB632' //
// }, {
// offset: 1, color: '#FDD77D' //
// }],
// global: false // false
// },
// shadowColor: "#91cc75",
// borderType: "dashed",
// // opacity: 0.5
// }
// },725,165,765,742,710,720,730,735,762,754
],
myChartStyle: { float: "left", width: "140%", height: "100%" },
}
},
computed: {
maxTableHeight() {
// return this.clientHeight - 450;
return 420;
const _h = this.clientHeight - 610 ;
return _h;
},
...mapGetters(["clientHeight"]),
},
@ -247,25 +312,41 @@ export default {
immediate: true,
},
},
created() {
},
mounted() {
// this.ehso();
//
this.getApiData();
this.$nextTick(() => {
this.initChart()
this.initEcharts();
})
this.agencyLevel = localStorage.getItem("level", data.level);
console.log(
"dynamicMenuRoutes----------------------------",
this.$store.state.sidebarMenuList
"dynamicMenuRoutes----------------------------",
this.$store.state.sidebarMenuList
);
},
methods: {
initChart() {
this.$http.get("/governance/satisfactionOverview/notSatisfactionTrend").then(({ data: { data } }) => {
this.myChart = echarts.init(document.getElementById("my_chart"));
// console.log("123123", data.series)
let series = data.series.map((item, index) => {
return {
...item,
type: "line",
lineStyle: { // lineStyle线
color: index === 0 ? '#F76828' : index === 1 ? '#EDB42D' : '#0056D6' //
},
symbol: 'none',
itemStyle: {
color: index === 0 ? '#F76828' : index === 1 ? '#EDB42D' : '#0056D6' //
}
};
});
let option = {
@ -274,7 +355,7 @@ export default {
},
legend: {
data: data.series.map((item) => item.name),
bottom: "5%",
bottom: "-5",
icon: "rect",
itemWidth: 20,
itemHeight: 5,
@ -283,7 +364,7 @@ export default {
grid: {
left: "3%",
right: "4%",
bottom: "30%",
bottom: "15%",
containLabel: true,
},
toolbox: {
@ -294,7 +375,8 @@ export default {
xAxis: {
type: "category",
boundaryGap: false,
data: data.monthTimes.map((item) => this.$moment(item).format("M") + "月"),
// data: data.monthTimes.map((item) => this.$moment(item).format("M") + ""),
data: data.monthTimes
},
yAxis: {
type: "value",
@ -304,10 +386,31 @@ export default {
this.myChart.setOption(option, true);
window.addEventListener("resize", this.handleWindowResize);
});
this.borderH();
const level = localStorage.getItem('level');
console.log('Stored level:', level);
if (level == 'community') {
this.showAll = true
}
},
columnbackgroundStyle({ row, column, rowIndex, columnIndex }) {
if (columnIndex == 3||columnIndex == 4||columnIndex == 5) {
return 'background:#fffcf3;'
}
},
borderH() {
this.$http.post("/actual/base/residentCategoryUpdateInfo/getUpdateAndintegrityList").then(({ data: { data } }) => {
this.tableList = data
console.log("请求成功:", data);
});
},
handleWindowResize() {
if (this.myChart) {
this.myChart.resize();
this.myBarChart.resize();
}
},
searchDataTab(str) {
@ -374,6 +477,7 @@ export default {
}
);
}
this.getNoticeData()
},
toNoticePage() {
@ -381,6 +485,20 @@ export default {
path: "/main/home-notice",
});
},
jumpToJuMin() {
this.$router.push({
path: "/main/workSys-setResiUpdate-index",
});
},
//
jumpToHouse(e) {
this.$router.push({
path: "/main/base-community-community",
query: {
param1: e,
}
});
},
toSearchPage(type, searchKey) {
this.$router.push({
@ -451,10 +569,9 @@ export default {
const url = "/message/intelligentMessage/list";
let params = {
last: "10",
readFlag: '0'
};
const { data, code, msg } = await requestGet(url, params);
if (code === 0) {
if (data) {
this.noticeData = data;
@ -463,7 +580,15 @@ export default {
this.$message.error(msg);
}
},
handelCLickJump(e){
this.$router.push({
path: "/main/base-nonIntResi",
query: {
resiCategory: e.residentCategory,
}
});
},
//
async getWarningList() {
const url = "/actual/base/resiCategory/categoryCountList";
@ -526,6 +651,82 @@ export default {
this.$message.error(msg);
}
},
initEcharts() {
this.$http.get("/actual/base/residentIntegrity/resiCategoryStats/byOrg/query4Org").then(({ data: { data } }) => {
this.myBarchart = echarts.init(document.getElementById("myBarchart"));
let xData = data.categoryStatsDatas.map(item => item.resiCategoryName)
// let integratedNum = data.categoryStatsDatas.map(item => item.integratedNum)
// let nonIntegratedNum = data.categoryStatsDatas.map(item => item.nonIntegratedNum)
let option = {
backgroundColor: '#fff',
color: ['#448cf6', '#f7ca60', ],
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
legend: {
x: 'center',
bottom: '8%',
data: ['分类信息完整数', '分类信息不完整数']
},
grid: { //
top: '5%',
left: '3%',
right: '4%',
bottom: '20%',
containLabel: true
},
yAxis: [{
type: 'value',
splitLine: {
show: true,
lineStyle: {
color: ['#f2f2f2']
}
},
}],
xAxis: [{
type: 'category',
data: xData
}],
series: [{
name: '分类信息完整数',
type: 'bar',
stack: '总量',
barWidth: '30px',
data: data.categoryStatsDatas.map((item, index) => ({
value: item.integratedNum,
extraProperty: item.resiCategory
})),
},
{
name: '分类信息不完整数',
type: 'bar',
stack: '总量',
data: data.categoryStatsDatas.map((item, index) => ({
value: item.nonIntegratedNum,
extraProperty: item.resiCategory
})),
}
]
};
this.myBarchart.setOption(option);
window.addEventListener("resize", this.handleWindowResize);
this.myBarchart.on("click", (e) => {
this.$router.push({
path: "/main/base-nonIntResi",
query: {
resiCategory: e.data.extraProperty,
}
});
});
});
},
},
};
</script>

1
src/views/pages/login.vue

@ -277,7 +277,6 @@ export default {
this.diaVisible = false;
localStorage.setItem("userType", "work");
localStorage.setItem("token", res.data.token);
this.skipAfterLogin();
})

Loading…
Cancel
Save