diff --git a/src/assets/images/map/xhyl.png b/src/assets/images/map/xhyl.png new file mode 100644 index 0000000..129364f Binary files /dev/null and b/src/assets/images/map/xhyl.png differ diff --git a/src/view/img_map/map.js b/src/view/img_map/map.js index a635533..d2fff43 100644 --- a/src/view/img_map/map.js +++ b/src/view/img_map/map.js @@ -50,6 +50,7 @@ import js_kindergarten from "@/assets/images/map/js_kindergarten.png" import js_gx from "@/assets/images/map/js_gx.png" import zcd_map from "@/assets/images/map/zcd_map.png" import st_map from "@/assets/images/map/st_map.png" +import xhyl from "@/assets/images/map/xhyl.png" export { zcd, dqfwzx, @@ -100,5 +101,5 @@ export { js_high_school, js_junior_high, js_kindergarten, js_gx, zcd_map, - st_map + st_map,xhyl } \ No newline at end of file diff --git a/src/view/sy_map.vue b/src/view/sy_map.vue index 9610599..d42c1c5 100644 --- a/src/view/sy_map.vue +++ b/src/view/sy_map.vue @@ -501,6 +501,7 @@ import { js_gx, zcd_map, st_map, + xhyl, } from "./img_map/map.js"; //#region 弹框模板 const dialogModelConfig = reactive({ @@ -1160,7 +1161,17 @@ const onWork = () => { 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 = "";