Browse Source

fix: 果园档案切换联动,游客登录

刘秀芳 1 week ago
parent
commit
7bac1376fa

+ 3 - 2
src/components/fnHeader.vue

@@ -105,8 +105,9 @@ const getGardenList = () => {
         show3dFarm: true,
         location: "113.746646,22.970229",
     };
-    if(userInfo.phone === "游客"){
-      options.value = [{name: "从化井岗基地",organId:90263, wkt: "POINT(113.5081595 23.5320866)"}]
+    console.log('userInfo', userInfo);
+    if(userInfo.userName === "游客"){
+      options.value = [{name: "从化凤二基地",organId:90264, wkt: "POINT(113.67884027228604 23.511176408307904)"}]
     }else{
       VE_API.home.userGarden(params).then((res) => {
         options.value = res.data;

+ 7 - 3
src/views/Login.vue

@@ -89,10 +89,14 @@ const rules = {
 
 const store = useStore();
 const router = useRouter();
+// const form = reactive({
+//   "pwd": "",
+//   // "phone": "13797066447"
+//   "userName": "13797066447"
+// });
 const form = reactive({
-  "pwd": "",
-  // "phone": "13797066447"
-  "userName": "13797066447"
+  "pwd": "游客",
+  "userName": "游客"
 });
 const { userName, pwd } = toRefs(form);
 const ref_form = ref(null);

+ 29 - 23
src/views/home/album_compoents/albumCarousel.vue

@@ -113,6 +113,7 @@ eventBus.on("change:watermark",function(name){
 const outputBox = ref([
     { id: 1, name: "产量估计", value: "" },
     { id: 2, name: "高质果率", value: "" },
+    { id: 3, name: "雌花比例", value: "" },
 ]);
 
 const qualityBox = ref([
@@ -124,6 +125,7 @@ const showTag = ref(false)
 eventBus.on("click:point",function({farmId,sampleId, data}){
   sampleId = data.id;
   getSampleFiles(data.geoHashSample);
+  photoBaseData.value[0].value = data.pz;
     isLoadingImg.value = true
   let startDate = new Date(currentDate);
   startDate.setMonth(currentDate.getMonth() - 2);
@@ -158,26 +160,27 @@ function toggleActiveImg(index) {
 }
 
 const getSampleFiles = (geoHash) => {
-    photoList.value = [];
-    VE_API.mini_farm.getSampleFiles({ geoHashSample: geoHash }).then((res) => {
-        photoBaseData.value[0].value = res.data.meta_info.type_id;
-        photoBaseData.value[1].value = res.data.meta_info.crown + "平方米";
+    // photoList.value = [];
+    VE_API.mini_farm.getSampleFiles({ geoHashSample: geoHash }).then(({data}) => {
+        // photoBaseData.value[0].value = data.meta_info.type_id;
+        photoBaseData.value[1].value = data.meta_info.crown + "平方米";
+        photoBaseData.value[2].value = data.meta_info.branch_num ;
 
-    photoBaseData.value[3].value = res.meta_info.avg_age + "年"
-    photoList.value[0].key = res.meta_info.phenology_info.key
-    photoList.value[0].statement = res.meta_info.phenology_info.statement
-    photoList.value[1].key = res.meta_info.dp_alert_info.key
-    photoList.value[1].statement = res.meta_info.dp_alert_info.statement
-    photoList.value[2].key = res.meta_info.grow_alert_info.key
-    photoList.value[2].statement = res.meta_info.grow_alert_info.statement
-    photoList.value[3].key = res.meta_info.prescription_info.key
-    photoList.value[3].statement = res.meta_info.prescription_info.statement
-    outputBox.value[0].value = res.production_info.production
-    outputBox.value[1].value = res.production_info.quality.toFixed(0)
-    outputBox.value[2].value = res.production_info.cihua_ratio.toFixed(0)
-    qualityBox.value[0].value = res.ecology_info.ventilation
-    qualityBox.value[1].value = res.ecology_info.transmittance
-    qualityBox.value[2].value = res.ecology_info.dp_situation
+    photoBaseData.value[3].value = data.meta_info.age + "年"
+    photoList.value[0].key = data.meta_info.dp_alert_info.key
+    photoList.value[0].statement = data.meta_info.dp_alert_info.statement
+    photoList.value[1].key = data.meta_info.grow_alert_info.key
+    photoList.value[1].statement = data.meta_info.grow_alert_info.statement
+    photoList.value[2].key = data.meta_info.nutrition_info.key
+    photoList.value[2].statement = data.meta_info.nutrition_info.statement
+    photoList.value[3].key = data.meta_info.prescription_info.key
+    photoList.value[3].statement = data.meta_info.prescription_info.statement
+    outputBox.value[0].value = data.production_info.production + "斤"
+    outputBox.value[1].value = data.production_info.quality.toFixed(0) + "%"
+    outputBox.value[2].value = data.production_info.cihua_ratio.toFixed(0) + "%"
+    qualityBox.value[0].value = data.ecology_info.ventilation + "%"
+    qualityBox.value[1].value = data.ecology_info.transmittance + "%"
+    qualityBox.value[2].value = data.ecology_info.dp_situation+"级"
     });
 };
 
@@ -201,9 +204,10 @@ const photoBaseData = ref([
 ]);
 
 const photoList = ref([
-    {key: "病虫", statement: "病虫 2025年02月19日,发现毛毡病异常1级"},
-    {key: "异常", statement: "2025年03月17日,发现花量大异常3级"},
-    {key: "营养", statement: "无营养异常"},
+    {key: "病虫", statement: "--"},
+    {key: "异常", statement: "--"},
+    {key: "营养", statement: "--"},
+    {key: "农事", statement: "--"},
 ]);
 
 const activeOuput = ref(null);
@@ -250,6 +254,8 @@ function toggleQualityAcitve() {
         .file-title {
             font-size: 20px;
             color: #ffd489;
+            display: flex;
+            align-items: center;
             
             .tag {
                 border: 1px solid #FFD489;
@@ -260,7 +266,7 @@ function toggleQualityAcitve() {
                 height: 20px;
                 text-align: center;
                 line-height: 18px;
-                margin-left: 8px;
+                margin-left: 3px;
                 padding: 1px 4px;
             }
         }

+ 115 - 63
src/views/home/album_compoents/compareDialog.vue

@@ -84,19 +84,22 @@
                 </div>
             </div>
             <div class="compare-r">
-                <album-carousel-item
-                    lbum-carousel-item
-                    v-if="images2"
-                    :key="nameRef + '2' + farmId2 + sampleId2"
-                    :name="nameRef"
-                    :farmId="farmId2"
-                    :images="images2"
-                    :lock="lock"
-                ></album-carousel-item>
+                <div class="left-img">
+                    <album-carousel-item
+                        lbum-carousel-item
+                        v-if="images2"
+                        :key="nameRef + '2' + farmId2 + sampleId2"
+                        :name="nameRef"
+                        :farmId="farmId2"
+                        :images="images2"
+                        :lock="lock"
+                    ></album-carousel-item>
+                </div>
                 <div class="file-wrap">
                     <div class="file-title">
                         <img src="@/assets/images/common/chart-yellow.png" alt="" />
                         果树档案
+                        <span v-show="showTag2" class="tag">小农户</span>
                     </div>
                     <div class="box-wrap">
                         <div class="overview-file">
@@ -108,7 +111,7 @@
                                 </div>
                             </div>
                             <div class="list">
-                                <div class="list-item" v-for="item in photoList" :key="item.key">
+                                <div class="list-item" v-for="item in photoList2" :key="item.key">
                                     <div class="list-name">
                                         <img src="@/assets/images/common/title-icon.png" alt="" />
                                         {{ item.key }}
@@ -190,28 +193,26 @@ eventBus.on("change:watermark", function (name) {
 });
 
 const outputBox = ref([
-    { id: 1, name: "花穗率", value: "" },
-    { id: 2, name: "总枝条数", value: "" },
-    { id: 3, name: "开花率", value: "" },
-    { id: 4, name: "雌花比例", value: "" },
+    { id: 1, name: "产量估计", value: "" },
+    { id: 2, name: "高质果率", value: "" },
+    { id: 3, name: "雌花比例", value: "" },
 ]);
 
 const qualityBox = ref([
     { id: 5, name: "通风率", value: "" },
     { id: 6, name: "透光率", value: "" },
-    { id: 7, name: "地形条件", value: "" },
+    { id: 7, name: "病虫等级", value: "" },
 ]);
 const outputBox2 = ref([
-    { id: 1, name: "花穗率", value: "" },
-    { id: 2, name: "总枝条数", value: "" },
-    { id: 3, name: "开花率", value: "" },
-    { id: 4, name: "雌花比例", value: "" },
+    { id: 1, name: "产量估计", value: "" },
+    { id: 2, name: "高质果率", value: "" },
+    { id: 3, name: "雌花比例", value: "" },
 ]);
 
 const qualityBox2 = ref([
     { id: 5, name: "通风率", value: "" },
     { id: 6, name: "透光率", value: "" },
-    { id: 7, name: "地形条件", value: "" },
+    { id: 7, name: "病虫等级", value: "" },
 ]);
 
 const showTag = ref(false)
@@ -230,19 +231,31 @@ eventBus.on("showCompareDialog", function (compareArr) {
                     images.value = res.data;
                 }
             });
-            const data = item.data;
-            showTag.value = data.nonghu == 1 ? true : false;
-            photoBaseData.value[0].value = data.pz;
-            photoBaseData.value[1].value = data.sgbmj + "米";
-            photoBaseData.value[2].value = data.cl + "斤";
-            photoBaseData.value[3].value = data.spgl + "%";
-            outputBox.value[0].value = data.hsl ? data.hsl + "%" : "--";
-            outputBox.value[1].value = data.zzts ? data.zzts : "--";
-            outputBox.value[2].value = data.khl ? data.khl + "%" : "--";
-            outputBox.value[3].value = data.xhl ? data.xhl + "%" : "--";
-            qualityBox.value[0].value = data.tfl ? data.tfl + "%" : "--";
-            qualityBox.value[1].value = data.tgl ? data.tgl + "%" : "--";
-            qualityBox.value[2].value = data.dxtj ? data.dxtj + "%" : "--";
+            const dataItem = item.data;
+            showTag.value = dataItem.nonghu == 1 ? true : false;
+
+            VE_API.mini_farm.getSampleFiles({ geoHashSample: dataItem.geoHashSample }).then(({data}) => {
+                photoBaseData.value[0].value = dataItem.pz;
+                photoBaseData.value[1].value = data.meta_info.crown + "平方米";
+                photoBaseData.value[2].value = data.meta_info.branch_num ;
+
+            photoBaseData.value[3].value = data.meta_info.age + "年"
+            photoList.value[0].key = data.meta_info.dp_alert_info.key
+            photoList.value[0].statement = data.meta_info.dp_alert_info.statement
+            photoList.value[1].key = data.meta_info.grow_alert_info.key
+            photoList.value[1].statement = data.meta_info.grow_alert_info.statement
+            photoList.value[2].key = data.meta_info.nutrition_info.key
+            photoList.value[2].statement = data.meta_info.nutrition_info.statement
+            photoList.value[3].key = data.meta_info.prescription_info.key
+            photoList.value[3].statement = data.meta_info.prescription_info.statement
+            outputBox.value[0].value = data.production_info.production + "斤"
+            outputBox.value[1].value = data.production_info.quality.toFixed(0) + "%"
+            outputBox.value[2].value = data.production_info.cihua_ratio.toFixed(0) + "%"
+            qualityBox.value[0].value = data.ecology_info.ventilation + "%"
+            qualityBox.value[1].value = data.ecology_info.transmittance + "%"
+            qualityBox.value[2].value = data.ecology_info.dp_situation+"级"
+            });
+            // qualityBox.value[2].value = data.dxtj ? data.dxtj + "%" : "--";
         } else {
             farmId2.value = item.farmId
             sampleId2.value = item.sampleId
@@ -251,19 +264,30 @@ eventBus.on("showCompareDialog", function (compareArr) {
                     images2.value = res.data;
                 }
             });
-            const data = item.data;
-            showTag2.value = data.nonghu == 1 ? true : false;
-            photoBaseData2.value[0].value = data.pz;
-            photoBaseData2.value[1].value = data.sgbmj + "米";
-            photoBaseData2.value[2].value = data.cl + "斤";
-            photoBaseData2.value[3].value = data.spgl + "%";
-            outputBox2.value[0].value = data.hsl ? data.hsl + "%" : "--";
-            outputBox2.value[1].value = data.zzts ? data.zzts : "--";
-            outputBox2.value[2].value = data.khl ? data.khl + "%" : "--";
-            outputBox2.value[3].value = data.xhl ? data.xhl + "%" : "--";
-            qualityBox2.value[0].value = data.tfl ? data.tfl + "%" : "--";
-            qualityBox2.value[1].value = data.tgl ? data.tgl + "%" : "--";
-            qualityBox2.value[2].value = data.dxtj ? data.dxtj + "%" : "--";
+            const dataItem = item.data;
+            showTag2.value = dataItem.nonghu == 1 ? true : false;
+            
+            VE_API.mini_farm.getSampleFiles({ geoHashSample: dataItem.geoHashSample }).then(({data}) => {
+                photoBaseData2.value[0].value = dataItem.pz;
+                photoBaseData2.value[1].value = data.meta_info.crown + "平方米";
+                photoBaseData2.value[2].value = data.meta_info.branch_num ;
+
+                photoBaseData2.value[3].value = data.meta_info.age + "年"
+                photoList2.value[0].key = data.meta_info.dp_alert_info.key
+                photoList2.value[0].statement = data.meta_info.dp_alert_info.statement
+                photoList2.value[1].key = data.meta_info.grow_alert_info.key
+                photoList2.value[1].statement = data.meta_info.grow_alert_info.statement
+                photoList2.value[2].key = data.meta_info.nutrition_info.key
+                photoList2.value[2].statement = data.meta_info.nutrition_info.statement
+                photoList2.value[3].key = data.meta_info.prescription_info.key
+                photoList2.value[3].statement = data.meta_info.prescription_info.statement
+                outputBox2.value[0].value = data.production_info.production + "斤"
+                outputBox2.value[1].value = data.production_info.quality.toFixed(0) + "%"
+                outputBox2.value[2].value = data.production_info.cihua_ratio.toFixed(0) + "%"
+                qualityBox2.value[0].value = data.ecology_info.ventilation + "%"
+                qualityBox2.value[1].value = data.ecology_info.transmittance + "%"
+                qualityBox2.value[2].value = data.ecology_info.dp_situation+"级"
+            });
         }
     });
     //     isLoadingImg.value = true
@@ -299,47 +323,55 @@ function toggleActiveImg(index) {
 const photoBaseData = ref([
     {
         label: "品种",
-        value: "桂味",
+        value: "--",
     },
     {
-        label: "冠幅",
-        value: "10米",
+        label: "冠幅表面积",
+        value: "--",
     },
     {
-        label: "预估产量",
-        value: "2000斤",
+        label: "总枝条",
+        value: "--",
     },
     {
-        label: "高质果率",
-        value: "72棵",
+        label: "树龄",
+        value: "--",
     },
 ]);
 
 const photoBaseData2 = ref([
     {
         label: "品种",
-        value: "桂味",
+        value: "--",
     },
     {
-        label: "冠幅",
-        value: "10米",
+        label: "冠幅表面积",
+        value: "--",
     },
     {
-        label: "预估产量",
-        value: "2000斤",
+        label: "总枝条",
+        value: "--",
     },
     {
-        label: "高质果率",
-        value: "72棵",
+        label: "树龄",
+        value: "--",
     },
 ]);
 
 const photoList = ref([
-    {key: "病虫", statement: "病虫 2025年02月19日,发现毛毡病异常1级"},
-    {key: "异常", statement: "2025年03月17日,发现花量大异常3级"},
-    {key: "营养", statement: "无营养异常"},
+    {key: "病虫", statement: "--"},
+    {key: "异常", statement: "--"},
+    {key: "营养", statement: "--"},
+    {key: "农事", statement: "--"},
+]);
+const photoList2 = ref([
+    {key: "病虫", statement: "--"},
+    {key: "异常", statement: "--"},
+    {key: "营养", statement: "--"},
+    {key: "农事", statement: "--"},
 ]);
 
+
 const activeOuput = ref(1);
 const activeOuput2 = ref(1);
 
@@ -380,6 +412,8 @@ function toggleAcitve2 (name){
     display: flex;
     .left-img {
         // min-width: 500px;
+        width: 782px;
+        height: 580px;
     }
     .compare-l {
         padding-right: 60px;
@@ -391,6 +425,18 @@ function toggleAcitve2 (name){
         .file-title {
             font-size: 20px;
             color: #ffd489;
+            .tag {
+                border: 1px solid #FFD489;
+                border-radius: 4px;
+                font-size: 12px;
+                display: inline-block;
+                width: 44px;
+                height: 20px;
+                text-align: center;
+                line-height: 18px;
+                margin-left: 3px;
+                padding: 1px 4px;
+            }
         }
         .box-wrap {
             display: flex;
@@ -443,10 +489,15 @@ function toggleAcitve2 (name){
                 .base-item {
                     flex: 1;
                     text-align: center;
+                    padding: 0 4px;
+                    min-width: 50px;
                     .label {
                         font-size: 12px;
                         color: #666666;
                         width: max-content;
+                        display: block;
+                        margin: 0 auto;
+                        padding-bottom: 2px;
                     }
                     .value {
                         padding-top: 2px;
@@ -454,6 +505,7 @@ function toggleAcitve2 (name){
                         color: #ffffff;
                         width: max-content;
                         margin: 0 auto;
+                        display: block;
                     }
                 }
                 .base-item + .base-item {

+ 87 - 60
src/views/home/components/homeFile.vue

@@ -9,7 +9,12 @@
             <div class="overview-file">
                 <div class="box-title">总体档案</div>
                 <div class="base-data">
-                    <div class="base-item" v-for="(item, index) in photoBaseData" :key="item.label" @click.stop="toggleFileItem(item.label, index)">
+                    <div
+                        class="base-item"
+                        v-for="(item, index) in photoBaseData"
+                        :key="item.label"
+                        @click.stop="toggleFileItem(item.label, index)"
+                    >
                         <span class="label">{{ item.label }}</span>
                         <div v-if="index === 0" class="value">
                             <el-select
@@ -17,7 +22,7 @@
                                 size="small"
                                 @change="changeSelect"
                                 class="type-select"
-                                >
+                            >
                                 <el-option
                                     v-for="item in selectOptions"
                                     :key="item.speciesItemId"
@@ -52,7 +57,9 @@
                             :class="{ active: activeOuput === item.name }"
                         >
                             <div class="item-name">{{ item.name }}</div>
-                            <div class="item-val">{{ item.value }}<span>{{ item.unit }}</span></div>
+                            <div class="item-val">
+                                {{ item.value }}<span>{{ item.unit }}</span>
+                            </div>
                         </div>
                     </div>
                 </div>
@@ -68,7 +75,9 @@
                             :class="{ active: activeOuput === item.name }"
                         >
                             <div class="item-name">{{ item.name }}</div>
-                            <div class="item-val">{{ item.value }}<span>{{ item.unit }}</span></div>
+                            <div class="item-val">
+                                {{ item.value }}<span>{{ item.unit }}</span>
+                            </div>
                         </div>
                     </div>
                 </div>
@@ -79,7 +88,7 @@
 
 <script setup>
 import eventBus from "@/api/eventBus";
-import { onMounted, ref, } from "vue";
+import { onMounted, ref } from "vue";
 const outputBox = ref([
     { id: 1, name: "产量估计", field: "cl", value: "--", unit: "斤/亩" },
     { id: 2, name: "高质果率", field: "spgl", value: "--", unit: "%" },
@@ -89,7 +98,7 @@ const outputBox = ref([
 const qualityBox = ref([
     { id: 5, name: "通风率", field: "tfl", value: "--", unit: "%" },
     { id: 6, name: "透光率", field: "tgl", value: "--", unit: "%" },
-    { id: 7, name: "病虫等级", value: "--", unit: "" },
+    { id: 7, name: "病虫等级", value: "--", unit: "" },
 ]);
 
 const photoBaseData = ref([
@@ -112,91 +121,109 @@ const photoBaseData = ref([
 ]);
 
 const photoList = ref([
-    {key: "物候", statement: "--"},
-    {key: "病虫", statement: "--"},
-    {key: "异常", statement: "--"},
-    {key: "农事", statement: "--"},
+    { key: "物候", statement: "--" },
+    { key: "病虫", statement: "--" },
+    { key: "异常", statement: "--" },
+    { key: "农事", statement: "--" },
 ]);
 
 const activeOuput = ref(1);
 
 // 品种
-const farmId = ref(null)
+const farmId = ref(null);
 onMounted(() => {
-eventBus.off("area:id", toggleAreaId);
-eventBus.on("area:id", toggleAreaId);
-farmId.value = sessionStorage.getItem("farmId")
+    eventBus.off("area:id", toggleAreaId);
+    eventBus.on("area:id", toggleAreaId);
+    farmId.value = sessionStorage.getItem("farmId");
 
+    eventBus.off("changePointLegend", resetActive2);
+    eventBus.on("changePointLegend", resetActive2);
+    eventBus.off("changePointType", resetActive);
+    eventBus.on("changePointType", resetActive);
+});
 
-})
-const selectOptions = ref([])
-const getSpeciesItemList = (farmId,regionId) =>{
-    VE_API.farm.getSpeciesItemList({farmId,regionId}).then(res =>{
-        selectOptions.value = res.data
-        selectOptions.value.unshift({speciesItemId:"0",speciesItemName:"全部"})
-        photoBaseData.value[0].speciesItemId = res.data[0].speciesItemId
-    })
+function resetActive({colorObj}) {
+    console.log('aaaaaaaaresetActive', colorObj);
+    activeOuput.value = colorObj.key;
 }
+function resetActive2({colorObj}) {
+    console.log('bbbbbbhbresetActive', colorObj);
+    if (colorObj.name === "产量") {
+        activeOuput.value = "产量估计"
+    } else if (colorObj.name === "高质果率") {
+        activeOuput.value = "高质果率"
+    } else {
+        activeOuput.value = colorObj.key
+    }
+}
+const selectOptions = ref([]);
+const getSpeciesItemList = (farmId, regionId) => {
+    VE_API.farm.getSpeciesItemList({ farmId, regionId }).then((res) => {
+        selectOptions.value = res.data;
+        selectOptions.value.unshift({ speciesItemId: "0", speciesItemName: "全部" });
+        photoBaseData.value[0].speciesItemId = res.data[0].speciesItemId;
+    });
+};
 
 function changeSelect(e) {
-    console.log('eee', e);
-    setFileData(e)
+    console.log("eee", e);
+    setFileData(e);
 }
 
 function toggleFileItem(name, index) {
     if (index !== 0) {
-        toggleAcitve(name)
+        toggleAcitve(name);
     }
 }
 
-
 // 产量详情
 function toggleAcitve(name, field) {
     activeOuput.value = name;
-    console.log('产量详情产量详情产量详情', name);
+    console.log("产量详情产量详情产量详情", name);
     // eventBus.emit("change:mapPoint", name)
     if (name === "透光率" || name === "通风率") {
-        eventBus.emit('handleActive',{name,key:"生态指标",index: 1})
+        eventBus.emit("handleTabItem", name)
+        eventBus.emit("handleActive", { name, key: "生态指标", index: 1, isFile: name === "通风率" ? true : false });
         // eventBus.emit('handleTab',"透光率")
     } else {
-        eventBus.emit("change:mapPoint", field)
+        eventBus.emit("change:mapPoint", field);
     }
 }
 
-const regionId = ref(null)
+const regionId = ref(null);
 function toggleAreaId({ areaId, farmId }) {
-    regionId.value = areaId
-    getSpeciesItemList(farmId, areaId)
-    getFileData(farmId, areaId)
+    regionId.value = areaId;
+    getSpeciesItemList(farmId, areaId);
+    getFileData(farmId, areaId);
 }
 
-const allTypeData = ref([])
-function getFileData(farmId,regionId) {
-    VE_API.farm.getFarmFiles({farmId,regionId: regionId ? regionId: undefined}).then(({data}) =>{
-        allTypeData.value = data
-        setFileData(photoBaseData.value[0].speciesItemId)
-    })
+const allTypeData = ref([]);
+function getFileData(farmId, regionId) {
+    VE_API.farm.getFarmFiles({ farmId, regionId: regionId ? regionId : undefined }).then(({ data }) => {
+        allTypeData.value = data;
+        setFileData(photoBaseData.value[0].speciesItemId);
+    });
 }
 
 function setFileData(type_id) {
-    const res = allTypeData.value.find(item => item.type_id == type_id)
-    photoBaseData.value[1].value = res.meta_info.avg_crown + "平方米"
-    photoBaseData.value[2].value = res.meta_info.avg_branch_num
-    photoBaseData.value[3].value = res.meta_info.avg_age + "年"
-    photoList.value[0].key = res.meta_info.phenology_info.key
-    photoList.value[0].statement = res.meta_info.phenology_info.statement
-    photoList.value[1].key = res.meta_info.dp_alert_info.key
-    photoList.value[1].statement = res.meta_info.dp_alert_info.statement
-    photoList.value[2].key = res.meta_info.grow_alert_info.key
-    photoList.value[2].statement = res.meta_info.grow_alert_info.statement
-    photoList.value[3].key = res.meta_info.prescription_info.key
-    photoList.value[3].statement = res.meta_info.prescription_info.statement
-    outputBox.value[0].value = res.production_info.production
-    outputBox.value[1].value = res.production_info.quality.toFixed(0)
-    outputBox.value[2].value = res.production_info.cihua_ratio.toFixed(0)
-    qualityBox.value[0].value = res.ecology_info.ventilation
-    qualityBox.value[1].value = res.ecology_info.transmittance
-    qualityBox.value[2].value = res.ecology_info.dp_situation
+    const res = allTypeData.value.find((item) => item.type_id == type_id);
+    photoBaseData.value[1].value = res.meta_info.avg_crown + "平方米";
+    photoBaseData.value[2].value = res.meta_info.avg_branch_num;
+    photoBaseData.value[3].value = res.meta_info.avg_age + "年";
+    photoList.value[0].key = res.meta_info.phenology_info.key;
+    photoList.value[0].statement = res.meta_info.phenology_info.statement;
+    photoList.value[1].key = res.meta_info.dp_alert_info.key;
+    photoList.value[1].statement = res.meta_info.dp_alert_info.statement;
+    photoList.value[2].key = res.meta_info.grow_alert_info.key;
+    photoList.value[2].statement = res.meta_info.grow_alert_info.statement;
+    photoList.value[3].key = res.meta_info.prescription_info.key;
+    photoList.value[3].statement = res.meta_info.prescription_info.statement;
+    outputBox.value[0].value = res.production_info.production;
+    outputBox.value[1].value = res.production_info.quality.toFixed(0);
+    outputBox.value[2].value = res.production_info.cihua_ratio.toFixed(0);
+    qualityBox.value[0].value = res.ecology_info.ventilation;
+    qualityBox.value[1].value = res.ecology_info.transmittance;
+    qualityBox.value[2].value = res.ecology_info.dp_situation;
 }
 </script>
 
@@ -282,11 +309,11 @@ function setFileData(type_id) {
                     ::v-deep {
                         .el-select__wrapper {
                             background: rgba(247, 190, 90, 0.1);
-                            box-shadow: 0 0 0 1px #F7BE5A inset;
-                            color: #FFD489;
+                            box-shadow: 0 0 0 1px #f7be5a inset;
+                            color: #ffd489;
                         }
                         .el-select__placeholder {
-                            color: #FFD489;
+                            color: #ffd489;
                         }
                     }
                 }

+ 2 - 1
src/views/home/components/homePage.vue

@@ -166,8 +166,9 @@ onUnmounted(() => {
 const reportData = ref([]);
 
 const curIndex = ref(0);
-const handleActive = ({ index, key }) => {
+const handleActive = ({ index, key, isFile }) => {
     if (index === -1) return;
+    if (isFile) return
     curIndex.value = index;
     if (key === "物候指标") {
         phenologyObj.value = handleData("物候指标");

+ 1 - 1
src/views/home/index.vue

@@ -140,7 +140,7 @@
             <div class="box-title">总体档案</div>
             <div class="base-data" id="file-overview">
             </div>
-            <div class="list">
+            <div class="list" id="file-text">
                 <div class="list-item" v-for="item in photoList" :key="item.key">
                     <div class="list-name">
                         <img src="@/assets/images/common/title-icon.png" alt="" />

+ 82 - 46
src/views/home/map/samplePointLayer.js

@@ -301,52 +301,88 @@ class SamplePointLayer {
           if (!that.isCompare) {
             const noImg = fs.get("noImg")
             if (noImg === 1) {
-              // 无照片
-              document.getElementById('file-overview').innerHTML = `
-                <div class="base-item">
-                  <span class="label">品种</span>
-                  <div class="value">${fs.get("pz")}</div>
-                </div>
-                <div class="base-item">
-                  <span class="label">冠幅表面积</span>
-                  <div class="value">${fs.get("sgbmj")}平方米</div>
-                </div>
-                <div class="base-item">
-                  <span class="label">总枝条</span>
-                  <div class="value">${fs.get("zzts")}</div>
-                </div>
-                <div class="base-item">
-                  <span class="label">树龄</span>
-                  <div class="value">${fs.get("sl")}年</div>
-                </div>
-              `;
-              document.getElementById('file-output').innerHTML = `
-                <div class="box-item">
-                    <div class="item-name">产量估计</div>
-                    <div class="item-val">${fs.get("cl")}斤</div>
-                </div>
-                <div class="box-item">
-                    <div class="item-name">高质果率</div>
-                    <div class="item-val">${fs.get("spgl")}%</div>
-                </div>
-              `;
-              document.getElementById('file-quality').innerHTML = `
-                <div class="box-item">
-                    <div class="item-name">通风率</div>
-                    <div class="item-val">${fs.get("tfl")}斤</div>
-                </div>
-                <div class="box-item">
-                    <div class="item-name">透光率</div>
-                    <div class="item-val">${fs.get("tgl")}%</div>
-                </div>
-                <div class="box-item">
-                    <div class="item-name">病虫等级</div>
-                    <div class="item-val">${fs.get("khl")}%</div>
-                </div>
-              `;
-
-              document.getElementById('tag-nh').style.display = fs.get("nonghu") == 1 ? "inline-block" : 'none'
-              that.popup.setPosition(evt.coordinate)
+              VE_API.mini_farm.getSampleFiles({ geoHashSample: fs.get('geoHashSample') }).then(({data}) => {
+                // 无照片
+                document.getElementById('file-text').innerHTML = `
+                  <div class="list-item">
+                    <div class="list-name">
+                        <img src="${require('@/assets/images/common/title-icon.png')}" alt="" />
+                        ${data.meta_info.dp_alert_info.key}
+                    </div>
+                    ${data.meta_info.dp_alert_info.statement}
+                  </div>
+                  <div class="list-item">
+                    <div class="list-name">
+                        <img src="${require('@/assets/images/common/title-icon.png')}" alt="" />
+                        ${data.meta_info.grow_alert_info.key}
+                    </div>
+                    ${data.meta_info.grow_alert_info.statement}
+                  </div>
+                  <div class="list-item">
+                    <div class="list-name">
+                        <img src="${require('@/assets/images/common/title-icon.png')}" alt="" />
+                        ${data.meta_info.nutrition_info.key}
+                    </div>
+                    ${data.meta_info.nutrition_info.statement}
+                  </div>
+                  <div class="list-item">
+                    <div class="list-name">
+                        <img src="${require('@/assets/images/common/title-icon.png')}" alt="" />
+                        ${data.meta_info.prescription_info.key}
+                    </div>
+                    ${data.meta_info.prescription_info.statement}
+                  </div>
+                `;
+                document.getElementById('file-overview').innerHTML = `
+                  <div class="base-item">
+                    <span class="label">品种</span>
+                    <div class="value">${fs.get("pz")}</div>
+                  </div>
+                  <div class="base-item">
+                    <span class="label">冠幅表面积</span>
+                    <div class="value">${data.meta_info.crown}平方米</div>
+                  </div>
+                  <div class="base-item">
+                    <span class="label">总枝条</span>
+                    <div class="value">${data.meta_info.branch_num}</div>
+                  </div>
+                  <div class="base-item">
+                    <span class="label">树龄</span>
+                    <div class="value">${data.meta_info.age}年</div>
+                  </div>
+                `;
+                document.getElementById('file-output').innerHTML = `
+                  <div class="box-item">
+                      <div class="item-name">产量估计</div>
+                      <div class="item-val">${data.production_info.production}斤</div>
+                  </div>
+                  <div class="box-item">
+                      <div class="item-name">高质果率</div>
+                      <div class="item-val">${data.production_info.quality.toFixed(0)}%</div>
+                  </div>
+                  <div class="box-item">
+                      <div class="item-name">雌花比例</div>
+                      <div class="item-val">${data.production_info.cihua_ratio.toFixed(0)}%</div>
+                  </div>
+                `;
+                document.getElementById('file-quality').innerHTML = `
+                  <div class="box-item">
+                      <div class="item-name">通风率</div>
+                      <div class="item-val">${data.ecology_info.ventilation}%</div>
+                  </div>
+                  <div class="box-item">
+                      <div class="item-name">透光率</div>
+                      <div class="item-val">${data.ecology_info.transmittance}%</div>
+                  </div>
+                  <div class="box-item">
+                      <div class="item-name">病虫等级</div>
+                      <div class="item-val">${data.ecology_info.dp_situation}级</div>
+                  </div>
+                `;
+  
+                document.getElementById('tag-nh').style.display = fs.get("nonghu") == 1 ? "inline-block" : 'none'
+                that.popup.setPosition(evt.coordinate)
+              })
             } else {
               eventBus.emit("click:point", { farmId: fs.get("farmId"), sampleId: fs.get("sampleId"), data: fs.getProperties() })
             }