You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
hy-screen-2.0/docs/assets/data-aa09e6f1-1785726778446.js

1 lines
33 KiB

var H=Object.defineProperty,I=Object.defineProperties;var Z=Object.getOwnPropertyDescriptors;var $=Object.getOwnPropertySymbols;var q=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable;var P=(e,a,n)=>a in e?H(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,g=(e,a)=>{for(var n in a||(a={}))q.call(a,n)&&P(e,n,a[n]);if($)for(var n of $(a))U.call(a,n)&&P(e,n,a[n]);return e},w=(e,a)=>I(e,Z(a));import{d as J,N as R}from"./townshipBoundaries-8867fad4-1785726778446.js";import{g as X,h as V}from"./data-56996d99-1785726778446.js";const d=(e,a)=>e.reduce((n,o)=>n+Number(o[a]||0),0),t=(e,a=2)=>Number(Number(e||0).toFixed(a)),m={kpi:{projectCount:22,featureCount:29280,subjectFeatureCount:1478,controlPointCount:27802,areaWanMu:175.3693,lengthKm:1250.62,townshipCount:10},categories:[{name:"草地修复",subjectFeatureCount:1067,areaWanMu:168.0339,lengthKm:1238.18,projectCount:13},{name:"林地修复",subjectFeatureCount:244,areaWanMu:7.3354,lengthKm:0,projectCount:6},{name:"湿地修复",subjectFeatureCount:167,areaWanMu:0,lengthKm:12.44,projectCount:3}],measures:[{name:"草原改良",subjectFeatureCount:285,areaWanMu:84.2792,lengthKm:467.5,projectCount:8},{name:"人工种草",subjectFeatureCount:532,areaWanMu:29.1561,lengthKm:0,projectCount:13},{name:"封育治理",subjectFeatureCount:45,areaWanMu:21.2487,lengthKm:0,projectCount:1},{name:"围栏建设",subjectFeatureCount:223,areaWanMu:19.4235,lengthKm:660.88,projectCount:9},{name:"林草碳汇试点",subjectFeatureCount:11,areaWanMu:12.5759,lengthKm:0,projectCount:1},{name:"水源涵养",subjectFeatureCount:82,areaWanMu:5.6993,lengthKm:0,projectCount:1},{name:"人工种草/补播",subjectFeatureCount:46,areaWanMu:2.8162,lengthKm:0,projectCount:4},{name:"防风固沙林",subjectFeatureCount:6,areaWanMu:.1303,lengthKm:0,projectCount:1},{name:"草种繁育",subjectFeatureCount:4,areaWanMu:.04,lengthKm:0,projectCount:1},{name:"种草围栏",subjectFeatureCount:77,areaWanMu:0,lengthKm:109.81,projectCount:1},{name:"小型坝",subjectFeatureCount:8,areaWanMu:0,lengthKm:8.83,projectCount:1},{name:"微型坝",subjectFeatureCount:159,areaWanMu:0,lengthKm:3.61,projectCount:2}],years:[{name:2017,areaWanMu:.1412,lengthKm:0,projectCount:1},{name:2018,areaWanMu:.5608,lengthKm:0,projectCount:1},{name:2019,areaWanMu:12.513,lengthKm:0,projectCount:1},{name:2020,areaWanMu:35.9848,lengthKm:0,projectCount:2},{name:2021,areaWanMu:25.0755,lengthKm:467.5,projectCount:5},{name:2022,areaWanMu:72.024,lengthKm:656.05,projectCount:8},{name:2023,areaWanMu:29.07,lengthKm:114.64,projectCount:3},{name:"未知",areaWanMu:0,lengthKm:12.44,projectCount:2}],townships:[{name:"麦洼乡",areaWanMu:28.5019,lengthKm:84.28,projectCount:3},{name:"龙日镇",areaWanMu:15.8472,lengthKm:46.05,projectCount:2},{name:"安曲镇",areaWanMu:13.1168,lengthKm:0,projectCount:2},{name:"瓦切镇",areaWanMu:6.6824,lengthKm:214.41,projectCount:4},{name:"色地镇",areaWanMu:6.344,lengthKm:101.25,projectCount:3},{name:"刷经寺镇",areaWanMu:5.6528,lengthKm:126.26,projectCount:1},{name:"邛溪镇",areaWanMu:2.3127,lengthKm:101.39,projectCount:4},{name:"阿木乡",areaWanMu:1.34,lengthKm:59.5,projectCount:2},{name:"查尔玛乡",areaWanMu:.7001,lengthKm:37.56,projectCount:1}],projects:[{projectName:"阿坝州红原县2020年退牧还草工程项目",projectCategory:"草地修复",year:2020,areaWanMu:35.6232,lengthKm:0,measureTypes:["人工种草","围栏建设"],townships:[],subjectFeatureCount:73},{projectName:"四川省阿坝州若尔盖草原湿地水源涵养生态保护和修复项目(红原县部分)-2022年",projectCategory:"草地修复",year:2022,areaWanMu:21.5,lengthKm:172.31,measureTypes:["人工种草","围栏建设","种草围栏","草原改良"],townships:["刷经寺镇","龙日镇"],subjectFeatureCount:273},{projectName:"阿坝州红原县 2022 年第二批重点生态保护和修护治理项目-草原封育治理-700",projectCategory:"草地修复",year:2022,areaWanMu:21.2487,lengthKm:272.25,measureTypes:["围栏建设","封育治理"],townships:["瓦切镇","色地镇","邛溪镇"],subjectFeatureCount:90},{projectName:"四川省阿坝州 2023 年中央财政林业草原改革发展资金预算(第三批)——红原县草原生态修复项目",projectCategory:"草地修复",year:2023,areaWanMu:18.79,lengthKm:32.32,measureTypes:["人工种草","围栏建设","草原改良","草种繁育"],townships:["瓦切镇","麦洼乡"],subjectFeatureCount:102},{projectName:"阿坝州红原县2022年第二批重点生态保护和修护治理——红原县林草碳汇创新开发建设试点项目",projectCategory:"草地修复",year:2022,areaWanMu:12.5759,lengthKm:0,measureTypes:["林草碳汇试点"],townships:["安曲镇"],subjectFeatureCount:11},{projectName:"四川省红原县2019年草原生态修复治理项目退化草地治理和天然草原改良",projectCategory:"草地修复",year:2019,areaWanMu:12.513,lengthKm:0,measureTypes:["人工种草/补播","草原改良"],townships:[],subjectFeatureCount:25},{projectName:"阿坝州红原县2021年若尔盖—甘南草原湿地生态保护和修复项目-1880",projectCategory:"草地修复",year:2021,areaWanMu:11.0031,lengthKm:467.5,measureTypes:["人工种草","草原改良"],townships:[],subjectFeatureCount:229},{projectName:"2023 年度四川省阿坝州若尔盖草原湿地水源涵养生态保护和修复项目(红原县部分)-1315",projectCategory:"草地修复",year:2023,areaWanMu:10.28,lengthKm:82.32,measureTypes:["人工种草","围栏建设","草原改良"],townships:["查尔玛乡","麦洼乡"],subjectFeatureCount:50},{projectName:"阿坝州红原县 2022 年中央财政林业草原生态保护恢复(第二批)——草原生态修复治理补助项目-1972",projectCategory:"草地修复",year:2022,areaWanMu:8.2,lengthKm:113.37,measureTypes:["围栏建设","草原改良","人工种草"],townships:["色地镇","邛溪镇","阿木乡"],subjectFeatureCount:127},{projectName:"阿坝州红原县2021年省级草原生态保护恢复项目-1790",projectCategory:"草地修复",year:2021,areaWanMu:7,lengthKm:0,measureTypes:["人工种草","草原改良"],townships:[],subjectFeatureCount:16},{projectName:"阿坝州红原县 2021 年中央财政林业草原生态保护恢复项目-984",projectCategory:"草地修复",year:2021,areaWanMu:6.5,lengthKm:0,measureTypes:["草原改良","人工种草"],townships:[],subjectFeatureCount:14},{projectName:"红原县2022年度黄河上游水源涵养补给区综合治理项目实施方案(代作业设计)变更后最终版",projectCategory:"林地修复",year:2022,areaWanMu:5.6993,lengthKm:0,measureTypes:["水源涵养"],townships:["安曲镇","瓦切镇"],subjectFeatureCount:82},{projectName:"阿坝州红原县 2022 年第二批重点生态保护和修护治理——草原生态修复治理项目-1500",projectCategory:"草地修复",year:2022,areaWanMu:2,lengthKm:81.05,measureTypes:["人工种草","围栏建设"],townships:["瓦切镇","色地镇","麦洼乡"],subjectFeatureCount:53},{projectName:"阿坝州红原县 2022 年省级林业草原生态保护恢复——草原生态修复治理补助项目-888",projectCategory:"草地修复",year:2022,areaWanMu:.8,lengthKm:17.07,measureTypes:["人工种草","围栏建设"],townships:["阿木乡"],subjectFeatureCount:4},{projectName:"红原县2018年川西高原生态脆弱区综合治理项目",projectCategory:"林地修复",year:2018,areaWanMu:.5608,lengthKm:0,measureTypes:["人工种草","人工种草/补播"],townships:[],subjectFeatureCount:107},{projectName:"红原县2021年黄河上游水源涵养补给区生态综合治理项目",projectCategory:"林地修复",year:2021,areaWanMu:.5224,lengthKm:0,measureTypes:["人工种草/补播"],townships:["邛溪镇"],subjectFeatureCount:14},{projectName:"红原县2020年川西高原生态脆弱区综合治理项目",projectCategory:"林地修复",year:2020,areaWanMu:.3617,lengthKm:0,measureTypes:["人工种草","人工种草/补播"],townships:[],subjectFeatureCount:31},{projectName:"2017年川西高原生态脆弱区综合治理项目",projectCategory:"林地修复",year:2017,areaWanMu:.1412,lengthKm:0,measureTypes:["人工种草","防风固沙林"],townships:["邛溪镇"],subjectFeatureCount:8},{projectName:"红原县2021年人工造林封山育林项目",projectCategory:"林地修复",year:2021,areaWanMu:.05,lengthKm:0,measureTypes:["围栏建设"],townships:[],subjectFeatureCount:2},{projectName:"4980小型坝(1)(1)",projectCategory:"湿地修复",year:"未知",areaWanMu:0,lengthKm:8.83,measureTypes:["小型坝"],townships:[],subjectFeatureCount:8},{projectName:"红原县蓄水保湿工程-小型坝和微型坝(1)(1)",projectCategory:"湿地修复",year:2023,areaWanMu:0,lengthKm:3.61,measureTypes:["微型坝"],townships:[],subjectFeatureCount:59},{projectName:"4980微型坝成型(1)(1)",projectCategory:"湿地修复",year:2022,areaWanMu:0,lengthKm:0,measureTypes:["微型坝"],townships:[],subjectFeatureCount:100}]},E=["ecological-redline","natural-protected-area"];function N(e=[]){let a=e;if(a&&typeof a=="object"&&!Array.isArray(a)&&"value"in a&&(a=a.value),typeof a=="string")try{a=JSON.parse(a)}catch(n){a=[]}return(Array.isArray(a)?a:[]).map((n,o)=>({key:n.key||`${n.name||"统计项"}-${o}`,name:n.name||`统计项${o+1}`,value:t(n.value,2),unit:n.unit||"万亩",color:n.color,extra:n.extra||"",icon:n.icon||""}))}function G(e,a,n,o,r=""){return{key:e,name:a,value:t(n,o==="%"?1:2),unit:o,extra:r}}function K(e=[],a=d(e,"value")){return e.map(n=>w(g({},n),{extra:n.extra||`占比 ${t(Number(n.value||0)/Math.max(a,1)*100,1)}%`}))}function ee(e=[],a=!1){const n=new Map(J.map((o,r)=>[o,r]));return[...e].sort((o,r)=>{if(a)return Number(r.value||0)-Number(o.value||0);const u=n.has(o.name)?n.get(o.name):999,s=n.has(r.name)?n.get(r.name):999;return u-s||Number(r.value||0)-Number(o.value||0)})}function W(e={},a,n,o="万亩",r={}){const u=ee(N(e[a]),r.sortByValue===!0).filter(i=>Number(i.value)>0).map(i=>w(g({},i),{unit:i.unit||o}));if(u.length)return r.withPercent===!1?u:K(u);const s=Number(e[n]||0);return s>0?[G(`${a}-total`,"全县合计",s,o)]:[]}function k(e={},a,n,o,r="万亩",u=6){const s=N(e[a]).filter(y=>Number(y.value)>0).slice(0,u).map(y=>w(g({},y),{unit:y.unit||r}));if(s.length)return K(s);const i=Number(e[n]||0);return i>0?[G(`${a}-total`,o,i,r)]:[]}function z(e){return((e==null?void 0:e.rows)||[]).some(a=>Number(a.value)>0)}const ae=Object.freeze({"ecological-redline":{scopeKey:"ecological-redline",scopeName:"生态保护红线",scopeAreaWanMu:537.12,sourceFeatureCount:374,grasslandAreaWanMu:338.87,wetlandAreaWanMu:88.34,woodlandAreaWanMu:69.14,grasslandFreshYieldWanTon:84.83,wetlandFreshYieldWanTon:.54,grasslandMuYieldJin:500.66,wetlandMuYieldJin:12.18,grasslandVegetationCoverPercent:86,grasslandPatchCount:8061,wetlandPatchCount:3458,woodlandPatchCount:37868,grasslandDistribution:[{name:"邛溪镇",value:30.2,unit:"万亩"},{name:"刷经寺镇",value:5.75,unit:"万亩"},{name:"龙日镇",value:9.82,unit:"万亩"},{name:"安曲镇",value:35.4,unit:"万亩"},{name:"色地镇",value:42.52,unit:"万亩"},{name:"瓦切镇",value:94.25,unit:"万亩"},{name:"麦洼乡",value:66.61,unit:"万亩"},{name:"阿木乡",value:33.87,unit:"万亩"},{name:"查尔玛乡",value:20.45,unit:"万亩"}],wetlandDistribution:[{name:"邛溪镇",value:9.6,unit:"万亩"},{name:"刷经寺镇",value:2.8,unit:"万亩"},{name:"龙日镇",value:3.12,unit:"万亩"},{name:"安曲镇",value:7.2,unit:"万亩"},{name:"色地镇",value:15.22,unit:"万亩"},{name:"瓦切镇",value:24.6,unit:"万亩"},{name:"麦洼乡",value:14.8,unit:"万亩"},{name:"阿木乡",value:6.4,unit:"万亩"},{name:"查尔玛乡",value:4.6,unit:"万亩"}],woodlandDistribution:[{name:"邛溪镇",value:16.4,unit:"万亩"},{name:"刷经寺镇",value:3.2,unit:"万亩"},{name:"龙日镇",value:1.4,unit:"万亩"},{name:"安曲镇",value:14.8,unit:"万亩"},{name:"色地镇",value:6.9,unit:"万亩"},{name:"瓦切镇",value:4.7,unit:"万亩"},{name:"麦洼乡",value:9.8,unit:"万亩"},{name:"阿木乡",value:11.2,unit:"万亩"},{name:"查尔玛乡",value:.74,unit:"万亩"}],grasslandProductivity:[{name:"邛溪镇",value:487,unit:"斤/亩"},{name:"刷经寺镇",value:488,unit:"斤/亩"},{name:"龙日镇",value:509,unit:"斤/亩"},{name:"安曲镇",value:514,unit:"斤/亩"},{name:"色地镇",value:492,unit:"斤/亩"},{name:"瓦切镇",value:518,unit:"斤/亩"},{name:"麦洼乡",value:506,unit:"斤/亩"},{name:"阿木乡",value:503,unit:"斤/亩"},{name:"查尔玛乡",value:496,unit:"斤/亩"}],grasslandTypes:[{name:"高寒草甸",value:210.32,unit:"万亩"},{name:"山地草甸",value:61.45,unit:"万亩"},{name:"沼泽草甸",value:38.26,unit:"万亩"},{name:"高寒草原",value:21.84,unit:"万亩"},{name:"灌丛草甸",value:7,unit:"万亩"}],zoningStructure:[{name:"水源涵养",value:537.12,unit:"万亩"}],grasslandLevels:[{name:"5级草原",value:175.5,unit:"万亩"},{name:"4级草原",value:79.01,unit:"万亩"},{name:"6级草原",value:74.36,unit:"万亩"},{name:"7级草原",value:8.91,unit:"万亩"},{name:"8级草原",value:1.05,unit:"万亩"},{name:"3级草原",value:.03,unit:"万亩"}],woodlandTypes:[{name:"灌木林地",value:49.13,unit:"万亩"},{name:"乔木林地",value:16.61,unit:"万亩"},{name:"灌丛沼泽",value:2.48,unit:"万亩"},{name:"其他林地",value:.92,unit:"万亩"}],woodlandQuality:[{name:"4级",value:36.74,unit:"万亩"},{name:"3级",value:25.75,unit:"万亩"},{name:"5级",value:3.9,unit:"万亩"},{name:"未定级",value:2.49,unit:"万亩"},{name:"2级",value:.26,unit:"万亩"}],vegetationCoverBands:[{name:"80%-89%",value:226.68,unit:"万亩"},{name:"90%以上",value:112.19,unit:"万亩"}]},"natural-protected-area":{scopeKey:"natural-protected-area",scopeName:"自然保护地",scopeAreaWanMu:160.34,sourceFeatureCount:3,grasslandAreaWanMu:74.31,wetlandAreaWanMu:46.82,woodlandAreaWanMu:2.23,grasslandFreshYieldWanTon:21.67,wetlandFreshYieldWanTon:.31,grasslandMuYieldJin:583.23,wetlandMuYieldJin:13.27,grasslandVegetationCoverPercent:90.9,grasslandPatchCount:1637,wetlandPatchCount:1607,woodlandPatchCount:2066,grasslandDistribution:[{name:"邛溪镇",value:2.5,unit:"万亩"},{name:"安曲镇",value:1.9,unit:"万亩"},{name:"色地镇",value:16.22,unit:"万亩"},{name:"瓦切镇",value:32.07,unit:"万亩"},{name:"麦洼乡",value:19.66,unit:"万亩"},{name:"阿木乡",value:1.1,unit:"万亩"},{name:"查尔玛乡",value:.86,unit:"万亩"}],wetlandDistribution:[{name:"邛溪镇",value:4.8,unit:"万亩"},{name:"安曲镇",value:3.2,unit:"万亩"},{name:"色地镇",value:15.22,unit:"万亩"},{name:"瓦切镇",value:11.73,unit:"万亩"},{name:"麦洼乡",value:6.52,unit:"万亩"},{name:"阿木乡",value:2.5,unit:"万亩"},{name:"查尔玛乡",value:2.85,unit:"万亩"}],woodlandDistribution:[{name:"邛溪镇",value:.28,unit:"万亩"},{name:"安曲镇",value:.16,unit:"万亩"},{name:"色地镇",value:.73,unit:"万亩"},{name:"瓦切镇",value:.4,unit:"万亩"},{name:"麦洼乡",value:.54,unit:"万亩"},{name:"阿木乡",value:.08,unit:"万亩"},{name:"查尔玛乡",value:.04,unit:"万亩"}],grasslandProductivity:[{name:"邛溪镇",value:566,unit:"斤/亩"},{name:"安曲镇",value:579,unit:"斤/亩"},{name:"色地镇",value:572,unit:"斤/亩"},{name:"瓦切镇",value:596,unit:"斤/亩"},{name:"麦洼乡",value:584,unit:"斤/亩"},{name:"阿木乡",value:561,unit:"斤/亩"},{name:"查尔玛乡",value:575,unit:"斤/亩"}],grasslandTypes:[{name:"高寒草甸",value:42.65,unit:"万亩"},{name:"沼泽草甸",value:15.21,unit:"万亩"},{name:"山地草甸",value:10.48,unit:"万亩"},{name:"高寒草原",value:4.23,unit:"万亩"},{name:"灌丛草甸",value:1.74,unit:"万亩"}],zoningStructure:[{name:"核心保护区",value:121.44,unit:"万亩"},{name:"一般控制区",value:38.9,unit:"万亩"}],grasslandLevels:[{name:"4级草原",value:35.48,unit:"万亩"},{name:"5级草原",value:33.67,unit:"万亩"},{name:"6级草原",value:5.05,unit:"万亩"},{name:"7级草原",value:.08,unit:"万亩"},{name:"3级草原",value:.02,unit:"万亩"}],woodlandTypes:[{name:"灌木林地",value:1.27,unit:"万亩"},{name:"灌丛沼泽",value:.87,unit:"万亩"},{name:"乔木林地",value:.09,unit:"万亩"}],woodlandQuality:[{name:"未定级",value:.87,unit:"万亩"},{name:"4级",value:.81,unit:"万亩"},{name:"3级",value:.51,unit:"万亩"},{name:"5级",value:.04,unit:"万亩"}],vegetationCoverBands:[{name:"90%以上",value:55.12,unit:"万亩"},{name:"80%-89%",value:19.19,unit:"万亩"}]}});function ne(e="ecological-redline"){const a=e==="natural-protected-area"?"natural-protected-area":"ecological-redline";return structuredClone(ae[a])}function Y(e={},a="ecological-redline"){const n=ne(a),r=Number(e.scopeAreaWanMu)>0||Number(e.grasslandAreaWanMu)>0||Number(e.wetlandAreaWanMu)>0||Number(e.woodlandAreaWanMu)>0?g(g({},n),e):n;return["zoningStructure","grasslandLevels","woodlandTypes","woodlandQuality","vegetationCoverBands","grasslandDistribution","wetlandDistribution","woodlandDistribution","grasslandProductivity","grasslandTypes"].forEach(u=>{N(r[u]).length||(r[u]=n[u])}),r}function Me(e={},a="ecological-redline"){e=Y(e,a);const n=W(e,"grasslandDistribution","grasslandAreaWanMu","万亩"),o=W(e,"wetlandDistribution","wetlandAreaWanMu","万亩"),r=W(e,"woodlandDistribution","woodlandAreaWanMu","万亩",{sortByValue:!0}),u=W(e,"grasslandProductivity","grasslandMuYieldJin","斤/亩",{withPercent:!1}),s=k(e,"grasslandTypes","grasslandAreaWanMu","草地面积"),i=k(e,"grasslandLevels","grasslandAreaWanMu","草地面积"),y=k(e,"woodlandQuality","woodlandAreaWanMu","林地面积"),M=K([{key:`${a}-scope-grassland`,name:"草地资源",value:Number(e.grasslandAreaWanMu||0),unit:"万亩"},{key:`${a}-scope-wetland`,name:"湿地资源",value:Number(e.wetlandAreaWanMu||0),unit:"万亩"},{key:`${a}-scope-woodland`,name:"林地资源",value:Number(e.woodlandAreaWanMu||0),unit:"万亩"}].filter(_=>Number(_.value)>0));return{left:[{key:`${a}-grassland-distribution`,title:"草地分布",type:"column",variant:"plain",labelMode:"horizontal",scrollable:!1,span:1,rows:n},{key:`${a}-wetland-distribution`,title:"湿地面积",type:"rank",labelMode:"horizontal",scrollable:!1,span:1,rows:o},{key:`${a}-woodland-distribution`,title:"林地分布",type:"split",variant:"compact",span:1,rows:r},{key:`${a}-grassland-productivity`,title:"草地生产力",type:"line",fixedType:!0,labelMode:"horizontal",span:1,rows:u}].filter(z),right:[{key:`${a}-grassland-type`,title:"草原类型",type:"donut",variant:"ring",span:1,rows:s},{key:`${a}-grassland-level`,title:"草原级占比",type:"rose",span:1,rows:i},{key:`${a}-woodland-quality`,title:"林地质量",type:"heat",limit:6,span:1,rows:y},{key:`${a}-resource-structure`,title:"林草湿面积构成",type:"structure",span:1,rows:M}].filter(z)}}function be(e={},a="ecological-redline"){return e=Y(e,a),[{zh:`${a==="natural-protected-area"?"保护地":"红线"}面积`,value:t(e.scopeAreaWanMu,2),unit:"万亩",decimals:2,icon:"park"},{zh:"草地面积",value:t(e.grasslandAreaWanMu,2),unit:"万亩",decimals:2,icon:"grass-basic"},{zh:"湿地面积",value:t(e.wetlandAreaWanMu,2),unit:"万亩",decimals:2,icon:"wetland"},{zh:"林地面积",value:t(e.woodlandAreaWanMu,2),unit:"万亩",decimals:2,icon:"forest"}]}const p=[{name:"瓦切镇",protectedAreaWanMu:75.01,coreProtectionAreaWanMu:31.65,generalControlAreaWanMu:43.36,grasslandAreaWanMu:32.07,wetlandAreaWanMu:11.73,ecologyJobs:160,householdCount:1400,peopleCount:6375,yakCount:43459,livestockCount:45260,cover:85,villages:"唐日村、德香村、日干村、色永村、曲登塘社区"},{name:"麦洼乡",protectedAreaWanMu:66.61,coreProtectionAreaWanMu:28.1,generalControlAreaWanMu:38.51,grasslandAreaWanMu:19.66,wetlandAreaWanMu:6.52,ecologyJobs:179,householdCount:1049,peopleCount:4857,yakCount:35773,livestockCount:36776,cover:85,villages:"洞拉村、滚塘村"},{name:"色地镇",protectedAreaWanMu:20.98,coreProtectionAreaWanMu:8.85,generalControlAreaWanMu:12.13,grasslandAreaWanMu:42.52,wetlandAreaWanMu:15.22,ecologyJobs:39,householdCount:405,peopleCount:1692,yakCount:25947,livestockCount:26731,cover:86,villages:"让里村、茸塔玛村"}],l={name:"若尔盖国家公园红原区域",nationalParkTotalAreaWanMu:1250.4,hongyuanDelimitedAreaWanMu:162.55,totalAreaWanMu:162.55,grasslandAreaWanMu:94.25,wetlandAreaWanMu:33.47,woodlandAreaWanMu:null,woodlandDataStatus:"待接入",vegetationCoverage:t(d(p,"cover")/p.length,1),townCount:p.length,villageCount:p.reduce((e,a)=>e+String(a.villages||"").split("、").filter(Boolean).length,0),householdCount:d(p,"householdCount"),peopleCount:d(p,"peopleCount"),ecologyJobCount:d(p,"ecologyJobs"),yakCount:d(p,"yakCount"),livestockCount:d(p,"livestockCount")};l.otherProtectedAreaWanMu=t(l.totalAreaWanMu-l.grasslandAreaWanMu-l.wetlandAreaWanMu,2);const We=[{key:"park-national-area",name:"四川片区面积",value:l.nationalParkTotalAreaWanMu,unit:"万亩",icon:"park"},{key:"park-hongyuan-area",name:"红原县划定面积",value:l.hongyuanDelimitedAreaWanMu,unit:"万亩",icon:"park"},{key:"park-yak-count",name:"牦牛数量",value:l.yakCount,unit:"头",icon:"stack"}];p.map(e=>({key:e.name,name:e.name,value:t(e.grasslandAreaWanMu+e.wetlandAreaWanMu,2),unit:"万亩",extra:`草地 ${e.grasslandAreaWanMu} / 湿地 ${e.wetlandAreaWanMu}`}));p.map(e=>({key:`${e.name}-town`,name:e.name,value:t(e.grasslandAreaWanMu+e.wetlandAreaWanMu,2),unit:"万亩",extra:e.villages}));const te=[{key:"core-protection",name:"核心保护区",value:68.6,unit:"万亩",color:R.core.fillColor},{key:"general-control",name:"一般控制区",value:94,unit:"万亩",color:R.general.fillColor}],f=43.66,x=12.48,oe=t(f*(192.26/297.29),2),re=new Map(X.map(e=>[e.name,e])),ue={麦洼乡:[{name:"洞拉村",grassland:.632,wetland:.632,household:.5643,yak:.545,edible:.632,woodland:.632},{name:"滚塘村",grassland:.368,wetland:.368,household:.4357,yak:.455,edible:.368,woodland:.368}],瓦切镇:[{name:"唐日村",grassland:.3059,wetland:.3059,household:.1957,yak:.2843,edible:.3059,woodland:.3059},{name:"德香村",grassland:.2369,wetland:.2369,household:.2679,yak:.2848,edible:.2369,woodland:.2369},{name:"日干村",grassland:.1603,wetland:.1603,household:.2071,yak:.2107,edible:.1603,woodland:.1603},{name:"色永村",grassland:.2969,wetland:.2969,household:.2607,yak:.2202,edible:.2969,woodland:.2969},{name:"曲登塘社区",grassland:0,wetland:0,household:.0679,yak:0,edible:0,woodland:0}],色地镇:[{name:"让里村",grassland:.4623,wetland:.4623,household:.7309,yak:.6411,edible:.4623,woodland:.4623},{name:"茸塔玛村",grassland:.5377,wetland:.5377,household:.2691,yak:.3589,edible:.5377,woodland:.5377}]},c=p.map(e=>w(g({},e),{value:e.protectedAreaWanMu,unit:"万亩",segments:{core:e.coreProtectionAreaWanMu,general:e.generalControlAreaWanMu},householdCount:Number(e.householdCount||0),edibleGrasslandWanTon:t(Number(e.grasslandAreaWanMu||0)/Math.max(l.grasslandAreaWanMu,1)*oe,2)})),S=l.householdCount-d(c,"householdCount");S&&c[0]&&(c[0].householdCount+=S);c.forEach(e=>{const a=re.get(e.name),n=Number(a==null?void 0:a.bearingCapacity)||0,o=Number(a==null?void 0:a.livestockCapacity)||Number(e.livestockCount||e.yakCount||0),r=o-n,u=n?r/n*100:0,s=V(u);e.balanceAreaRange=Number(a==null?void 0:a.areaRange)||0,e.bearingCapacity=n,e.livestockCapacity=o,e.overloadCount=r,e.usageRate=n?t(o/n*100,6):0,e.overloadRate=t(u,6),e.balanceLevel=s.label,e.balanceScenarioVersion=(a==null?void 0:a.scenarioVersion)||"2026-sim-070",e.searchText=[e.name,`划定面积${e.protectedAreaWanMu}万亩`,`牦牛${e.yakCount}`,`牧户${e.householdCount}`,`超载率${e.overloadRate}%`].join(" ")});const b=d(c,"bearingCapacity"),T=d(c,"livestockCapacity"),j=T-b;l.balanceOverloadRate=b?t((T-b)/b*100,2):0;const h=[...c].sort((e,a)=>Number(a.overloadRate||0)-Number(e.overloadRate||0))[0],F=(e,a=d(e,"value"))=>e.map(n=>w(g({},n),{extra:n.extra||`占比 ${t(Number(n.value||0)/Math.max(a,1)*100,1)}%`}));F([{key:"park-scope-grassland",name:"草地",value:l.grasslandAreaWanMu,unit:"万亩"},{key:"park-scope-wetland",name:"湿地",value:l.wetlandAreaWanMu,unit:"万亩"},{key:"park-scope-other",name:"其他保护范围",value:l.otherProtectedAreaWanMu,unit:"万亩"}]);const C=({sourceKey:e,weightKey:a,unit:n="万亩",decimals:o=2,sortByValue:r=!0})=>{const u=c.flatMap(i=>(ue[i.name]||[]).map(M=>({key:`${i.name}-${M.name}-${e}`,name:M.name,town:i.name,value:t(Number(i[e]||0)*Number(M[a]||0),o),unit:n}))).filter(i=>Number(i.value)>0),s=r?u.sort((i,y)=>Number(y.value||0)-Number(i.value||0)):u;return F(s)};C({sourceKey:"wetlandAreaWanMu",weightKey:"wetland",sortByValue:!1});C({sourceKey:"grasslandAreaWanMu",weightKey:"grassland"});C({sourceKey:"householdCount",weightKey:"household",unit:"户",decimals:0});C({sourceKey:"yakCount",weightKey:"yak",unit:"头",decimals:0});C({sourceKey:"edibleGrasslandWanTon",weightKey:"edible",unit:"万吨"});C({sourceKey:"wetlandAreaWanMu",weightKey:"woodland"});const le=["瓦切镇","麦洼乡","色地镇"],v=e=>le.map(a=>e.find(n=>n.name===a)).filter(Boolean),se=v(c).map(e=>({key:`${e.name}-area`,name:e.name,value:e.protectedAreaWanMu,unit:"万亩",extra:`核心 ${e.coreProtectionAreaWanMu} / 一般 ${e.generalControlAreaWanMu}`}));v(c).map(e=>({key:`${e.name}-zoning`,name:e.name,value:e.protectedAreaWanMu,unit:"万亩",segments:{core:e.coreProtectionAreaWanMu,general:e.generalControlAreaWanMu}}));const ce=v(c).map(e=>({key:`${e.name}-grass-wet-area`,name:e.name,value:t(e.grasslandAreaWanMu+e.wetlandAreaWanMu,2),unit:"万亩",segments:{grassland:e.grasslandAreaWanMu,wetland:e.wetlandAreaWanMu}})),ie=v(c).map(e=>({key:`${e.name}-grass-wet-productivity`,name:e.name,value:t(e.grasslandAreaWanMu/Math.max(l.grasslandAreaWanMu,1)*f+e.wetlandAreaWanMu/Math.max(l.wetlandAreaWanMu,1)*x,2),unit:"万吨",segments:{grassland:t(e.grasslandAreaWanMu/Math.max(l.grasslandAreaWanMu,1)*f,2),wetland:t(e.wetlandAreaWanMu/Math.max(l.wetlandAreaWanMu,1)*x,2)}})),me=v(c).map(e=>({key:`${e.name}-yak`,name:e.name,value:e.yakCount,unit:"头",extra:`${t(e.yakCount/Math.max(l.yakCount,1)*100,1)}%`})),pe=v(c).map(e=>({key:`${e.name}-household`,name:e.name,value:e.householdCount,unit:"户",metricLabel:"牧户",ecologyJobs:e.ecologyJobs,peopleCount:e.peopleCount,extra:`公益岗位 ${e.ecologyJobs}`}));v(c).map(e=>({key:`${e.name}-balance`,name:e.name,value:e.overloadRate,unit:"%",status:e.balanceLevel,extra:`载畜 ${e.livestockCapacity}`}));const de=[{key:"park-balance-overload-rate",name:"超载率",value:l.balanceOverloadRate,unit:"%",status:V(l.balanceOverloadRate).label,color:"#24f6c4"}];t(b/1e4,2),t(T/1e4,2),j>=0,t(Math.abs(j)/1e4,2),j>=0,`${(h==null?void 0:h.name)||"重点乡镇"}`,t((h==null?void 0:h.overloadRate)||0,2),h!=null&&h.balanceLevel;const ge=v(c).map(e=>({key:`${e.name}-job`,name:e.name,value:e.ecologyJobs,unit:"户",color:e.name==="麦洼乡"?"#24f6c4":e.name==="瓦切镇"?"#32dcff":"#8bf7ff",extra:`牧户 ${e.householdCount}`}));v(c).map(e=>w(g({},e),{key:`${e.name}-ledger`,name:e.name,value:e.protectedAreaWanMu,unit:"万亩",canLocate:!0}));var L,D,B;const ye=[{zh:"四川片区面积",value:l.nationalParkTotalAreaWanMu,unit:"万亩",decimals:2,icon:"area"},{zh:"红原县划定面积",value:l.hongyuanDelimitedAreaWanMu,unit:"万亩",decimals:2,icon:"park"},{zh:"牦牛数量",value:l.yakCount,unit:"头",decimals:0,icon:"stack"},{zh:"牧户数量",value:l.householdCount,unit:"户",decimals:0,icon:"town"},{zh:"公益岗位",value:l.ecologyJobCount,unit:"户",decimals:0,icon:"certificate"},{zh:"瓦切镇面积",value:((L=c.find(e=>e.name==="瓦切镇"))==null?void 0:L.protectedAreaWanMu)||0,unit:"万亩",decimals:2,icon:"area"},{zh:"麦洼乡面积",value:((D=c.find(e=>e.name==="麦洼乡"))==null?void 0:D.protectedAreaWanMu)||0,unit:"万亩",decimals:2,icon:"area"},{zh:"色地镇面积",value:((B=c.find(e=>e.name==="色地镇"))==null?void 0:B.protectedAreaWanMu)||0,unit:"万亩",decimals:2,icon:"area"},{zh:"草地面积",value:l.grasslandAreaWanMu,unit:"万亩",decimals:2,icon:"leaf"},{zh:"湿地面积",value:l.wetlandAreaWanMu,unit:"万亩",decimals:2,icon:"wetland"}],he=[{zh:"修复项目",value:m.kpi.projectCount,unit:"个",decimals:0},{zh:"治理面积",value:m.kpi.areaWanMu,unit:"万亩",decimals:2},{zh:"工程长度",value:m.kpi.lengthKm,unit:"公里",decimals:2}],ke=[{zh:"项目库工程",value:m.kpi.projectCount,unit:"个",decimals:0},{zh:"可比对图斑",value:m.kpi.featureCount,unit:"个",decimals:0},{zh:"项目面积",value:m.kpi.areaWanMu,unit:"万亩",decimals:2},{zh:"工程长度",value:m.kpi.lengthKm,unit:"公里",decimals:2}];function je(e){return E.includes(e)?[]:e==="engineering-analysis"?[]:(e==="restoration"?he:ye.slice(0,5)).map((n,o)=>g({icon:n.icon||(o%2===0?"xiaoshoujine":"zongxiaoliang"),en:""},n))}const Ae={left:[{key:"park-town-grass-wet-area",title:"草地湿地面积分布",type:"stackColumn",variant:"parkSlim",showValue:!0,sharedScale:!0,unit:"万亩",segments:[{key:"grassland",name:"草地面积",color:"#24f6c4"},{key:"wetland",name:"湿地面积",color:"#8bf7ff"}],rows:ce},{key:"park-town-productivity",title:"草地湿地生产力",type:"line",fixedType:!0,labelMode:"horizontal",showValues:!0,unit:"万吨",rows:ie},{key:"park-town-yak",title:"乡镇牦牛数量",type:"bar",variant:"parkBar",rows:me},{key:"park-town-balance",title:"草畜平衡超载率",type:"balanceGaugeGrid",limit:1,rows:de}],right:[{key:"park-zoning-structure",title:"红原管控区结构",type:"donut",rows:F(te)},{key:"park-town-household",title:"牧户分布",type:"split",rows:pe},{key:"park-town-ecology-job",title:"公益岗位分布",type:"column",variant:"plain",rows:ge}]},A=new Map((m.townships||[]).filter(e=>/[乡镇]$/.test(String(e.name||""))).map(e=>[e.name,e])),O=J.map(e=>{var a,n,o;return{name:e,areaWanMu:((a=A.get(e))==null?void 0:a.areaWanMu)||0,lengthKm:((n=A.get(e))==null?void 0:n.lengthKm)||0,projectCount:((o=A.get(e))==null?void 0:o.projectCount)||0}}),Q=(m.projects||[]).map((e,a)=>{const n=Number(e.areaWanMu)>0,o=Number(e.lengthKm)>0,r=n?{value:t(e.areaWanMu,2),unit:"万亩",metric:"治理面积"}:o?{value:t(e.lengthKm,2),unit:"公里",metric:"工程长度"}:{value:e.subjectFeatureCount||0,unit:"个",metric:"主体要素"},u=(e.measureTypes||[]).join("、"),s=(e.townships||[]).join("、");return{key:e.id||e.projectName,index:a+1,name:e.projectName,projectName:e.projectName,category:e.projectCategory,year:e.year||"未知",areaWanMu:t(e.areaWanMu,4),lengthKm:t(e.lengthKm,2),measure:u,townships:s,subjectFeatureCount:e.subjectFeatureCount||0,value:r.value,unit:r.unit,metric:r.metric,extra:[e.year||"未知",u].filter(Boolean).join(" / "),searchText:[e.projectName,e.projectCategory,e.year,u,s].filter(Boolean).join(" ")}}),fe=Q.map((e,a)=>{const n=a%6,o=Math.floor(a/6),r=102.42+n*.045,u=32.55+o*.035,s=.018+Math.min(.024,Number(e.areaWanMu||0)/1200);return{type:"Feature",properties:{project_name:e.projectName,project_category:e.category,year:e.year,areaWanMu:e.areaWanMu,lengthKm:e.lengthKm,townships:e.townships,measure:e.measure},geometry:{type:"Polygon",coordinates:[[[r,u],[r+s,u+s*.22],[r+s*.82,u+s],[r-s*.16,u+s*.72],[r,u]]]}}}),Ne={left:[{key:"restoration-year-area",title:"治理面积分布",type:"line",labelMode:"horizontal",rows:(m.years||[]).map(e=>({key:e.name,name:`${e.name}`,value:t(e.areaWanMu,2),unit:"万亩",extra:`${e.projectCount||0}个项目`}))},{key:"restoration-town-area",title:"乡镇治理面积分布",type:"column",variant:"plain",labelMode:"horizontal",scrollable:!1,rows:O.map(e=>({key:e.name,name:e.name,value:t(e.areaWanMu,2),unit:"万亩",extra:`${t(e.lengthKm,2)}公里`}))},{key:"restoration-category",title:"修复类型占比",type:"donut",rows:(m.categories||[]).map(e=>({key:e.name,name:e.name,value:t(e.areaWanMu||e.lengthKm||e.subjectFeatureCount,2),unit:e.areaWanMu?"万亩":e.lengthKm?"公里":"个",extra:`${e.subjectFeatureCount}个图斑`}))},{key:"restoration-year-length",title:"年度工程长度",type:"bar",variant:"rankBar",labelMode:"horizontal",rows:(m.years||[]).filter(e=>Number(e.lengthKm)>0).map(e=>({key:e.name,name:`${e.name}`,value:t(e.lengthKm,2),unit:"公里",extra:`${e.projectCount||0}个项目`}))}],right:[{key:"restoration-measure-area",title:"修复措施统计",type:"structure",rows:(m.measures||[]).slice(0,8).map(e=>({key:e.name,name:e.name,value:t(e.areaWanMu||e.lengthKm||e.subjectFeatureCount,2),unit:e.areaWanMu?"万亩":e.lengthKm?"公里":"个",extra:`${e.projectCount}个项目`}))},{key:"restoration-year-project",title:"年度项目数量",type:"heat",labelMode:"horizontal",rows:(m.years||[]).filter(e=>e.name!=="未知").map(e=>({key:e.name,name:`${e.name}`,value:e.projectCount,unit:"个",extra:`${t(e.areaWanMu,2)}万亩`}))},{key:"restoration-projects",title:"重点项目库",type:"projectTable",span:2,columns:[{key:"name",label:"项目名称",field:"name",width:"58%",className:"business-project-col-name"},{key:"year",label:"年份",field:"year",width:"16%",fallback:"未知",align:"right",className:"business-project-col-year"},{key:"category",label:"类型",field:"category",width:"26%",className:"business-project-col-category"}],rows:Q}]},Ke={left:[],right:[]};function Te(e){return E.includes(e)?{status:"success",title:e==="natural-protected-area"?"自然保护地":"生态保护红线",metricLabel:"",unit:"",rows:[]}:e==="restoration"?{status:"success",title:"乡镇治理排行",metricLabel:"治理面积",unit:"万亩",rows:O.map(a=>({name:a.name,value:t(a.areaWanMu,2),unit:"万亩"}))}:e==="engineering-analysis"?{status:"success",title:"工程分析",metricLabel:"",unit:"",rows:[]}:{status:"success",title:"国家公园乡镇划定面积",scope:"town",hideTownNames:!1,onlyRankedTownLabels:!0,metricLabel:"划定面积",unit:"万亩",rows:se.map(a=>({name:a.name,value:a.value,unit:a.unit,metricLabel:"划定面积"}))}}export{Ke as a,Me as b,be as c,je as d,E as e,ye as f,Te as g,We as h,p as i,he as j,ke as k,fe as l,Ae as p,Ne as r};