1
This commit is contained in:
parent
3a82078bd2
commit
42a07e2bf8
2
.playwright-cli/console-2026-08-16T07-50-01-138Z.log
Normal file
2
.playwright-cli/console-2026-08-16T07-50-01-138Z.log
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
[ 344ms] [INFO] %cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools font-weight:bold @ http://127.0.0.1:5173/node_modules/.vite/deps/react-dom_client.js?v=9a31a45b:20102
|
||||||
|
[ 72434ms] [INFO] %cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools font-weight:bold @ http://127.0.0.1:5173/node_modules/.vite/deps/react-dom_client.js?v=9a31a45b:20102
|
||||||
1
.playwright-cli/console-2026-08-16T08-57-04-043Z.log
Normal file
1
.playwright-cli/console-2026-08-16T08-57-04-043Z.log
Normal file
@ -0,0 +1 @@
|
|||||||
|
[ 167ms] [INFO] %cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools font-weight:bold @ http://127.0.0.1:5173/node_modules/.vite/deps/react-dom_client.js?v=9a31a45b:20102
|
||||||
0
.playwright-cli/page-2026-08-16T07-49-38-636Z.yml
Normal file
0
.playwright-cli/page-2026-08-16T07-49-38-636Z.yml
Normal file
69
.playwright-cli/page-2026-08-16T07-50-01-755Z.yml
Normal file
69
.playwright-cli/page-2026-08-16T07-50-01-755Z.yml
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
- main [ref=e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=e4]:
|
||||||
|
- generic "筛选条件" [ref=e5]:
|
||||||
|
- button "省市区" [ref=e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [ref=e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=e59]:
|
||||||
|
- generic [ref=e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=e65]
|
||||||
|
- toolbar "标注" [ref=e66]:
|
||||||
|
- button "库" [ref=e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=e73]
|
||||||
|
- button "全屏(F11)" [ref=e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=e75]
|
||||||
|
- button "切换到表格" [ref=e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=e77]:
|
||||||
|
- button "缩小" [disabled] [ref=e78]
|
||||||
|
- button "放大" [ref=e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=e80]
|
||||||
|
- button "右移" [disabled] [ref=e81]
|
||||||
|
- button "重置" [disabled] [ref=e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=e90] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=e91] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=e92] [cursor=pointer]
|
||||||
|
- generic [ref=e93]:
|
||||||
|
- generic [ref=e94]: 自然地理区位
|
||||||
|
- generic [ref=e95]: 加载中
|
||||||
70
.playwright-cli/page-2026-08-16T07-51-13-733Z.yml
Normal file
70
.playwright-cli/page-2026-08-16T07-51-13-733Z.yml
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
- main [ref=f1e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=f1e4]:
|
||||||
|
- generic "筛选条件" [ref=f1e5]:
|
||||||
|
- button "省市区" [ref=f1e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=f1e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=f1e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=f1e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [ref=f1e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=f1e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=f1e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=f1e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=f1e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=f1e59]:
|
||||||
|
- generic [ref=f1e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=f1e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=f1e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=f1e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=f1e65]
|
||||||
|
- toolbar "标注" [ref=f1e66]:
|
||||||
|
- button "库" [ref=f1e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=f1e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=f1e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=f1e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=f1e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=f1e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=f1e73]
|
||||||
|
- button "全屏(F11)" [ref=f1e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=f1e75]
|
||||||
|
- button "切换到表格" [ref=f1e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=f1e77]:
|
||||||
|
- button "缩小" [disabled] [ref=f1e78]
|
||||||
|
- button "放大" [ref=f1e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=f1e80]
|
||||||
|
- button "右移" [disabled] [ref=f1e81]
|
||||||
|
- button "重置" [disabled] [ref=f1e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=f1e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=f1e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=f1e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=f1e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=f1e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=f1e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=f1e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=f1e93] [cursor=pointer]
|
||||||
|
- generic [ref=f1e94]:
|
||||||
|
- generic [ref=f1e95]: 自然地理区位
|
||||||
|
- generic [ref=f1e96]: 加载中
|
||||||
87
.playwright-cli/page-2026-08-16T07-51-32-990Z.yml
Normal file
87
.playwright-cli/page-2026-08-16T07-51-32-990Z.yml
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
- main [ref=f1e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=f1e4]:
|
||||||
|
- generic "筛选条件" [ref=f1e5]:
|
||||||
|
- button "省市区" [ref=f1e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=f1e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=f1e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=f1e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [active] [ref=f1e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=f1e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=f1e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=f1e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=f1e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=f1e59]:
|
||||||
|
- generic [ref=f1e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=f1e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=f1e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=f1e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=f1e65]
|
||||||
|
- toolbar "标注" [ref=f1e66]:
|
||||||
|
- button "库" [ref=f1e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=f1e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=f1e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=f1e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=f1e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=f1e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=f1e73]
|
||||||
|
- button "全屏(F11)" [ref=f1e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=f1e75]
|
||||||
|
- button "切换到表格" [ref=f1e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=f1e77]:
|
||||||
|
- button "缩小" [disabled] [ref=f1e78]
|
||||||
|
- button "放大" [ref=f1e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=f1e80]
|
||||||
|
- button "右移" [disabled] [ref=f1e81]
|
||||||
|
- button "重置" [disabled] [ref=f1e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=f1e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=f1e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=f1e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=f1e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=f1e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=f1e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=f1e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=f1e93] [cursor=pointer]
|
||||||
|
- generic [ref=f1e94]:
|
||||||
|
- generic [ref=f1e95]: 自然地理区位
|
||||||
|
- generic [ref=f1e96]: 接口待接入
|
||||||
|
- dialog "建筑性质筛选" [ref=f1e97]:
|
||||||
|
- generic [ref=f1e98]:
|
||||||
|
- heading "建筑性质" [level=2] [ref=f1e99]
|
||||||
|
- button "关闭" [ref=f1e100] [cursor=pointer]: ×
|
||||||
|
- searchbox "搜索" [ref=f1e102]
|
||||||
|
- generic [ref=f1e103]: 未选择
|
||||||
|
- tree [ref=f1e105]:
|
||||||
|
- treeitem [ref=f1e106]:
|
||||||
|
- button "公共建筑" [ref=f1e109] [cursor=pointer]
|
||||||
|
- treeitem [ref=f1e112]:
|
||||||
|
- button "民用建筑" [ref=f1e115] [cursor=pointer]
|
||||||
|
- treeitem [ref=f1e118]:
|
||||||
|
- button "工业建筑" [ref=f1e121] [cursor=pointer]
|
||||||
|
- generic [ref=f1e124]:
|
||||||
|
- button "清空当前" [ref=f1e125] [cursor=pointer]
|
||||||
|
- button "取消" [ref=f1e126] [cursor=pointer]
|
||||||
|
- button "确认" [ref=f1e127] [cursor=pointer]
|
||||||
87
.playwright-cli/page-2026-08-16T07-51-52-763Z.yml
Normal file
87
.playwright-cli/page-2026-08-16T07-51-52-763Z.yml
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
- main [ref=f1e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=f1e4]:
|
||||||
|
- generic "筛选条件" [ref=f1e5]:
|
||||||
|
- button "省市区" [ref=f1e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=f1e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=f1e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=f1e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [ref=f1e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=f1e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=f1e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=f1e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=f1e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=f1e59]:
|
||||||
|
- generic [ref=f1e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=f1e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=f1e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=f1e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=f1e65]
|
||||||
|
- toolbar "标注" [ref=f1e66]:
|
||||||
|
- button "库" [ref=f1e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=f1e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=f1e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=f1e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=f1e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=f1e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=f1e73]
|
||||||
|
- button "全屏(F11)" [ref=f1e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=f1e75]
|
||||||
|
- button "切换到表格" [ref=f1e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=f1e77]:
|
||||||
|
- button "缩小" [disabled] [ref=f1e78]
|
||||||
|
- button "放大" [ref=f1e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=f1e80]
|
||||||
|
- button "右移" [disabled] [ref=f1e81]
|
||||||
|
- button "重置" [disabled] [ref=f1e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=f1e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=f1e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=f1e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=f1e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=f1e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=f1e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=f1e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=f1e93] [cursor=pointer]
|
||||||
|
- generic [ref=f1e94]:
|
||||||
|
- generic [ref=f1e95]: 自然地理区位
|
||||||
|
- generic [ref=f1e96]: 接口待接入
|
||||||
|
- dialog "建筑性质筛选" [ref=f1e97]:
|
||||||
|
- generic [ref=f1e98]:
|
||||||
|
- heading "建筑性质" [level=2] [ref=f1e99]
|
||||||
|
- button "关闭" [ref=f1e100] [cursor=pointer]: ×
|
||||||
|
- searchbox "搜索" [ref=f1e102]
|
||||||
|
- generic [ref=f1e103]: 已选 1 项
|
||||||
|
- tree [ref=f1e105]:
|
||||||
|
- treeitem [ref=f1e106]:
|
||||||
|
- button "公共建筑" [active] [pressed] [ref=f1e109] [cursor=pointer]
|
||||||
|
- treeitem [ref=f1e112]:
|
||||||
|
- button "民用建筑" [ref=f1e115] [cursor=pointer]
|
||||||
|
- treeitem [ref=f1e118]:
|
||||||
|
- button "工业建筑" [ref=f1e121] [cursor=pointer]
|
||||||
|
- generic [ref=f1e124]:
|
||||||
|
- button "清空当前" [ref=f1e125] [cursor=pointer]
|
||||||
|
- button "取消" [ref=f1e126] [cursor=pointer]
|
||||||
|
- button "确认" [ref=f1e127] [cursor=pointer]
|
||||||
87
.playwright-cli/page-2026-08-16T07-51-56-594Z.yml
Normal file
87
.playwright-cli/page-2026-08-16T07-51-56-594Z.yml
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
- main [ref=f1e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=f1e4]:
|
||||||
|
- generic "筛选条件" [ref=f1e5]:
|
||||||
|
- button "省市区" [ref=f1e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=f1e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=f1e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=f1e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [ref=f1e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=f1e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=f1e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=f1e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=f1e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=f1e59]:
|
||||||
|
- generic [ref=f1e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=f1e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=f1e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=f1e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=f1e65]
|
||||||
|
- toolbar "标注" [ref=f1e66]:
|
||||||
|
- button "库" [ref=f1e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=f1e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=f1e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=f1e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=f1e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=f1e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=f1e73]
|
||||||
|
- button "全屏(F11)" [ref=f1e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=f1e75]
|
||||||
|
- button "切换到表格" [ref=f1e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=f1e77]:
|
||||||
|
- button "缩小" [disabled] [ref=f1e78]
|
||||||
|
- button "放大" [ref=f1e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=f1e80]
|
||||||
|
- button "右移" [disabled] [ref=f1e81]
|
||||||
|
- button "重置" [disabled] [ref=f1e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=f1e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=f1e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=f1e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=f1e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=f1e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=f1e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=f1e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=f1e93] [cursor=pointer]
|
||||||
|
- generic [ref=f1e94]:
|
||||||
|
- generic [ref=f1e95]: 自然地理区位
|
||||||
|
- generic [ref=f1e96]: 接口待接入
|
||||||
|
- dialog "建筑性质筛选" [ref=f1e97]:
|
||||||
|
- generic [ref=f1e98]:
|
||||||
|
- heading "建筑性质" [level=2] [ref=f1e99]
|
||||||
|
- button "关闭" [ref=f1e100] [cursor=pointer]: ×
|
||||||
|
- searchbox "搜索" [ref=f1e102]
|
||||||
|
- generic [ref=f1e103]: 已选 1 项
|
||||||
|
- tree [ref=f1e105]:
|
||||||
|
- treeitem [ref=f1e106]:
|
||||||
|
- button "公共建筑" [ref=f1e109] [cursor=pointer]
|
||||||
|
- treeitem [ref=f1e112]:
|
||||||
|
- button "民用建筑" [active] [pressed] [ref=f1e115] [cursor=pointer]
|
||||||
|
- treeitem [ref=f1e118]:
|
||||||
|
- button "工业建筑" [ref=f1e121] [cursor=pointer]
|
||||||
|
- generic [ref=f1e124]:
|
||||||
|
- button "清空当前" [ref=f1e125] [cursor=pointer]
|
||||||
|
- button "取消" [ref=f1e126] [cursor=pointer]
|
||||||
|
- button "确认" [ref=f1e127] [cursor=pointer]
|
||||||
0
.playwright-cli/page-2026-08-16T08-56-45-305Z.yml
Normal file
0
.playwright-cli/page-2026-08-16T08-56-45-305Z.yml
Normal file
70
.playwright-cli/page-2026-08-16T08-57-04-463Z.yml
Normal file
70
.playwright-cli/page-2026-08-16T08-57-04-463Z.yml
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
- main [ref=e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=e4]:
|
||||||
|
- generic "筛选条件" [ref=e5]:
|
||||||
|
- button "省市区" [ref=e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [ref=e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=e59]:
|
||||||
|
- generic [ref=e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=e65]
|
||||||
|
- toolbar "标注" [ref=e66]:
|
||||||
|
- button "库" [ref=e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=e73]
|
||||||
|
- button "全屏(F11)" [ref=e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=e75]
|
||||||
|
- button "切换到表格" [ref=e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=e77]:
|
||||||
|
- button "缩小" [disabled] [ref=e78]
|
||||||
|
- button "放大" [ref=e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=e80]
|
||||||
|
- button "右移" [disabled] [ref=e81]
|
||||||
|
- button "重置" [disabled] [ref=e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=e93] [cursor=pointer]
|
||||||
|
- generic [ref=e94]:
|
||||||
|
- generic [ref=e95]: 自然地理区位
|
||||||
|
- generic [ref=e96]: 加载中
|
||||||
85
.playwright-cli/page-2026-08-16T08-57-34-346Z.yml
Normal file
85
.playwright-cli/page-2026-08-16T08-57-34-346Z.yml
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
- main [ref=e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=e4]:
|
||||||
|
- generic "筛选条件" [ref=e5]:
|
||||||
|
- button "省市区" [ref=e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [active] [ref=e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=e59]:
|
||||||
|
- generic [ref=e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=e65]
|
||||||
|
- toolbar "标注" [ref=e66]:
|
||||||
|
- button "库" [ref=e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=e73]
|
||||||
|
- button "全屏(F11)" [ref=e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=e75]
|
||||||
|
- button "切换到表格" [ref=e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=e77]:
|
||||||
|
- button "缩小" [disabled] [ref=e78]
|
||||||
|
- button "放大" [ref=e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=e80]
|
||||||
|
- button "右移" [disabled] [ref=e81]
|
||||||
|
- button "重置" [disabled] [ref=e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=e93] [cursor=pointer]
|
||||||
|
- generic [ref=e94]:
|
||||||
|
- generic [ref=e95]: 自然地理区位
|
||||||
|
- generic [ref=e96]: 接口待接入
|
||||||
|
- dialog "建筑性质筛选" [ref=e97]:
|
||||||
|
- generic [ref=e98]:
|
||||||
|
- heading "建筑性质" [level=2] [ref=e99]
|
||||||
|
- button "关闭" [ref=e100] [cursor=pointer]: ×
|
||||||
|
- searchbox "搜索" [ref=e102]
|
||||||
|
- generic [ref=e103]: 未选择
|
||||||
|
- tree [ref=e105]:
|
||||||
|
- treeitem [ref=e106]:
|
||||||
|
- button "公共建筑" [ref=e109] [cursor=pointer]
|
||||||
|
- treeitem [ref=e112]:
|
||||||
|
- button "民用建筑" [ref=e115] [cursor=pointer]
|
||||||
|
- generic [ref=e118]:
|
||||||
|
- button "清空当前" [ref=e119] [cursor=pointer]
|
||||||
|
- button "取消" [ref=e120] [cursor=pointer]
|
||||||
|
- button "确认" [ref=e121] [cursor=pointer]
|
||||||
85
.playwright-cli/page-2026-08-16T08-58-07-167Z.yml
Normal file
85
.playwright-cli/page-2026-08-16T08-58-07-167Z.yml
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
- main [ref=e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=e4]:
|
||||||
|
- generic "筛选条件" [ref=e5]:
|
||||||
|
- button "省市区" [ref=e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [ref=e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=e59]:
|
||||||
|
- generic [ref=e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=e65]
|
||||||
|
- toolbar "标注" [ref=e66]:
|
||||||
|
- button "库" [ref=e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=e73]
|
||||||
|
- button "全屏(F11)" [ref=e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=e75]
|
||||||
|
- button "切换到表格" [ref=e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=e77]:
|
||||||
|
- button "缩小" [disabled] [ref=e78]
|
||||||
|
- button "放大" [ref=e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=e80]
|
||||||
|
- button "右移" [disabled] [ref=e81]
|
||||||
|
- button "重置" [disabled] [ref=e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=e93] [cursor=pointer]
|
||||||
|
- generic [ref=e94]:
|
||||||
|
- generic [ref=e95]: 自然地理区位
|
||||||
|
- generic [ref=e96]: 接口待接入
|
||||||
|
- dialog "建筑性质筛选" [ref=e97]:
|
||||||
|
- generic [ref=e98]:
|
||||||
|
- heading "建筑性质" [level=2] [ref=e99]
|
||||||
|
- button "关闭" [ref=e100] [cursor=pointer]: ×
|
||||||
|
- searchbox "搜索" [ref=e102]
|
||||||
|
- generic [ref=e103]: 已选 1 项
|
||||||
|
- tree [ref=e105]:
|
||||||
|
- treeitem [ref=e106]:
|
||||||
|
- button "公共建筑" [active] [pressed] [ref=e109] [cursor=pointer]
|
||||||
|
- treeitem [ref=e112]:
|
||||||
|
- button "民用建筑" [ref=e115] [cursor=pointer]
|
||||||
|
- generic [ref=e118]:
|
||||||
|
- button "清空当前" [ref=e119] [cursor=pointer]
|
||||||
|
- button "取消" [ref=e120] [cursor=pointer]
|
||||||
|
- button "确认" [ref=e121] [cursor=pointer]
|
||||||
85
.playwright-cli/page-2026-08-16T08-58-11-020Z.yml
Normal file
85
.playwright-cli/page-2026-08-16T08-58-11-020Z.yml
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
- main [ref=e3]:
|
||||||
|
- generic:
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- generic: 众为数字化管理平台
|
||||||
|
- region "年度费用模板" [ref=e4]:
|
||||||
|
- generic "筛选条件" [ref=e5]:
|
||||||
|
- button "省市区" [ref=e6] [cursor=pointer]
|
||||||
|
- button "自然地理区位" [ref=e12] [cursor=pointer]
|
||||||
|
- button "设施类别" [ref=e17] [cursor=pointer]
|
||||||
|
- button "建筑功能" [ref=e23] [cursor=pointer]
|
||||||
|
- button "建筑性质" [ref=e28] [cursor=pointer]
|
||||||
|
- button "建设阶段" [ref=e33] [cursor=pointer]
|
||||||
|
- button "规划形式" [ref=e40] [cursor=pointer]
|
||||||
|
- button "时间" [ref=e47] [cursor=pointer]
|
||||||
|
- button "面积" [ref=e51] [cursor=pointer]
|
||||||
|
- region "年度总费用图表" [ref=e59]:
|
||||||
|
- generic [ref=e60]:
|
||||||
|
- button "纵坐标:造价(元)" [ref=e62] [cursor=pointer]: 造价(元)
|
||||||
|
- generic [ref=e63]:
|
||||||
|
- figure "图表,共有0个系列":
|
||||||
|
- generic [ref=e64]:
|
||||||
|
- img "interactive chart"
|
||||||
|
- region [ref=e65]
|
||||||
|
- toolbar "标注" [ref=e66]:
|
||||||
|
- button "库" [ref=e67] [cursor=pointer]
|
||||||
|
- button "指" [ref=e68] [cursor=pointer]
|
||||||
|
- button "均" [ref=e69] [cursor=pointer]
|
||||||
|
- button "Line Tool" [disabled] [ref=e70]
|
||||||
|
- button "Text Tool" [disabled] [ref=e71]
|
||||||
|
- button "Shape Tool" [disabled] [ref=e72]
|
||||||
|
- button "Fibonacci Tool" [disabled] [ref=e73]
|
||||||
|
- button "全屏(F11)" [ref=e74] [cursor=pointer]
|
||||||
|
- button "Clear annotations" [disabled] [ref=e75]
|
||||||
|
- button "切换到表格" [ref=e76] [cursor=pointer]:
|
||||||
|
- generic: 趋
|
||||||
|
- status:
|
||||||
|
- generic: 请选择右侧分类项
|
||||||
|
- toolbar "缩放" [ref=e77]:
|
||||||
|
- button "缩小" [disabled] [ref=e78]
|
||||||
|
- button "放大" [ref=e79] [cursor=pointer]
|
||||||
|
- button "左移" [disabled] [ref=e80]
|
||||||
|
- button "右移" [disabled] [ref=e81]
|
||||||
|
- button "重置" [disabled] [ref=e82]
|
||||||
|
- button "收起选择区" [expanded] [ref=e83] [cursor=pointer]
|
||||||
|
- complementary "选择内容" [ref=e87]:
|
||||||
|
- tablist "选择内容切换项" [ref=e88]:
|
||||||
|
- tab "自然地理区位" [selected] [ref=e89] [cursor=pointer]
|
||||||
|
- tab "设施类别" [ref=e90] [cursor=pointer]
|
||||||
|
- tab "建筑功能" [ref=e91] [cursor=pointer]
|
||||||
|
- tab "建设阶段" [ref=e92] [cursor=pointer]
|
||||||
|
- tab "规划形式" [ref=e93] [cursor=pointer]
|
||||||
|
- generic [ref=e94]:
|
||||||
|
- generic [ref=e95]: 自然地理区位
|
||||||
|
- generic [ref=e96]: 接口待接入
|
||||||
|
- dialog "建筑性质筛选" [ref=e97]:
|
||||||
|
- generic [ref=e98]:
|
||||||
|
- heading "建筑性质" [level=2] [ref=e99]
|
||||||
|
- button "关闭" [ref=e100] [cursor=pointer]: ×
|
||||||
|
- searchbox "搜索" [ref=e102]
|
||||||
|
- generic [ref=e103]: 已选 1 项
|
||||||
|
- tree [ref=e105]:
|
||||||
|
- treeitem [ref=e106]:
|
||||||
|
- button "公共建筑" [ref=e109] [cursor=pointer]
|
||||||
|
- treeitem [ref=e112]:
|
||||||
|
- button "民用建筑" [active] [pressed] [ref=e115] [cursor=pointer]
|
||||||
|
- generic [ref=e118]:
|
||||||
|
- button "清空当前" [ref=e119] [cursor=pointer]
|
||||||
|
- button "取消" [ref=e120] [cursor=pointer]
|
||||||
|
- button "确认" [ref=e121] [cursor=pointer]
|
||||||
139
src/App.tsx
139
src/App.tsx
@ -12,7 +12,7 @@ import {
|
|||||||
} from 'ag-grid-community';
|
} from 'ag-grid-community';
|
||||||
import type { AgCartesianChartOptions } from 'ag-charts-community';
|
import type { AgCartesianChartOptions } from 'ag-charts-community';
|
||||||
import { ModuleRegistry } from 'ag-charts-community';
|
import { ModuleRegistry } from 'ag-charts-community';
|
||||||
import { Building2, CalendarRange, Construction, LayoutGrid, Library, LocateFixed, MapPinned, PanelRightClose, PanelRightOpen, Ruler, SquareFunction, Waypoints } from 'lucide-react';
|
import { Building2, CalendarRange, Construction, House, LayoutGrid, Library, LocateFixed, MapPinned, PanelRightClose, PanelRightOpen, Ruler, SquareFunction, Waypoints } from 'lucide-react';
|
||||||
import {
|
import {
|
||||||
AnnotationsModule,
|
AnnotationsModule,
|
||||||
ContextMenuModule,
|
ContextMenuModule,
|
||||||
@ -75,6 +75,7 @@ const filterOptions = [
|
|||||||
{ key: 'geoLocation', label: '自然地理区位', icon: LocateFixed },
|
{ key: 'geoLocation', label: '自然地理区位', icon: LocateFixed },
|
||||||
{ key: 'facilityType', label: '设施类别', icon: Building2 },
|
{ key: 'facilityType', label: '设施类别', icon: Building2 },
|
||||||
{ key: 'buildingFunction', label: '建筑功能', icon: SquareFunction },
|
{ key: 'buildingFunction', label: '建筑功能', icon: SquareFunction },
|
||||||
|
{ key: 'buildingNature', label: '建筑性质', icon: House },
|
||||||
{ key: 'constructionStage', label: '建设阶段', icon: Construction },
|
{ key: 'constructionStage', label: '建设阶段', icon: Construction },
|
||||||
{ key: 'planningForm', label: '规划形式', icon: LayoutGrid },
|
{ key: 'planningForm', label: '规划形式', icon: LayoutGrid },
|
||||||
{ key: 'time', label: '时间', icon: CalendarRange },
|
{ key: 'time', label: '时间', icon: CalendarRange },
|
||||||
@ -140,6 +141,26 @@ const contentTreeConfigs = {
|
|||||||
},
|
},
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
|
const buildingNatureBrowserConfig = {
|
||||||
|
conditionEndpoint: '/api/public/browser/condition/256',
|
||||||
|
dataEndpoint: '/api/public/browser/data/256',
|
||||||
|
treeid: '95504',
|
||||||
|
fieldid: '316390',
|
||||||
|
searchbrowserid: '36523',
|
||||||
|
browserParams: {
|
||||||
|
requestid: '',
|
||||||
|
isshowsearchtab: '1',
|
||||||
|
workflowid: '182028',
|
||||||
|
wfid: '182028',
|
||||||
|
billid: '-1815',
|
||||||
|
f_weaver_belongto_userid: '',
|
||||||
|
f_weaver_belongto_usertype: '',
|
||||||
|
wf_isagent: '',
|
||||||
|
wf_beagenter: '',
|
||||||
|
wfCreater: '',
|
||||||
|
},
|
||||||
|
} as const;
|
||||||
|
|
||||||
const chartLineColors = ['#0078a8', '#d14d72', '#1f8f4d', '#d96f23', '#6b5cc8', '#0d7680', '#9a6b12', '#b24b38'];
|
const chartLineColors = ['#0078a8', '#d14d72', '#1f8f4d', '#d96f23', '#6b5cc8', '#0d7680', '#9a6b12', '#b24b38'];
|
||||||
const defaultTemplateFilterNode = {
|
const defaultTemplateFilterNode = {
|
||||||
id: '3',
|
id: '3',
|
||||||
@ -603,12 +624,16 @@ function isIndicatorTreeFilterKey(filterKey: FilterKey): filterKey is 'indicator
|
|||||||
return filterKey === 'indicatorTree';
|
return filterKey === 'indicatorTree';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function isBuildingNatureFilterKey(filterKey: FilterKey): filterKey is 'buildingNature' {
|
||||||
|
return filterKey === 'buildingNature';
|
||||||
|
}
|
||||||
|
|
||||||
function isRangeFilterKey(filterKey: FilterKey): filterKey is RangeFilterKey {
|
function isRangeFilterKey(filterKey: FilterKey): filterKey is RangeFilterKey {
|
||||||
return filterKey === 'time' || filterKey === 'area';
|
return filterKey === 'time' || filterKey === 'area';
|
||||||
}
|
}
|
||||||
|
|
||||||
function isSingleSelectFilterKey(filterKey: FilterKey) {
|
function isSingleSelectFilterKey(filterKey: FilterKey) {
|
||||||
return isTemplateFilterKey(filterKey) || isIndicatorTreeFilterKey(filterKey);
|
return isTemplateFilterKey(filterKey) || isIndicatorTreeFilterKey(filterKey) || isBuildingNatureFilterKey(filterKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getDefaultTemplateFilterNodes(): SelectedFilterNode[] {
|
function getDefaultTemplateFilterNodes(): SelectedFilterNode[] {
|
||||||
@ -768,6 +793,7 @@ function App() {
|
|||||||
geoLocation: false,
|
geoLocation: false,
|
||||||
facilityType: false,
|
facilityType: false,
|
||||||
buildingFunction: false,
|
buildingFunction: false,
|
||||||
|
buildingNature: false,
|
||||||
constructionStage: false,
|
constructionStage: false,
|
||||||
planningForm: false,
|
planningForm: false,
|
||||||
time: false,
|
time: false,
|
||||||
@ -818,6 +844,7 @@ function App() {
|
|||||||
geoLocation: [],
|
geoLocation: [],
|
||||||
facilityType: [],
|
facilityType: [],
|
||||||
buildingFunction: [],
|
buildingFunction: [],
|
||||||
|
buildingNature: [],
|
||||||
constructionStage: [],
|
constructionStage: [],
|
||||||
planningForm: [],
|
planningForm: [],
|
||||||
time: [],
|
time: [],
|
||||||
@ -830,6 +857,7 @@ function App() {
|
|||||||
geoLocation: false,
|
geoLocation: false,
|
||||||
facilityType: false,
|
facilityType: false,
|
||||||
buildingFunction: false,
|
buildingFunction: false,
|
||||||
|
buildingNature: false,
|
||||||
constructionStage: false,
|
constructionStage: false,
|
||||||
planningForm: false,
|
planningForm: false,
|
||||||
time: false,
|
time: false,
|
||||||
@ -842,6 +870,7 @@ function App() {
|
|||||||
geoLocation: null,
|
geoLocation: null,
|
||||||
facilityType: null,
|
facilityType: null,
|
||||||
buildingFunction: null,
|
buildingFunction: null,
|
||||||
|
buildingNature: null,
|
||||||
constructionStage: null,
|
constructionStage: null,
|
||||||
planningForm: null,
|
planningForm: null,
|
||||||
time: null,
|
time: null,
|
||||||
@ -854,6 +883,7 @@ function App() {
|
|||||||
geoLocation: [],
|
geoLocation: [],
|
||||||
facilityType: [],
|
facilityType: [],
|
||||||
buildingFunction: [],
|
buildingFunction: [],
|
||||||
|
buildingNature: [],
|
||||||
constructionStage: [],
|
constructionStage: [],
|
||||||
planningForm: [],
|
planningForm: [],
|
||||||
time: [],
|
time: [],
|
||||||
@ -866,6 +896,7 @@ function App() {
|
|||||||
geoLocation: false,
|
geoLocation: false,
|
||||||
facilityType: false,
|
facilityType: false,
|
||||||
buildingFunction: false,
|
buildingFunction: false,
|
||||||
|
buildingNature: false,
|
||||||
constructionStage: false,
|
constructionStage: false,
|
||||||
planningForm: false,
|
planningForm: false,
|
||||||
time: false,
|
time: false,
|
||||||
@ -878,6 +909,7 @@ function App() {
|
|||||||
geoLocation: null,
|
geoLocation: null,
|
||||||
facilityType: null,
|
facilityType: null,
|
||||||
buildingFunction: null,
|
buildingFunction: null,
|
||||||
|
buildingNature: null,
|
||||||
constructionStage: null,
|
constructionStage: null,
|
||||||
planningForm: null,
|
planningForm: null,
|
||||||
time: null,
|
time: null,
|
||||||
@ -890,6 +922,7 @@ function App() {
|
|||||||
geoLocation: [],
|
geoLocation: [],
|
||||||
facilityType: [],
|
facilityType: [],
|
||||||
buildingFunction: [],
|
buildingFunction: [],
|
||||||
|
buildingNature: [],
|
||||||
constructionStage: [],
|
constructionStage: [],
|
||||||
planningForm: [],
|
planningForm: [],
|
||||||
time: [],
|
time: [],
|
||||||
@ -908,6 +941,7 @@ function App() {
|
|||||||
geoLocation: 0,
|
geoLocation: 0,
|
||||||
facilityType: 0,
|
facilityType: 0,
|
||||||
buildingFunction: 0,
|
buildingFunction: 0,
|
||||||
|
buildingNature: 0,
|
||||||
constructionStage: 0,
|
constructionStage: 0,
|
||||||
planningForm: 0,
|
planningForm: 0,
|
||||||
time: 0,
|
time: 0,
|
||||||
@ -1032,7 +1066,7 @@ function App() {
|
|||||||
);
|
);
|
||||||
const pivotGridPinnedBottomRowData = useMemo<PivotGridRow[]>(
|
const pivotGridPinnedBottomRowData = useMemo<PivotGridRow[]>(
|
||||||
() => {
|
() => {
|
||||||
if (hasTimeFilter) return [];
|
if (selectedContentNodes.length === 0 || hasTimeFilter) return [];
|
||||||
const datum = chartSummaryBySelection[overallSummaryKey]
|
const datum = chartSummaryBySelection[overallSummaryKey]
|
||||||
?? selectedContentNodes
|
?? selectedContentNodes
|
||||||
.map((node) => chartSummaryBySelection[getSelectionKey(node.contentKey, node.id)])
|
.map((node) => chartSummaryBySelection[getSelectionKey(node.contentKey, node.id)])
|
||||||
@ -1243,6 +1277,7 @@ function App() {
|
|||||||
[
|
[
|
||||||
appliedFilters.area,
|
appliedFilters.area,
|
||||||
appliedFilters.buildingFunction,
|
appliedFilters.buildingFunction,
|
||||||
|
appliedFilters.buildingNature,
|
||||||
appliedFilters.constructionStage,
|
appliedFilters.constructionStage,
|
||||||
appliedFilters.facilityType,
|
appliedFilters.facilityType,
|
||||||
appliedFilters.geoLocation,
|
appliedFilters.geoLocation,
|
||||||
@ -1302,6 +1337,65 @@ function App() {
|
|||||||
return normalizeTreeRows(rows);
|
return normalizeTreeRows(rows);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const fetchBuildingNatureFilterTree = async (nodeId?: string, signal?: AbortSignal) => {
|
||||||
|
const treeParams = {
|
||||||
|
...browserTreeDefaults,
|
||||||
|
...buildingNatureBrowserConfig.browserParams,
|
||||||
|
treeid: buildingNatureBrowserConfig.treeid,
|
||||||
|
cube_treeid: buildingNatureBrowserConfig.treeid,
|
||||||
|
searchbrowserid: buildingNatureBrowserConfig.searchbrowserid,
|
||||||
|
fieldid: buildingNatureBrowserConfig.fieldid,
|
||||||
|
};
|
||||||
|
const requestOptions: RequestInit = {
|
||||||
|
credentials: 'include',
|
||||||
|
signal,
|
||||||
|
headers: {
|
||||||
|
'X-Requested-With': 'XMLHttpRequest',
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
if (!nodeId) {
|
||||||
|
const conditionResponse = await fetch(
|
||||||
|
`${buildingNatureBrowserConfig.conditionEndpoint}?${buildQuery(treeParams)}`,
|
||||||
|
requestOptions,
|
||||||
|
);
|
||||||
|
if (!conditionResponse.ok) {
|
||||||
|
throw new Error(`建筑性质浏览条件加载失败:HTTP ${conditionResponse.status}`);
|
||||||
|
}
|
||||||
|
const conditionPayload = await conditionResponse.json() as { status?: boolean; msg?: string };
|
||||||
|
if (conditionPayload.status === false) {
|
||||||
|
throw new Error(conditionPayload.msg || '建筑性质浏览条件加载失败');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const dataParams = nodeId
|
||||||
|
? {
|
||||||
|
...treeParams,
|
||||||
|
type: '2',
|
||||||
|
id: nodeId,
|
||||||
|
isVirtual: '',
|
||||||
|
}
|
||||||
|
: {
|
||||||
|
...treeParams,
|
||||||
|
pageSize: '10',
|
||||||
|
current: '1',
|
||||||
|
min: '1',
|
||||||
|
max: '10',
|
||||||
|
};
|
||||||
|
const dataResponse = await fetch(
|
||||||
|
`${buildingNatureBrowserConfig.dataEndpoint}?${buildQuery(dataParams)}`,
|
||||||
|
requestOptions,
|
||||||
|
);
|
||||||
|
if (!dataResponse.ok) {
|
||||||
|
throw new Error(`建筑性质浏览数据加载失败:HTTP ${dataResponse.status}`);
|
||||||
|
}
|
||||||
|
const dataPayload = await dataResponse.json() as { status?: boolean; msg?: string };
|
||||||
|
if (dataPayload.status === false) {
|
||||||
|
throw new Error(dataPayload.msg || '建筑性质浏览数据加载失败');
|
||||||
|
}
|
||||||
|
return normalizeTreeRows(pickArray(dataPayload));
|
||||||
|
};
|
||||||
|
|
||||||
const normalizeBackendTree = (nodes: TreeNode[]): TreeNode[] => nodes.map((node) => ({
|
const normalizeBackendTree = (nodes: TreeNode[]): TreeNode[] => nodes.map((node) => ({
|
||||||
...node,
|
...node,
|
||||||
hasChildren: node.children.length > 0 || node.hasChildren,
|
hasChildren: node.children.length > 0 || node.hasChildren,
|
||||||
@ -1342,7 +1436,7 @@ function App() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const fetchTemplateLibraryTree = async (signal?: AbortSignal) => {
|
const fetchTemplateLibraryTree = async (signal?: AbortSignal) => {
|
||||||
const response = await fetch(`${API_BASE_URL}/zw/getBuildingFunctionCostFilterTree?${buildQuery({ key: 'templateLibrary' })}`, {
|
const response = await fetch(`${API_BASE_URL}${API_ROUTES.filterTree}?${buildQuery({ key: 'templateLibrary' })}`, {
|
||||||
signal,
|
signal,
|
||||||
headers: {
|
headers: {
|
||||||
'X-Requested-With': 'XMLHttpRequest',
|
'X-Requested-With': 'XMLHttpRequest',
|
||||||
@ -1357,7 +1451,7 @@ function App() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const fetchIndicatorTree = async (signal?: AbortSignal) => {
|
const fetchIndicatorTree = async (signal?: AbortSignal) => {
|
||||||
const response = await fetch(`${API_BASE_URL}/zw/getBuildingFunctionCostFilterTree?${buildQuery({ key: 'indicatorTree', templateId: selectedTemplateId })}`, {
|
const response = await fetch(`${API_BASE_URL}${API_ROUTES.filterTree}?${buildQuery({ key: 'indicatorTree', templateId: selectedTemplateId })}`, {
|
||||||
signal,
|
signal,
|
||||||
headers: {
|
headers: {
|
||||||
'X-Requested-With': 'XMLHttpRequest',
|
'X-Requested-With': 'XMLHttpRequest',
|
||||||
@ -1415,6 +1509,12 @@ function App() {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const loadFilterTree = async (filterKey: FilterKey, keyword?: string, signal?: AbortSignal) => {
|
const loadFilterTree = async (filterKey: FilterKey, keyword?: string, signal?: AbortSignal) => {
|
||||||
|
if (isBuildingNatureFilterKey(filterKey)) {
|
||||||
|
const nodes = filterTreeByKey.buildingNature.length > 0
|
||||||
|
? filterTreeByKey.buildingNature
|
||||||
|
: await fetchBuildingNatureFilterTree(undefined, signal);
|
||||||
|
return keyword?.trim() ? filterTreeNodesByKeyword(nodes, keyword) : nodes;
|
||||||
|
}
|
||||||
if (filterKey === 'region') {
|
if (filterKey === 'region') {
|
||||||
const nodes = await fetchRegionFilterTree(signal);
|
const nodes = await fetchRegionFilterTree(signal);
|
||||||
return keyword?.trim() ? filterTreeNodesByKeyword(nodes, keyword) : nodes;
|
return keyword?.trim() ? filterTreeNodesByKeyword(nodes, keyword) : nodes;
|
||||||
@ -1621,7 +1721,7 @@ function App() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isTemplateFilterKey(filterKey) || filterKey === 'indicatorTree') {
|
if (isTemplateFilterKey(filterKey) || filterKey === 'indicatorTree' || isBuildingNatureFilterKey(filterKey)) {
|
||||||
filterSearchTimerRef.current = window.setTimeout(() => {
|
filterSearchTimerRef.current = window.setTimeout(() => {
|
||||||
setFilterSearchLoadingByKey((current) => ({ ...current, [filterKey]: true }));
|
setFilterSearchLoadingByKey((current) => ({ ...current, [filterKey]: true }));
|
||||||
setFilterSearchErrorByKey((current) => ({ ...current, [filterKey]: null }));
|
setFilterSearchErrorByKey((current) => ({ ...current, [filterKey]: null }));
|
||||||
@ -1678,10 +1778,13 @@ function App() {
|
|||||||
})),
|
})),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
if (node.loaded || !isContentFilterKey(filterModalKey)) return;
|
if (node.loaded || (!isContentFilterKey(filterModalKey) && !isBuildingNatureFilterKey(filterModalKey))) return;
|
||||||
|
|
||||||
const currentFilterKey = filterModalKey;
|
const currentFilterKey = filterModalKey;
|
||||||
fetchContentTree(currentFilterKey, nodeId)
|
const childRequest = isBuildingNatureFilterKey(currentFilterKey)
|
||||||
|
? fetchBuildingNatureFilterTree(nodeId)
|
||||||
|
: fetchContentTree(currentFilterKey, nodeId);
|
||||||
|
childRequest
|
||||||
.then((children) => {
|
.then((children) => {
|
||||||
setFilterTreeByKey((current) => ({
|
setFilterTreeByKey((current) => ({
|
||||||
...current,
|
...current,
|
||||||
@ -1921,6 +2024,11 @@ function App() {
|
|||||||
async function loadStats() {
|
async function loadStats() {
|
||||||
if (selectedContentNodes.length === 0) {
|
if (selectedContentNodes.length === 0) {
|
||||||
setChartDataBySelection({});
|
setChartDataBySelection({});
|
||||||
|
setChartSummaryBySelection({});
|
||||||
|
setLoading(false);
|
||||||
|
setLoadingHint('');
|
||||||
|
setLoadError(null);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
setLoading(true);
|
setLoading(true);
|
||||||
@ -1957,21 +2065,17 @@ function App() {
|
|||||||
}
|
}
|
||||||
const payload = (await response.json()) as { data?: ApiBuildingFunctionStatBatchItem[] };
|
const payload = (await response.json()) as { data?: ApiBuildingFunctionStatBatchItem[] };
|
||||||
const results = (payload.data ?? [])
|
const results = (payload.data ?? [])
|
||||||
.filter((item) => item.key)
|
.filter((item) => item.key && item.key !== overallSummaryKey)
|
||||||
.map((item) => [item.key as string, (item.data ?? []).map(normalizeStat).slice(0, 36)] as const);
|
.map((item) => [item.key as string, (item.data ?? []).map(normalizeStat).slice(0, 36)] as const);
|
||||||
const summaries = (payload.data ?? [])
|
const summaries = (payload.data ?? [])
|
||||||
.filter((item) => item.key && item.summary)
|
.filter((item) => item.key && item.summary)
|
||||||
.map((item) => [item.key as string, normalizeStat(item.summary as ApiBuildingFunctionStat)] as const);
|
.map((item) => [item.key as string, normalizeStat(item.summary as ApiBuildingFunctionStat)] as const);
|
||||||
const overallSummary = (payload.data ?? []).find((item) => item.summary)?.summary;
|
const overallSummary = (payload.data ?? []).find((item) => item.key === overallSummaryKey)?.summary;
|
||||||
setChartDataBySelection((current) => ({
|
setChartDataBySelection(Object.fromEntries(results));
|
||||||
...current,
|
setChartSummaryBySelection({
|
||||||
...Object.fromEntries(results),
|
|
||||||
}));
|
|
||||||
setChartSummaryBySelection((current) => ({
|
|
||||||
...current,
|
|
||||||
...Object.fromEntries(summaries),
|
...Object.fromEntries(summaries),
|
||||||
...(overallSummary ? { [overallSummaryKey]: normalizeStat(overallSummary) } : {}),
|
...(overallSummary ? { [overallSummaryKey]: normalizeStat(overallSummary) } : {}),
|
||||||
}));
|
});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if (controller.signal.aborted) return;
|
if (controller.signal.aborted) return;
|
||||||
setLoadError(error instanceof Error ? error.message : '接口请求失败');
|
setLoadError(error instanceof Error ? error.message : '接口请求失败');
|
||||||
@ -2472,6 +2576,7 @@ function App() {
|
|||||||
geoLocation: [],
|
geoLocation: [],
|
||||||
facilityType: [],
|
facilityType: [],
|
||||||
buildingFunction: [],
|
buildingFunction: [],
|
||||||
|
buildingNature: [],
|
||||||
constructionStage: [],
|
constructionStage: [],
|
||||||
planningForm: [],
|
planningForm: [],
|
||||||
time: [],
|
time: [],
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user