wujingjing
2025-02-26 08c6ecf506bfc7003894775fe57d98d9b11f3d9e
src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/advanceSearch/index.vue
@@ -1,5 +1,5 @@
<template>
   <div class="bg-white rounded-lg p-4 flex flex-col w-[340px] gap-4">
   <div class="bg-white rounded-lg p-4 flex flex-col w-[370px] gap-4">
      <!-- 头部 -->
      <div class="flex items-center flex-0">
         <span class="ywifont ywicon-guanbi cursor-pointer mr-1.5" @click="handleClose"></span>
@@ -68,7 +68,6 @@
                  <!-- 属性选择 -->
                  <el-form-item prop="property" class="!mb-0">
                     <el-tree-select
                        v-model="tmpCondition.property"
                        :data="propertyGroupList"
                        placeholder="属性"
@@ -79,6 +78,7 @@
                        default-expand-all
                        @change="handlePropertyChange"
                        :props="propertyGroupProps"
                        popper-class="custom-popper_w-180"
                     ></el-tree-select>
                  </el-form-item>
@@ -113,9 +113,9 @@
                  class="flex items-center text-blue-400 py-2 px-4 rounded-md"
                  :style="{ borderBottom: index !== queryForm.conditions.length - 1 ? '1px solid #e0e0e0' : 'none' }"
               >
                  <span>{{ propertyMapRow[condition.vprop]?.title }}</span>
                  <span>{{ operatorMap[condition.operator]?.label }}</span>
                  <span>{{ condition.value }}</span>
                  <span>{{ `"${propertyMapRow[condition.vprop]?.title}"` }}</span>
                  <span> &nbsp;&nbsp;&nbsp;{{ operatorMap[condition.operator]?.label }}&nbsp;&nbsp;&nbsp; </span>
                  <span>{{ `"${condition.value}"` }}</span>
                  <el-button type="danger" link @click="removeCondition(index)" class="!flex !items-center ml-auto">
                     <span class="ywifont ywicon-shanchu"></span>
                  </el-button>
@@ -174,10 +174,11 @@
import type { PropType } from 'vue';
import { computed, ref } from 'vue';
import * as XLSX from 'xlsx';
import type { OLMap } from '/@/model/map/OLMap';
import { advanceSearchMapElementByPost } from '/@/api/map';
import type { OLMap } from '/@/model/map/OLMap';
import { formatDate } from '/@/utils/formatTime';
import { travelTree } from '/@/utils/util';
import { deepClone } from '/@/utils/other';
const props = defineProps({
   olMap: {
@@ -393,7 +394,7 @@
      case 'polygon':
         break;
   }
   const conditions = queryForm.value.conditions.map((item) => {
   const conditions = deepClone(queryForm.value.conditions).map((item) => {
      const id = item.vprop;
      const operate = item.operator;
      const row = getRowById(id);
@@ -407,7 +408,7 @@
   tableLoading.value = true;
   const res = await advanceSearchMapElementByPost({
      extent,
      max_count: 10,
      max_count: 100,
      time: formatDate(new Date()),
      otype: queryForm.value.otype,
      condtions: JSON.stringify(conditions),
@@ -529,3 +530,11 @@
   }
}
</style>
<style lang="scss">
.custom-popper_w-180 {
   .el-tree {
      width: 180px !important;
   }
}
</style>