From 5255823630a7bc33066841e65c3cc6e236925e0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cyansj=E2=80=9D?= Date: Fri, 17 Jan 2025 11:49:21 +0800 Subject: [PATCH] =?UTF-8?q?gx:=E5=B7=A1=E5=9B=9E=E5=8C=BB=E7=96=97?= =?UTF-8?q?=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/images/map/xhyl.png | Bin 0 -> 5050 bytes src/view/img_map/map.js | 3 +- src/view/sy_map.vue | 137 ++++++++++++++++++++++++++++----- 3 files changed, 119 insertions(+), 21 deletions(-) create mode 100644 src/assets/images/map/xhyl.png diff --git a/src/assets/images/map/xhyl.png b/src/assets/images/map/xhyl.png new file mode 100644 index 0000000000000000000000000000000000000000..129364f3f1588d83d13ffafaff3fed8700755dfc GIT binary patch literal 5050 zcmV;r6GiNaP)Px|bV)=(RCr$Poe8*9#j(eKb>`j+qO3|FCTiRgH7+scefo?MHxdK|BDm!#ASxiZ zq7fC1Hwq>i#qeAZcQM8wU=RdcA}+)%-_zg{A1*N_#wg0Z!@V=7o^@vC-dWB}pEEO; zr{8D$@tu*b?ymlys_LrhK8^52DT{!7flqk^z5vJ}AzuLWSpulBQN7Lo$${drzX;zz z*-K$pgia_OA^2lu9l|=4wF2)Uys64t>hoIrKeD*7QT(lC8rocfe*CQVOe7gBaI~)+ z;XxNIF*^}Z1$$b_{ga0vzaK#wAg%_OAMZ{uif&b8h^B{Mps6Tz$m=jd)4xyDaBts*Dv$Yf+(5b*WHc zeIcXO_NR)9FlqG;Tz=tWIAw2C4*Ml#syfJe*fgvaq{)O<^8y0 z#|CKJ0zE9HJO*?N)7M<19LQD9UxY2&c}6(GG9QP&KtfmgFyN+R<@a$wiUrUm^YwUD zri-vm*dVSq9Jjvc1vmhVpt74pIQhoDGB+wnkpUX}xSl4${cY&e6!Gk`VJ-rR?ru?X9TE#uWrzSb%fw?9u< zp-B#$G*JFkYAz)usPS2?TeE@Z)aSd|;IUdj{@>dd>1d#WFLv(85sgPmGK{~H09`Og ze34kivj|?UQI25*<6;%iyWD`nPUF&- zVagZf;F|}?OJOTx-rreLYt@1L3HXnSW?8OLxQMrg`!ydhR)_!7buot&CgX}!?1I@k zQsIs$UAsiw<+!!4gME6yUSERkJ3#05(6L>5I ze_YSqS4Q13P^K2TDlPv%>{)H!X$|iIJ)-~=mnO^buHB%|H{k2t!E-tq=}~-zx0k^a zZ^3&jGb7htBA2f1%&zwzDVwu%%VY1{**aR3+j1+*CA^CC)e#Ex=m-P83Hw$F|6iBF zoHt{6)+ms7cKeFaWG2pVdXd~Hg> zgD=CYA6Bk%CHVd4mQUF8&XMW#NQ(rWH%kYrFryOGU2Trt3y$5p_O{q0XTcI!@TQA{ znDxToTYo6C@&Fn$OD%=bKTcOJBW-;h^K}@wZ=7D^)6V`Y{O;{m172=dBx3J#ZW|;6 zS^yd`S9hpy;zOW5Vg~`4%MaPR2aGUr=UXm1wh(lnzjE_{R*XQ4b>5EHmJi1+90 z4$#=A{99kW32s>gAFXx0mUMm3j&T0r&?PjNnWjm8x*^^81gxyhuGq3EgXtmXKBD_2 z;k77ix)NGhl{@9zaCjN%S+x;ve71NZgAM?*TlS{kS_U&-$>+*|zu<7_zFlcB6i;aF6;&MC7ez(*8j?^hUNHoxhbkll#$bQ2Fl>H zOqSoKadl|T`|JY)_X}t1S1-Y$cU$WU`!fmJF$0j`WN-x+s08P>72vB!ivITKFTkj%U78~nydTd12k?<`B5+E1^a}= zb+7yzriAQ%xn6L{Xp3dUZ}jh~>>46KMH1z*K~`_}VYeNMhnoBxys@;k%M%WOT?)1y zciSG?)ur2-fAs3VbEFzru@N49rPaRdw5%1e z*00sJKY}&Kg>ZR+PuJdhVyhJ7(qHr_tj_^x@}SB9x?ol-K$cvabV4y#Tas|@jQH~j zng3=3s9BXju;cm-Vf6n!7`6$C=x$mFZ|1~GW4;IGA?KED8}buqxe{k|w)9VYGVKsr z`DRbJ@W^6-Ov28eS(EuB<;;h4l?YvI7}qi%MZ$h^EbQF1nCZnI!0j)TKXGWT!AzDgkWt;c!rBZ(vfiWNGOHS0O+b zKUz8meaP3~EZg%9DKGyErYv%28(bzsl@Db2gZc)-K2ZR2si5^SV1MXe!VfYpcfu2} zVnaA<*B+NIK?YE6$-XdKB`-auw4*rZb$Bc+c#3JXRas&HEinHsV5DfB3umyLr`@v? zTvsOT_Td`1;py~_MPZq6d@Dc}uN6v=(SNlIT-v*QWPimRSi072q$5Q4Ps$n7bTY#E zmDr%d31;8$_ aK&kRk1|-Yf1?*X*PbxUaX9ajb!kZ|RJX8nsr{Wvrh(JBOuECy zzyDA0!r#)IRANJO_uWv=Hwo(X=?VDf0u76Kf~yn*mi?R1KRu~(#lSI;KF;KXN{zo~ zcR23|=vX2{kR8L+>dLv0%pCr8*-V#2+1CLw>^^O;9;*RIzAmc#r0Mqm3XDD4-Dcfp zxMLB#@liOfN#p4UyHl>#deSrSnuRB|DNXG*(=|xB4tqeKQ|RSF)FrZod>KFoeAUgZ zEiTW$4KKc%&J!iPv<*9EFW4tS(%wdR^#izhq5E5pTy7j1^WwB&a##S+kO%bYPve$G z7eMZ*=2KV(@S6Uu`|WYtN2NE9`>Hu$D_^38eCBzWD$kjqAe zwKr9}xOeS04YOmJ^xgC{yq?)%%`>vD36-f&z=8LlA+NOTte$?KzN#90$5rz5gzF8I z8gKBoq5u9>a9gJ7oY!E+%V`3aQFd{VGruLj8ZLqJ+zQaWda0$8U7b`?Zznj;KPo(K zs-(Yco0s2*$r-y-O+STg1+IEu>09W;c9u6n6 z)MU)5oG>rFVwE^a9}$OeGF1+E_-ttjb&G&F^&XvppWfwg89kTLE>*w7c5r1s_)_*0 z-iTAO@Z_4uTbFa!_=VlN=vA5f@Y#|VY8L@?+TFTGN&_j1b5kXqE z4z8UC%h$&pDKdS^hyA9XElYA+gsRdhcj;sc)LdOhQK@o$7)ay$LeI=zSSi}2Yhc2B zSh2qRwox_wC`_F`LPmwGXvJ&|xmCAsYR6k>`V)jw#U-*)MBJitQ#ad@4J#k4f{F8C zb!`qLgpOgKntQ@t51%bXCyYuOJPuvQkeHQ>O3Cz}8ls>*6e68Sh{9^@7 zoCg-rhS@~dG9Gn&QO^3!D7hz$zU*ps@>HD<9Gh(zS7PGqOKsZ@uISsk)A6n)zUHTw z@@$UC^+MvRScZP#Bcr5b-k~f&Cr;I!MS~cv!bLgiJ51AU(*T!zKmGg0r(jcNgD_q% zv8dOJ@U7`1CFjIIetW0CGkA)gBJgmSh{ur-YwuEtwsI>|{3PSJ7qqd#9-# z2hBNC);Y&?5oGI6yj{Pc@Ml#zhb7hn6?ELyQ8<>%s8(BFV!U-;f3AT>l{k%VjU_6s z1QybJ!cS+8k;bUtWM6U|`hfO_x2PTZ91_>)#vZ832DvX#;n%az{ZbFs^c^29UsA+1!Zo5_?+d->o-g)kd)1|802wF! zZ_*=4Fkdy=so5FMeA$Smwg`OtY6N4svT5&+v2 zAY-WSje2_K?z37;l5cmB&A&wQHWn%Yp9W>1Pc)s82^t zU!k1zloTFz^QA9#k(8f#g6}0b6k!A!ZVNT|be%i>6n_v?N&DW;%RJ4u@=5p-ceQY>z4+8CG^hk;oIVzhchzUfGgrupxIjghAXPc)It~=!Fj2Z8tXE;9nAi)O6`BmF zR0g1gNsW?HkCdOp_rUi}iV|o7{G^Y19%?|5psy&`1`=X>Gd|`aUxhN?fbo5#&cp6s z_cVog;Q8Qrb$H^ZflB!#44{NiZ@`EFq_kI4XQczmb}Fn?<@XD(U~$yseI$UsKT-Gn z^p3S3*$G%*Snc_&RamDU8xkotYJx2-0QoeV^wcLvX^K=z@C}fZsZ}``o_p$|^3q zHRg`~ncf%Zxnh^|tq@HEgs|2C@=eWz&7Mzlv)^ie{CZMZP#Ofk$-rqs>+DZEbi)?3 zu6-Jq`c2^%*)?yI1}M21*|r^$+=3(<5Cg73@tPDb3zpZMmLOBJdXIYFBuQ!SWdK5h zBRri|g0%4V2;Iy+K6AO8QBI1S67&T?4kg^0DpttK=R(B-&vz>r=_dO}XmUzJB4eCC z>qfeT=eAttGlO_$MQp`NwK|TUi)Fr0^lRxT`mGKlflp+sn3ws7Onk)ikk5ysSi)9S z6Ka@O9sFlfllH1xif5VTVC_fDd;VO78ZPI`>I;Ka-#l9T)G8CKS|~s!RIvQer=D~+ zY%ruO?~@VVN(G@zCRkNvi>GW-VeMx=Sd9YK=b6Uo2YsF=R}0?%4^m0)aed`q QDgXcg07*qoM6N<$f_ { h("div", { innerHTML: html, }), - images, + h( + "div", + { + style: { + display: "grid", + gridTemplateColumns: "repeat(2, 1fr)", + gap: "10px", + }, + }, + images + ), ] ); }; @@ -1179,6 +1190,8 @@ const yaosuTotal = ref([ { id: 37, name: "巡回医疗点", + url: "/api/ggfwyth/ysyzt/getXhyld", + tooltip: "mc", img: xhyld, wz: true, click: true, @@ -1761,6 +1774,26 @@ const table_column_list = reactive({ property: "dtfinishtime", }, ], + xhyld: [ + { + label: "序号", + width: "50", + type: "index", + align: "center", + }, + { + label: "名称", + property: "mc", + }, + { + label: "服务人数", + property: "fwrs", + }, + { + label: "服务时间", + property: "fwsj", + }, + ], }); // 表格分页 @@ -3530,6 +3563,7 @@ const changeys = (name, img_width) => { "便民服务中心", "共享教师", "共享食堂", + "巡回医疗点", ]; if (list.includes(name)) { getZyys(url, name, img, img_map, tooltip, img_width); @@ -3591,6 +3625,11 @@ const getZyys = (url, name, img, img_map, tooltip, img_width) => { let newStr = item.point.replace(",", ","); item.center = JSON.parse(newStr); break; + case "巡回医疗点": + item.img_map = xhyl; + item.center = [Number(item.jd), Number(item.wd)]; + break; + case "共享教师": item.img_map = item.gxjs == 1 ? js_gx : gxjsIcon(item.lb); item.center = [Number(item.jd), Number(item.wd)]; @@ -3599,6 +3638,7 @@ const getZyys = (url, name, img, img_map, tooltip, img_width) => { item.img_map = item.bj ? st_map : zcd_map; item.center = [Number(item.jd), Number(item.wd)]; break; + default: item.center = [Number(item.jd), Number(item.wd)]; break; @@ -3793,20 +3833,15 @@ const createZyys = (polygon, indexx, name, tooltip, img_width) => { gxjsName.value = polygon.xxmc; getSharedTeacher(); break; - // case "共享食堂": - // // console.log(polygon); - // // if (polygon.bj) { - // // gxstName.value = polygon.lnstmc; - // // getSharedCanteen(); - // // } - - // break; default: console.log(polygon); zyys_choose_cs.value = name; if (name == "共享食堂") { gxstName.value = polygon?.lnstmc || ""; // 共享食堂 } + if (name == "巡回医疗点") { + xhylName.value = polygon?.mc || ""; + } if (zyys_dk.value.length > 0) { zyys_dk.value.forEach((item, index) => { map.removeOverlay(item); // 清空资源要素地块 @@ -3840,6 +3875,7 @@ const getSharedTeacher = () => { http.get(`/api/ggfwyth/ysyzt/getGxjs?xxmc=${gxjsName.value}`).then((res) => { if (res.code == 200) { tableType.data = res.data; + pagination.pageSize = res.data.length; pagination.total = res.data.length; } else { ElMessage.warning({ @@ -3869,6 +3905,26 @@ const getSharedCanteen = () => { } }); }; +// 巡回医疗服务情况 +const xhylName = ref(""); +const getServicefall = () => { + tableType.title = "巡回医疗点"; + tableType.columns = table_column_list.xhyld; + dialogShow.value = true; + http + .get(`/api/ggfwyth/ysyzt/getXhylfwqk?mc=${xhylName.value}`) + .then((res) => { + if (res.code == 200) { + tableType.data = res.data; + pagination.pageSize = res.data.length; + pagination.total = res.data.length; + } else { + ElMessage.warning({ + message: res.message, + }); + } + }); +}; // 小区物业 const open_detail_zyys_xqwy = (xzjd, csq) => { tableType.title = "小区物业"; @@ -3939,6 +3995,7 @@ const loadCs_zyys = async (jdname, name) => { } } }; + //小区物业等 const loadCs_zyys2 = async (jdname, name) => { cssj.forEach((item, index) => { @@ -3960,22 +4017,57 @@ const loadCs_zyys2 = async (jdname, name) => { } } }; +/** + * 通过名称获取地理位置及范围 + * @param {*} name 名称 + * @param {*} key key + */ +const getGeography = async (name, key) => { + cssj.forEach((item, index) => { + let features = item.sj.features; + features.forEach((itemN, index) => { + if (itemN.properties.name == name) { + //地理范围 + zyys_total_dk[key].push({ + id: itemN.id, + name: itemN.properties.name, + point: itemN.geometry.coordinates[0], + }); + //中心点 + zyys_total_center[key].push({ + id: itemN.id, + name: itemN.properties.name, + jdname: itemN.properties.name, + center: itemN.properties.center, + }); + } + }); + }); +}; const get_dk_zyys = async (sj = [], xd, ssly, name) => { zyys_dk.value = []; zyys_center.value = []; zyys_data.value.point = []; zyys_data.value.center = []; - let zyys_jd = []; - sj.forEach((itemN) => { - if (!zyys_jd.includes(itemN.town)) { - zyys_jd.push(itemN.town); - } - }); - zyys_total_dk[name] = []; - zyys_total_center[name] = []; - zyys_jd.forEach((item) => { - loadCs_zyys(item, name); - }); + //街道 + if (name == "巡回医疗点") { + sj.forEach((item) => { + getGeography(item.committee, name); + }); + } else { + let zyys_jd = []; + sj.forEach((itemN) => { + if (!zyys_jd.includes(itemN.town)) { + zyys_jd.push(itemN.town); + } + }); + zyys_total_dk[name] = []; + zyys_total_center[name] = []; + zyys_jd.forEach((item) => { + loadCs_zyys(item, name); + }); + } + // zyysDk.forEach((dk) => { // let pdK = true; //判断sj有没有对应地块,没有就赋值0 // sj.forEach((item, index) => { @@ -4167,6 +4259,8 @@ const Xr_zyysNum = (polygon, indexx) => { } if (zyys_choose_cs.value == "共享食堂") { getSharedCanteen(); + } else if (zyys_choose_cs.value == "巡回医疗点") { + getServicefall(); } else { open_detail_zyys(); } @@ -4325,6 +4419,9 @@ const handlePagination = (current) => { case "共享食堂": getSharedCanteen(); break; + case "巡回医疗点": + getServicefall(); + break; default: if (tableType.type) { let age = "";