|
@@ -114,7 +114,7 @@
|
|
autocomplete="off"
|
|
autocomplete="off"
|
|
spellcheck="false"
|
|
spellcheck="false"
|
|
autocorrect="off"
|
|
autocorrect="off"
|
|
- placeholder="您可以试着这样问我,如“帮我在杭州市西湖区找几块面积35亩左右,人口相对密集的工业用地”"
|
|
|
|
|
|
+ placeholder="您可以试着这样问我,如“帮我在萧山区推荐一宗30亩左右的工业用地”"
|
|
autofocus=""
|
|
autofocus=""
|
|
>
|
|
>
|
|
</textarea>
|
|
</textarea>
|
|
@@ -128,46 +128,17 @@
|
|
class="left-panel"
|
|
class="left-panel"
|
|
v-if="showQuery"
|
|
v-if="showQuery"
|
|
>
|
|
>
|
|
- <div class="back-icon" @click="back"></div>
|
|
|
|
|
|
+ <!-- <div class="back-icon" @click="back"></div> -->
|
|
<div v-for="(item, index) in hzData" :key="index">
|
|
<div v-for="(item, index) in hzData" :key="index">
|
|
<div class="title" @click="resetAnswer(index)">
|
|
<div class="title" @click="resetAnswer(index)">
|
|
{{ item.name }}
|
|
{{ item.name }}
|
|
</div>
|
|
</div>
|
|
- <!-- <div class="jsz" v-if="item.loading">
|
|
|
|
- <img src="~@/assets/image/cyyd/jsz.png" />
|
|
|
|
-
|
|
|
|
- {{ hintText }}
|
|
|
|
- </div> -->
|
|
|
|
- <div class="steps">
|
|
|
|
- <div
|
|
|
|
- class="item"
|
|
|
|
- v-for="(item, index) in steps"
|
|
|
|
- :key="index"
|
|
|
|
- @click="toggle(index)"
|
|
|
|
- >
|
|
|
|
- <div class="name-panel">
|
|
|
|
- <img
|
|
|
|
- src="~@/assets/image/cyyd/wtfx-select.png"
|
|
|
|
- class="icon"
|
|
|
|
- v-if="index <= activeIndex"
|
|
|
|
- />
|
|
|
|
- <img
|
|
|
|
- src="~@/assets/image/cyyd/wtfx-normal.png"
|
|
|
|
- class="icon"
|
|
|
|
- v-else
|
|
|
|
- />
|
|
|
|
- <div class="name" :class="{ c: index > activeIndex }">
|
|
|
|
- {{ item.name }}
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- <div
|
|
|
|
- class="line"
|
|
|
|
- v-if="index != steps.length - 1"
|
|
|
|
- :class="{ checked: index < activeIndex }"
|
|
|
|
- ></div>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <div class="jsz" v-if="item.loading">
|
|
|
|
+ <img src="~@/assets/image/cyyd/jsz.png" />
|
|
|
|
+ {{ hintText }}
|
|
</div>
|
|
</div>
|
|
- <div class="tab-panel" v-if="false">
|
|
|
|
|
|
+
|
|
|
|
+ <!-- <div class="tab-panel" v-if="false">
|
|
<div
|
|
<div
|
|
class="item"
|
|
class="item"
|
|
v-for="(item, index) in tabs"
|
|
v-for="(item, index) in tabs"
|
|
@@ -179,43 +150,28 @@
|
|
</div>
|
|
</div>
|
|
<div class="line" v-if="index == tabIndex"></div>
|
|
<div class="line" v-if="index == tabIndex"></div>
|
|
</div>
|
|
</div>
|
|
|
|
+ </div> -->
|
|
|
|
+ <div class="tab-content" v-if="!showResult">
|
|
|
|
+ <vue-markdown-it
|
|
|
|
+ :source="item.summary"
|
|
|
|
+ :options="{
|
|
|
|
+ html: true,
|
|
|
|
+ linkify: true,
|
|
|
|
+ }"
|
|
|
|
+ />
|
|
</div>
|
|
</div>
|
|
- <!-- <div class="tab-content">
|
|
|
|
- <template
|
|
|
|
- v-if="index == hzData.length - 1 && item.loading == false"
|
|
|
|
- >
|
|
|
|
- <div class="btns-panel">
|
|
|
|
- <div class="left-btn">
|
|
|
|
- <img src="~@/assets/image/cyyd/share.png" class="icon" />
|
|
|
|
- <div class="diver"></div>
|
|
|
|
- <div class="alias">追问</div>
|
|
|
|
- <img src="~@/assets/image/cyyd/sdyj.png" class="icon" />
|
|
|
|
- <div class="diver"></div>
|
|
|
|
- <div class="alias">深度研究</div>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- </template>
|
|
|
|
- </div> -->
|
|
|
|
</div>
|
|
</div>
|
|
<template v-if="showResult">
|
|
<template v-if="showResult">
|
|
<div class="xg-title">
|
|
<div class="xg-title">
|
|
<img src="~@/assets/image/cyyd/fk.png" />
|
|
<img src="~@/assets/image/cyyd/fk.png" />
|
|
<div class="name">回答</div>
|
|
<div class="name">回答</div>
|
|
- <!-- <img src="~@/assets/image/cyyd/xs.png" @click="showTableInfo" /> -->
|
|
|
|
</div>
|
|
</div>
|
|
<p>为您找到以下{{ xgdk ? xgdk.length : 0 }}个地块</p>
|
|
<p>为您找到以下{{ xgdk ? xgdk.length : 0 }}个地块</p>
|
|
<div class="table-panel">
|
|
<div class="table-panel">
|
|
- <!-- <div class="th">
|
|
|
|
- <div class="it xh">序号</div>
|
|
|
|
- <div class="it">名称</div>
|
|
|
|
- <div class="it">面积(亩)</div>
|
|
|
|
- <div class="it text">单价(万元/m²)</div>
|
|
|
|
- <div class="it xh">得分</div>
|
|
|
|
- <div class="it xh">操作</div>
|
|
|
|
- </div> -->
|
|
|
|
<template v-if="xgdk && xgdk.length > 0">
|
|
<template v-if="xgdk && xgdk.length > 0">
|
|
<div
|
|
<div
|
|
class="dkitem"
|
|
class="dkitem"
|
|
|
|
+ :class="{ dkitemchecked: i == dkIndex }"
|
|
@mouseover="mouseover(i)"
|
|
@mouseover="mouseover(i)"
|
|
@mouseout="mouseout(i)"
|
|
@mouseout="mouseout(i)"
|
|
@click="showDetailModal(citem, i)"
|
|
@click="showDetailModal(citem, i)"
|
|
@@ -226,15 +182,8 @@
|
|
<div class="content">
|
|
<div class="content">
|
|
<h3>{{ citem.name }}</h3>
|
|
<h3>{{ citem.name }}</h3>
|
|
<p>
|
|
<p>
|
|
- 面积:{{
|
|
|
|
- citem.area ? (citem.area * 0.0015).toFixed(2) : "-"
|
|
|
|
- }}亩 单价:{{
|
|
|
|
- citem.unit_price ? citem.unit_price : "-"
|
|
|
|
- }}万元/m² 得分:{{
|
|
|
|
- citem.comprehensive_score
|
|
|
|
- ? citem.comprehensive_score
|
|
|
|
- : "-"
|
|
|
|
- }}
|
|
|
|
|
|
+ 面积:{{ citem.dkmj ? citem.dkmj.toFixed(2) : "-" }}亩
|
|
|
|
+ 土地用途:{{ citem.tdyt ? citem.tdyt : "-" }}
|
|
</p>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -323,7 +272,7 @@
|
|
@toggle="toggleInfoTab"
|
|
@toggle="toggleInfoTab"
|
|
@gowkt="goWkt"
|
|
@gowkt="goWkt"
|
|
@clear="clearMark"
|
|
@clear="clearMark"
|
|
- :item="activeItem"
|
|
|
|
|
|
+ :item="detailData"
|
|
></znxz-detail>
|
|
></znxz-detail>
|
|
<znxz-compare v-if="shwoCompare" :map="map" ref="compre"></znxz-compare>
|
|
<znxz-compare v-if="shwoCompare" :map="map" ref="compre"></znxz-compare>
|
|
<znxz-collect v-if="shwoCollect" @dkinfo="dkInfo"></znxz-collect>
|
|
<znxz-collect v-if="shwoCollect" @dkinfo="dkInfo"></znxz-collect>
|
|
@@ -416,7 +365,7 @@ export default {
|
|
name: "请帮我在杭州市萧山机场附近推荐几块总价不超过2000万的工业用地",
|
|
name: "请帮我在杭州市萧山机场附近推荐几块总价不超过2000万的工业用地",
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- name: "帮我在杭州市西湖区找几块面积35亩左右,人口相对密集的工业用地",
|
|
|
|
|
|
+ name: "帮我在萧山区推荐一宗30亩左右的工业用地",
|
|
},
|
|
},
|
|
{
|
|
{
|
|
name: "请帮我杭州市找几块在开发区内,园区主导产业为新能源的工业用地",
|
|
name: "请帮我杭州市找几块在开发区内,园区主导产业为新能源的工业用地",
|
|
@@ -435,7 +384,7 @@ export default {
|
|
markerLayer: null,
|
|
markerLayer: null,
|
|
questionModal: false,
|
|
questionModal: false,
|
|
showLegend: true,
|
|
showLegend: true,
|
|
- hintText: "检索中...",
|
|
|
|
|
|
+ hintText: "思考中...",
|
|
dkIndex: -1,
|
|
dkIndex: -1,
|
|
hoverDkIndex: -1,
|
|
hoverDkIndex: -1,
|
|
summary: "",
|
|
summary: "",
|
|
@@ -497,94 +446,89 @@ export default {
|
|
dkMarkerLayer: [],
|
|
dkMarkerLayer: [],
|
|
startTime: 0,
|
|
startTime: 0,
|
|
showIndentify: false,
|
|
showIndentify: false,
|
|
|
|
+ detailData: null,
|
|
legend: [
|
|
legend: [
|
|
|
|
+ // {
|
|
|
|
+ // name: "可利用资源",
|
|
|
|
+ // fill: "#e48b8b50",
|
|
|
|
+ // border: "#000000",
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // name: "永久基本农田",
|
|
|
|
+ // fill: "#fefe6050",
|
|
|
|
+ // border: "#d7d6d6",
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // name: "生态保护红线",
|
|
|
|
+ // fill: "#4d9757",
|
|
|
|
+ // border: "#4d9757",
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // name: "控规详细性规划",
|
|
|
|
+ // children: [
|
|
|
|
+ // {
|
|
|
|
+ // name: "工业",
|
|
|
|
+ // fill: "#66290080",
|
|
|
|
+ // border: "#66290080",
|
|
|
|
+ // },
|
|
|
|
+ // ],
|
|
|
|
+ // },
|
|
{
|
|
{
|
|
- name: "城镇开发边界",
|
|
|
|
- fill: "#e48b8b50",
|
|
|
|
- border: "#000000",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "永久基本农田",
|
|
|
|
- fill: "#fefe6050",
|
|
|
|
- border: "#d7d6d6",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "生态保护红线",
|
|
|
|
- fill: "#4d9757",
|
|
|
|
- border: "#4d9757",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "控规详细性规划",
|
|
|
|
|
|
+ name: "可利用资源",
|
|
children: [
|
|
children: [
|
|
{
|
|
{
|
|
- name: "工业",
|
|
|
|
- fill: "#66290080",
|
|
|
|
- border: "#66290080",
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "供地",
|
|
|
|
- children: [
|
|
|
|
- {
|
|
|
|
- name: "工业",
|
|
|
|
- fill: "",
|
|
|
|
- border: "rgb(0, 122,255)",
|
|
|
|
|
|
+ name: "公告地块",
|
|
|
|
+ fill: "green",
|
|
|
|
+ border: "green",
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- name: "住宅",
|
|
|
|
- fill: "",
|
|
|
|
- border: "rgb(255,170,0)",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "商业",
|
|
|
|
- fill: "",
|
|
|
|
- border: "rgb(230,0,0)",
|
|
|
|
|
|
+ name: "计划地块",
|
|
|
|
+ fill: "blue",
|
|
|
|
+ border: "blue",
|
|
},
|
|
},
|
|
|
|
+ // {
|
|
|
|
+ // name: "商业",
|
|
|
|
+ // fill: "",
|
|
|
|
+ // border: "rgb(230,0,0)",
|
|
|
|
+ // },
|
|
],
|
|
],
|
|
},
|
|
},
|
|
],
|
|
],
|
|
|
|
|
|
mockData: {
|
|
mockData: {
|
|
- summary: `### 1. 双桥单元XH020203-16地块
|
|
|
|
|
|
+ summary: `### 萧政工出(2020)2号
|
|
|
|
|
|
-- **行政区**: 西湖区
|
|
|
|
|
|
+- **行政区**: 萧山区
|
|
- **规划用途**: 工业用地
|
|
- **规划用途**: 工业用地
|
|
-- **用地面积**: 24027.0 平方米
|
|
|
|
-- **用地总价**: 3266.0 万元
|
|
|
|
-- **综合得分**: 90.0
|
|
|
|
-- **土地坐落**: 西湖区(双桥单元XH020203 -16地块,东至数治路,南至规划云梦路,西至规划支路,北至肖圣街)
|
|
|
|
|
|
+- **用地面积**: 24.9435亩
|
|
|
|
+- **土地坐落**: 东至规划工业用地,南至规划支路,西至规划工业用地,北至机场北辅路。
|
|
|
|
|
|
### 2. 双桥单元XH020203-15地块
|
|
### 2. 双桥单元XH020203-15地块
|
|
|
|
|
|
- **行政区**: 西湖区
|
|
- **行政区**: 西湖区
|
|
- **规划用途**: 工业用地
|
|
- **规划用途**: 工业用地
|
|
- **用地面积**: 21756.0 平方米
|
|
- **用地面积**: 21756.0 平方米
|
|
-- **用地总价**: 2955.0 万元
|
|
|
|
-- **综合得分**: 88.0
|
|
|
|
- **土地坐落**: 西湖区(双桥单元XH020203-15地块,东至规划支路,南至规划云梦路,西至智强路,北至肖圣街)`,
|
|
- **土地坐落**: 西湖区(双桥单元XH020203-15地块,东至规划支路,南至规划云梦路,西至智强路,北至肖圣街)`,
|
|
dks: [
|
|
dks: [
|
|
{
|
|
{
|
|
id: 7286,
|
|
id: 7286,
|
|
name: "双桥单元XH020203-16地块",
|
|
name: "双桥单元XH020203-16地块",
|
|
- county: "西湖区",
|
|
|
|
- location:
|
|
|
|
|
|
+ xzqmc: "西湖区",
|
|
|
|
+ tdyt: "工业用地",
|
|
|
|
+ address:
|
|
"西湖区(双桥单元XH020203 -16地块,东至数治路,南至规划云梦路,西至规划支路,北至肖圣街)",
|
|
"西湖区(双桥单元XH020203 -16地块,东至数治路,南至规划云梦路,西至规划支路,北至肖圣街)",
|
|
- total_price: 3266.0,
|
|
|
|
- unit_price: 0.14,
|
|
|
|
- area: 24027.0,
|
|
|
|
- comprehensive_score: 90.0,
|
|
|
|
|
|
+ dkmj: 24027.0,
|
|
|
|
+
|
|
center_wkt: "POINT(120.036582554545 30.3277712108271)",
|
|
center_wkt: "POINT(120.036582554545 30.3277712108271)",
|
|
},
|
|
},
|
|
{
|
|
{
|
|
id: 7285,
|
|
id: 7285,
|
|
name: "双桥单元XH020203-15地块",
|
|
name: "双桥单元XH020203-15地块",
|
|
- county: "西湖区",
|
|
|
|
- location:
|
|
|
|
|
|
+ xzqmc: "西湖区",
|
|
|
|
+ tdyt: "工业用地",
|
|
|
|
+ address:
|
|
"西湖区(双桥单元XH020203-15地块,东至规划支路,南至规划云梦路,西至智强路,北至肖圣街)",
|
|
"西湖区(双桥单元XH020203-15地块,东至规划支路,南至规划云梦路,西至智强路,北至肖圣街)",
|
|
- total_price: 2955.0,
|
|
|
|
- unit_price: 0.14,
|
|
|
|
- area: 21756.0,
|
|
|
|
|
|
+ dkmj: 21756.0,
|
|
comprehensive_score: 88.0,
|
|
comprehensive_score: 88.0,
|
|
center_wkt: "POINT(120.03392658277 30.3271936782775)",
|
|
center_wkt: "POINT(120.03392658277 30.3271936782775)",
|
|
},
|
|
},
|
|
@@ -813,8 +757,7 @@ export default {
|
|
if (this.inputText == "" || this.inputText == null) {
|
|
if (this.inputText == "" || this.inputText == null) {
|
|
// this.$Message.info("请输入");
|
|
// this.$Message.info("请输入");
|
|
// return;
|
|
// return;
|
|
- this.inputText =
|
|
|
|
- "帮我在杭州市西湖区找几块面积35亩左右,人口相对密集的工业用地";
|
|
|
|
|
|
+ this.inputText = "帮我在萧山区推荐一宗30亩左右的工业用地";
|
|
}
|
|
}
|
|
|
|
|
|
this.zwinputText = "";
|
|
this.zwinputText = "";
|
|
@@ -823,8 +766,11 @@ export default {
|
|
this.toggleTab(0);
|
|
this.toggleTab(0);
|
|
},
|
|
},
|
|
zwsend() {
|
|
zwsend() {
|
|
|
|
+ if (!this.zwinputText) {
|
|
|
|
+ this.zwinputText = "帮我在萧山区推荐一宗30亩左右的工业用地";
|
|
|
|
+ }
|
|
var item = { name: this.zwinputText, loading: true };
|
|
var item = { name: this.zwinputText, loading: true };
|
|
- this.hzData.push(item);
|
|
|
|
|
|
+ this.hzData = [item];
|
|
this.activeIndex = 0;
|
|
this.activeIndex = 0;
|
|
this.send();
|
|
this.send();
|
|
},
|
|
},
|
|
@@ -930,6 +876,7 @@ export default {
|
|
center: myCenter,
|
|
center: myCenter,
|
|
zoom: this.zoomLevel,
|
|
zoom: this.zoomLevel,
|
|
zoomControl: false,
|
|
zoomControl: false,
|
|
|
|
+ attributionControl: false, //去掉右下角的logo
|
|
});
|
|
});
|
|
// var tk = window.ApplicationConfig.tk;
|
|
// var tk = window.ApplicationConfig.tk;
|
|
var tk = "6dfd31e3b55a8466f34997aee5551a9c";
|
|
var tk = "6dfd31e3b55a8466f34997aee5551a9c";
|
|
@@ -1066,7 +1013,7 @@ export default {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
this.clearMark();
|
|
this.clearMark();
|
|
- // this.showDetail = true;
|
|
|
|
|
|
+ this.showDetail = true;
|
|
this.activeItem = item;
|
|
this.activeItem = item;
|
|
this.dkIndex = index;
|
|
this.dkIndex = index;
|
|
//高亮marker
|
|
//高亮marker
|
|
@@ -1139,7 +1086,7 @@ export default {
|
|
this.wt = this.inputText;
|
|
this.wt = this.inputText;
|
|
this.hzData = [];
|
|
this.hzData = [];
|
|
var item = { name: this.wt, loading: true };
|
|
var item = { name: this.wt, loading: true };
|
|
- this.hzData.push(item);
|
|
|
|
|
|
+ this.hzData = [item];
|
|
this.count = 0;
|
|
this.count = 0;
|
|
this.zwinputText = "";
|
|
this.zwinputText = "";
|
|
this.zhuiwen = false;
|
|
this.zhuiwen = false;
|
|
@@ -1182,28 +1129,19 @@ export default {
|
|
this.geojsonLayer = this.dkGeo.addTo(this.map);
|
|
this.geojsonLayer = this.dkGeo.addTo(this.map);
|
|
this.map.fitBounds(this.dkGeo.getBounds());
|
|
this.map.fitBounds(this.dkGeo.getBounds());
|
|
} else {
|
|
} else {
|
|
- // let query =
|
|
|
|
- // window.ApplicationConfig.landUrl +
|
|
|
|
- // "/0/query?where=id=" +
|
|
|
|
- // item.id +
|
|
|
|
- // "&" +
|
|
|
|
- // "geometryType=esriGeometryPoint&inSR=4490&spatialRel=esriSpatialRelIntersects&relationParam=&outFields=*&returnGeometry=true&" +
|
|
|
|
- // "maxAllowableOffset=&geometryPrecision=&outSR=&returnIdsOnly=false&returnCountOnly=false&orderByFields=&groupByFieldsForStatistics=&" +
|
|
|
|
- // "outStatistics=&returnZ=false&returnM=false&gdbVersion=&returnDistinctValues=false&f=json";
|
|
|
|
let query =
|
|
let query =
|
|
window.ApplicationConfig.geoserverUrl +
|
|
window.ApplicationConfig.geoserverUrl +
|
|
"?service=WFS&version=1.0.0&request=GetFeature&typeName=" +
|
|
"?service=WFS&version=1.0.0&request=GetFeature&typeName=" +
|
|
window.ApplicationConfig.gdLayerName +
|
|
window.ApplicationConfig.gdLayerName +
|
|
- "&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=name='" +
|
|
|
|
- item.name +
|
|
|
|
- "'";
|
|
|
|
|
|
+ "&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=id=" +
|
|
|
|
+ item.name;
|
|
axios.get(query).then((data) => {
|
|
axios.get(query).then((data) => {
|
|
console.log(data);
|
|
console.log(data);
|
|
if (data.data.features.length < 1) {
|
|
if (data.data.features.length < 1) {
|
|
this.$Message.info("未查询到数据");
|
|
this.$Message.info("未查询到数据");
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
- this.land = data.data.features[0].attributes;
|
|
|
|
|
|
+ this.detailData = data.data.features[0].properties;
|
|
var geojson = data.data.features[0].geometry;
|
|
var geojson = data.data.features[0].geometry;
|
|
var geos = L.geoJSON(geojson, {
|
|
var geos = L.geoJSON(geojson, {
|
|
style: function (feature) {
|
|
style: function (feature) {
|
|
@@ -1220,28 +1158,18 @@ export default {
|
|
//获取地块信息
|
|
//获取地块信息
|
|
async getActiveItemGeometry(item) {
|
|
async getActiveItemGeometry(item) {
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
- // let query =
|
|
|
|
- // window.ApplicationConfig.landUrl +
|
|
|
|
- // "/0/query?where=id=" +
|
|
|
|
- // item.id +
|
|
|
|
- // "&" +
|
|
|
|
- // "geometryType=esriGeometryPoint&inSR=4490&spatialRel=esriSpatialRelIntersects&relationParam=&outFields=*&returnGeometry=true&" +
|
|
|
|
- // "maxAllowableOffset=&geometryPrecision=&outSR=&returnIdsOnly=false&returnCountOnly=false&orderByFields=&groupByFieldsForStatistics=&" +
|
|
|
|
- // "outStatistics=&returnZ=false&returnM=false&gdbVersion=&returnDistinctValues=false&f=json";
|
|
|
|
let query =
|
|
let query =
|
|
window.ApplicationConfig.geoserverUrl +
|
|
window.ApplicationConfig.geoserverUrl +
|
|
"?service=WFS&version=1.0.0&request=GetFeature&typeName=" +
|
|
"?service=WFS&version=1.0.0&request=GetFeature&typeName=" +
|
|
window.ApplicationConfig.gdLayerName +
|
|
window.ApplicationConfig.gdLayerName +
|
|
- "&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=name='" +
|
|
|
|
- item.name +
|
|
|
|
- "'";
|
|
|
|
|
|
+ "&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=id=" +
|
|
|
|
+ item.name;
|
|
axios.get(query).then((data) => {
|
|
axios.get(query).then((data) => {
|
|
- console.log(data);
|
|
|
|
if (data.data.features.length < 1) {
|
|
if (data.data.features.length < 1) {
|
|
- this.dkGeo = null;
|
|
|
|
- this.dkGeojson = null;
|
|
|
|
|
|
+ this.$Message.info("未查询到数据");
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
+ this.detailData = data.data.features[0].properties;
|
|
var geojson = data.data.features[0].geometry;
|
|
var geojson = data.data.features[0].geometry;
|
|
var geos = L.geoJSON(geojson, {
|
|
var geos = L.geoJSON(geojson, {
|
|
style: function (feature) {
|
|
style: function (feature) {
|
|
@@ -1250,6 +1178,7 @@ export default {
|
|
});
|
|
});
|
|
this.dkGeo = geos;
|
|
this.dkGeo = geos;
|
|
this.dkGeoJson = geojson;
|
|
this.dkGeoJson = geojson;
|
|
|
|
+
|
|
resolve();
|
|
resolve();
|
|
});
|
|
});
|
|
});
|
|
});
|
|
@@ -1494,7 +1423,8 @@ export default {
|
|
send: _.debounce(async function () {
|
|
send: _.debounce(async function () {
|
|
let that = this;
|
|
let that = this;
|
|
this.showResult = false;
|
|
this.showResult = false;
|
|
- this.radarShow = true;
|
|
|
|
|
|
+ //不显示查询时地图上的雷达扫描效果
|
|
|
|
+ this.radarShow = false;
|
|
this.zhuiwen = false;
|
|
this.zhuiwen = false;
|
|
if (this.eventSource) {
|
|
if (this.eventSource) {
|
|
this.eventSource.close();
|
|
this.eventSource.close();
|
|
@@ -1516,13 +1446,12 @@ export default {
|
|
this.activeIndex = 0;
|
|
this.activeIndex = 0;
|
|
var question = this.wt.trim();
|
|
var question = this.wt.trim();
|
|
if (this.zwinputText != "") {
|
|
if (this.zwinputText != "") {
|
|
- question = question + ",其中" + this.zwinputText.trim();
|
|
|
|
|
|
+ //追问的时候,暂时不用历史数据
|
|
|
|
+ // question = question + ",其中" + this.zwinputText.trim();
|
|
|
|
+ question = this.zwinputText.trim();
|
|
}
|
|
}
|
|
let mock = false;
|
|
let mock = false;
|
|
- if (
|
|
|
|
- question ===
|
|
|
|
- "帮我在杭州市西湖区找几块面积35亩左右,人口相对密集的工业用地"
|
|
|
|
- ) {
|
|
|
|
|
|
+ if (question === "帮我在萧山区推荐一宗30亩左右的工业用地") {
|
|
mock = true;
|
|
mock = true;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1539,7 +1468,7 @@ export default {
|
|
this.summary = "";
|
|
this.summary = "";
|
|
this.xgdk = [];
|
|
this.xgdk = [];
|
|
this.activeIndex = 0;
|
|
this.activeIndex = 0;
|
|
- this.hintText = "检索中...";
|
|
|
|
|
|
+ this.hintText = "思考中...";
|
|
this.messages.push({
|
|
this.messages.push({
|
|
id: uuid(),
|
|
id: uuid(),
|
|
content: question,
|
|
content: question,
|
|
@@ -1665,7 +1594,7 @@ export default {
|
|
}
|
|
}
|
|
|
|
|
|
if (
|
|
if (
|
|
- agentName === "summary" &&
|
|
|
|
|
|
+ agentName != "summary" &&
|
|
lastChoice.role === "assistant" &&
|
|
lastChoice.role === "assistant" &&
|
|
!executed
|
|
!executed
|
|
) {
|
|
) {
|
|
@@ -1679,7 +1608,7 @@ export default {
|
|
});
|
|
});
|
|
}
|
|
}
|
|
if (agentName === "summary" && executed && execRes) {
|
|
if (agentName === "summary" && executed && execRes) {
|
|
- T.summary = execRes;
|
|
|
|
|
|
+ // T.summary = execRes;
|
|
T.showResult = true;
|
|
T.showResult = true;
|
|
T.radarShow = false;
|
|
T.radarShow = false;
|
|
T.loading = false;
|
|
T.loading = false;
|
|
@@ -1689,9 +1618,9 @@ export default {
|
|
.replaceAll("\n```\n", "");
|
|
.replaceAll("\n```\n", "");
|
|
exec_res = JSON.parse(exec_res);
|
|
exec_res = JSON.parse(exec_res);
|
|
var dk = exec_res;
|
|
var dk = exec_res;
|
|
- dk.sort(function (a, b) {
|
|
|
|
- return b.comprehensive_score - a.comprehensive_score;
|
|
|
|
- });
|
|
|
|
|
|
+ // dk.sort(function (a, b) {
|
|
|
|
+ // return b.comprehensive_score - a.comprehensive_score;
|
|
|
|
+ // });
|
|
T.xgdk = dk;
|
|
T.xgdk = dk;
|
|
T.clearMark();
|
|
T.clearMark();
|
|
T.showXgdkCenterPoint();
|
|
T.showXgdkCenterPoint();
|
|
@@ -1913,7 +1842,7 @@ export default {
|
|
position: absolute;
|
|
position: absolute;
|
|
right: 17px;
|
|
right: 17px;
|
|
width: 168px;
|
|
width: 168px;
|
|
- height: 360px;
|
|
|
|
|
|
+ // height: 360px;
|
|
background: #ffffff;
|
|
background: #ffffff;
|
|
border-radius: 10px;
|
|
border-radius: 10px;
|
|
cursor: pointer;
|
|
cursor: pointer;
|
|
@@ -2247,14 +2176,12 @@ export default {
|
|
width: 100%;
|
|
width: 100%;
|
|
height: calc(100% - 260px);
|
|
height: calc(100% - 260px);
|
|
position: relative;
|
|
position: relative;
|
|
- .text {
|
|
|
|
- margin: 31px 0px 28px 5px;
|
|
|
|
- font-family: Microsoft YaHei;
|
|
|
|
- font-weight: 400;
|
|
|
|
- line-height: 30px;
|
|
|
|
- font-size: 16px;
|
|
|
|
- color: #666666;
|
|
|
|
- }
|
|
|
|
|
|
+ margin: 31px 0px 28px 5px;
|
|
|
|
+ font-family: Microsoft YaHei;
|
|
|
|
+ font-weight: 400;
|
|
|
|
+ line-height: 30px;
|
|
|
|
+ font-size: 16px;
|
|
|
|
+ color: #666666;
|
|
.spin {
|
|
.spin {
|
|
margin: 31px 0px 28px 5px;
|
|
margin: 31px 0px 28px 5px;
|
|
font-family: Microsoft YaHei;
|
|
font-family: Microsoft YaHei;
|
|
@@ -2590,6 +2517,9 @@ export default {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+.dkitemchecked {
|
|
|
|
+ border: 1px solid #007bff;
|
|
|
|
+}
|
|
.dkitem {
|
|
.dkitem {
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|