ソースを参照

feat:修改bug

wangsisi 2 日 前
コミット
c557a62c4b

BIN
src/assets/img/home/baoyu.jpg


BIN
src/assets/img/home/ns.png


+ 5 - 1
src/components/chatWindow.vue

@@ -349,7 +349,11 @@ watch(
                             id:params.id,
                             farmWorkOrderId:params.farmWorkOrderId
                         }
-                        message.title = '请您尽快执行 ' + params.farmWorkName + ' 农事';
+                        if(params.type === 'remindExecute') {
+                            message.title = '请您尽快执行 ' + params.farmWorkName + ' 农事';
+                        } else if(params.type === 'remindUser') {
+                            message.title = '请您尽快完成复核';
+                        }
                         message.cardType = params.type
                         message.linkUrl = `/completed_work?json=${JSON.stringify(jsonParams)}`;
                     }

+ 4 - 2
src/components/pageComponents/FarmInfoCard.vue

@@ -5,13 +5,13 @@
                 <img class="map-img" :src="data.mapImage || '/map.png'" alt="地图" />
                 <div class="item-info">
                     <div class="item-header">
-                        <div class="farm-name">{{ data.farmName }}</div>
+                        <div class="farm-name van-ellipsis" :style="{ maxWidth: data.maxWidth?data.maxWidth:'140px' }">{{ data.farmName }}</div>
                         <div class="tags">
                             <span class="tag tag-area">{{ data.area }}</span>
                             <span class="tag tag-variety">{{ data.variety }}</span>
                         </div>
                     </div>
-                    <div class="farm-address">{{ data.address }}</div>
+                    <div class="farm-address van-ellipsis">{{ data.address }}</div>
                 </div>
             </div>
             <!-- 右侧按钮插槽 -->
@@ -149,6 +149,7 @@ const handleRemind = () => {
                 .farm-name {
                     font-weight: 600;
                     color: #000;
+                    max-width: 66px;
                 }
                 .tags {
                     display: flex;
@@ -172,6 +173,7 @@ const handleRemind = () => {
             .farm-address {
                 font-size: 12px;
                 color: #86909c;
+                max-width: 190px;
             }
         }
     }

+ 1 - 1
src/components/pageComponents/TabList.vue

@@ -63,7 +63,7 @@ const handleTabClick = (index, tab) => {
     if (isObjectTab(tab)) {
         // 对象格式:传递 value
         emit('update:modelValue', tab.value);
-        emit('change', tab.value, tab, index);
+        emit('change', tab.value || tab.id, tab, index);
     } else {
         // 字符串/简单格式:传递索引
         emit('update:modelValue', index);

+ 1 - 0
src/views/old_mini/create_farm/index.vue

@@ -505,6 +505,7 @@ const submitForm = (formEl) => {
                         // 默认跳转到首页
                         router.replace("/home?reload=true&showSuccess=true");
                     }
+                    localStorage.setItem('isGarden', true);
                 }else{
                     ElMessage.error(res.msg);
                 }

+ 6 - 18
src/views/old_mini/home/components/AgriculturalDynamics.vue

@@ -27,7 +27,7 @@
                     @click="handleItem(item)"
                 >
                     <div class="item-image">
-                        <img :src="require('@/assets/img/home/banner.png')" :alt="item.alt" />
+                        <img :src="require('@/assets/img/home/baoyu.jpg')" :alt="item.alt" />
                     </div>
                     <div class="item-content">
                         <div class="item-text">{{ item.text }}</div>
@@ -45,7 +45,7 @@
                     @click="handleItem(item)"
                 >
                     <div class="item-image">
-                        <img :src="require('@/assets/img/home/banner.png')" :alt="item.alt" />
+                        <img :src="require('@/assets/img/home/ns.png')" :alt="item.alt" />
                     </div>
                     <div class="item-content">
                         <div class="item-text">{{ item.text }}</div>
@@ -103,16 +103,10 @@ const tabs = [
 // 气象预警数据
 const weatherList = ref([
     {
-        image: "@/assets/img/home/banner.png",
-        alt: "气象预警",
-        text: "周边5km出现了高温灼烧气象预警, 请注意某某防范!",
-        date: "2022-11-12"
-    },
-    {
-        image: "@/assets/img/home/banner.png",
+        image: "@/assets/img/home/baoyu.jpg",
         alt: "气象预警",
         text: "周边3km出现了暴雨预警, 请注意防范!",
-        date: "2022-11-10"
+        date: "2025-10-10"
     },
 ]);
 
@@ -122,14 +116,8 @@ const agriculturalList = ref([
         image: "@/assets/img/home/banner.png",
         alt: "农事预警",
         text: "建议进行病虫害防治, 注意观察作物生长情况",
-        date: "2022-11-11"
-    },
-    {
-        image: "@/assets/img/home/banner.png",
-        alt: "农事预警",
-        text: "土壤湿度偏低, 建议及时灌溉补充水分",
-        date: "2022-11-09"
-    },
+        date: "2025-9-11"
+    }
 ]);
 
 // 专家问答数据

+ 6 - 3
src/views/old_mini/home/index.vue

@@ -82,6 +82,7 @@ const changeGarden = ({id}) => {
     gardenId.value = id;
     getExpertByFarmId();
     isGarden.value = true;
+    localStorage.setItem('isGarden', true);
 }
 
 const expertInfo = ref({});
@@ -114,9 +115,11 @@ const monitorCards = ref({
 
 // 卡片点击事件
 const handleCardClick = (card) => {
-    if(!isGarden.value){
-        showFarmPopup.value = true;
-        return;
+    if(curRole == 0){
+        if(!isGarden.value){
+            showFarmPopup.value = true;
+            return;
+        }
     }
     if (card.route === "/pest") {
         if(curRole == 2){

+ 54 - 106
src/views/old_mini/mine/pages/serviceDetail.vue

@@ -5,11 +5,12 @@
             <farm-info-card
                 class="record-box"
                 :data="{
-                    farmName: '从化荔博园',
-                    area: '200亩',
-                    variety: '桂味',
-                    address: '广东省广州市从化区从化区',
+                    farmName: farmDetail.name,
+                    area: farmDetail.mianji + '亩',
+                    variety: farmDetail.typeName,
+                    address: farmDetail.address,
                     mapImage: '/map.png',
+                    maxWidth: '58px',
                 }"
             >
                 <template #right>
@@ -21,8 +22,8 @@
                     <img src="@/assets/img/home/label-icon.png" alt="" />
                     <span>农事服务</span>
                 </div>
-                <stats-box :stats-data="statsData" />
-                <div v-for="(section, index) in contentData" :key="index" class="content-section">
+                <stats-box :stats-data="serviceStatsData" />
+                <div v-for="(section, index) in detailList" :key="index" class="content-section">
                     <record-item
                         :record-item-data="section"
                         :onlyRecipeName="true"
@@ -32,6 +33,13 @@
                         class="recipe-item"
                     />
                 </div>
+                <empty
+                    v-if="detailList.length === 0"
+                    image="https://birdseye-img.sysuimars.com/birdseye-look-mini/custom-empty-image.png"
+                    image-size="80"
+                    description="暂无数据"
+                    class="empty-state"
+                />
             </div>
         </div>
     </div>
@@ -41,110 +49,50 @@
 import customHeader from "@/components/customHeader.vue";
 import FarmInfoCard from "@/components/pageComponents/FarmInfoCard.vue";
 import StatsBox from "@/components/pageComponents/StatsBox.vue";
-import { ref } from "vue";
+import { ref, onMounted } from "vue";
+import { useRoute } from "vue-router";
 import recordItem from "@/components/recordItem.vue";
+import { Empty } from "vant";
+const route = useRoute();
 
-const statsData = ref([
-    { value: "1258", unit: "元", desc: "总收益" },
-    { value: "1258", unit: "元", desc: "投入成本" },
-    { value: "118", unit: "次", desc: "服务次数" },
-]);
+const farmIdVal = ref(null);
+onMounted(() => {
+    farmIdVal.value = route.query.farmId;
+    getFarmDetail();
+    getFarmPastServiceCost();
+    getDetailList();
+});
 
-const contentData = ref([
-    {
-        targetId: "part1",
-        title: "巡园农事",
-        parentTitle: "秋梢期",
-        isExpanded: false, // 添加展开状态
-        hasApplied: false, // 是否已发起需求
-        reCheckText: "通过精准农业技术的应用,作物产量实现了两位数的增长,病虫害的发生率大幅下降,土壤肥力的提升",
-        beforeImage: "https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png",
-        afterImage: "https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png",
-        expert: 91356,
-        orderStatus: 3,
-        activeStatus: 0,
-        regionId: 2,
-        speciesId: "1",
-        speciesName: "荔枝",
-        farmWorkId: "699343457474318336",
-        farmWorkLibId: "699343457474318336",
-        farmWorkLibName: "梢期防虫",
-        farmWorkName: "梢期防虫",
-        expertIcon:
-            "https://birdseye-img.sysuimars.com/birdseye-look-vue/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20250411150343.png",
-        expertName: "韦帮稳",
-        icon: 4,
-        beforeExecuteDate: "2025-08-01",
-        executeDate: "2025-08-15",
-        code: "BZ-BC-04-SQFC-20",
-        expertPrescription: "",
-        condition: "单树嫩叶率大于20.0%",
-        defaultFarmWork: 0,
-        farmWorkType: 3,
-        farmWorkTypeName: "病虫",
-        usageMode: "叶面施",
-        serviceMain: "广州泽秾丰农资有限公司",
-        updateDate6: null,
-        confirmPicture: [],
-        executeMain: "广州泽秾丰农资有限公司",
-        storeShortName: "泽秾丰",
-        serviceRegion: "广州市从化区荔枝博览园",
-        prescriptionList: [
-            {
-                name: "营养",
-                pesticideFertilizerList: [
-                    {
-                        defaultDroneRatio: null,
-                        defaultName: "尿素",
-                        defaultRatio: 0,
-                        id: null,
-                        muPrice: null,
-                        muUsage: 15000.0,
-                        muUsage2: 15000.0,
-                        ratio: 0,
-                        ratio2: 0,
-                        remark: "",
-                        usageMode: "",
-                        usageModeList: ["叶面施、根部施"],
-                        orderId: null,
-                        pesticideFertilizerCode: "1001",
-                        pesticideFertilizerId: "1",
-                        pesticideFertilizerName: "尿素",
-                        brand: "山东联盟",
-                        typeName: "营养",
-                        price: 132,
-                        unit: "g",
-                        executeStyle: null,
-                    },
-                    {
-                        defaultDroneRatio: null,
-                        defaultName: "15-15-15复合肥",
-                        defaultRatio: 0,
-                        id: null,
-                        muPrice: null,
-                        muUsage: 45000.0,
-                        muUsage2: 45000.0,
-                        ratio: 0,
-                        ratio2: 0,
-                        remark: "",
-                        usageMode: "",
-                        usageModeList: ["根部施"],
-                        orderId: null,
-                        pesticideFertilizerCode: "1002",
-                        pesticideFertilizerId: "2",
-                        pesticideFertilizerName: "15-15-15复合肥",
-                        brand: "金正大",
-                        typeName: "营养",
-                        price: 220,
-                        unit: "g",
-                        executeStyle: null,
-                    },
-                ],
-            },
-        ],
-    },
-]);
+const farmDetail = ref({});
+const getFarmDetail = () => {
+    VE_API.user.getFarmDetail({ farmId: farmIdVal.value }).then(({ data }) => {
+        farmDetail.value = data || {};
+    });
+};
 
+const serviceStatsData = ref([]);
+const getFarmPastServiceCost = () => {
+    VE_API.user.getFarmPastServiceCost({ farmId: farmIdVal.value }).then(({ data }) => {
+        serviceStatsData.value = [
+            { value: data.totalCost, unit: "元", desc: "总收益" },
+            { value: data.totalCost, unit: "元", desc: "投入成本" },
+            { value: data.serviceCount, unit: "次", desc: "服务次数" },
+        ];
+    });
+};
+
+const detailList = ref([]);
+const getDetailList = () => {
+    const params = {
+        farmId: farmIdVal.value,
+        limit: 99,
+        page: 1,
+        flowStatus: "4,5",
+    };
+    VE_API.user.getDetailList(params).then(({ data }) => {
+        detailList.value = data || [];
+    });
+};
 </script>
 
 <style lang="scss" scoped>

+ 23 - 40
src/views/old_mini/mine/pages/serviceRecords.vue

@@ -13,60 +13,43 @@
             <farm-info-card
                 v-for="(item, index) in recordList"
                 :key="index"
-                :data="item"
-                @click="handleItemClick"
+                :data="{
+                    farmName: item.farmName,
+                    area: item.mianji + '亩',
+                    variety: item.typeName,
+                    address: item.address,
+                    mapImage: item.mapImage || '/map.png',
+                    serviceCount: item.serviceCount,
+                }"
+                @click="handleItemClick(item)"
                 class="record-item"
             />
         </div>
     </div>
 </template>
 <script setup>
-import { ref } from "vue";
+import { ref, onMounted } from "vue";
 import customHeader from "@/components/customHeader.vue";
 import FarmInfoCard from "@/components/pageComponents/FarmInfoCard.vue";
 import { useRouter } from "vue-router";
 const router = useRouter();
+
 // 服务记录列表数据
-const recordList = ref([
-    {
-        farmName: "从化荔博园",
-        area: "200亩",
-        variety: "桂味",
-        address: "广东省广州市从化区从化区",
-        serviceCount: 10,
-        mapImage: "/map.png",
-    },
-    {
-        farmName: "从化荔博园",
-        area: "200亩",
-        variety: "桂味",
-        address: "广东省广州市从化区从化区",
-        serviceCount: 10,
-        mapImage: "/map.png",
-    },
-    {
-        farmName: "从化荔博园",
-        area: "200亩",
-        variety: "桂味",
-        address: "广东省广州市从化区从化区",
-        serviceCount: 10,
-        mapImage: "/map.png",
-    },
-    {
-        farmName: "从化荔博园",
-        area: "200亩",
-        variety: "桂味",
-        address: "广东省广州市从化区从化区",
-        serviceCount: 10,
-        mapImage: "/map.png",
-    },
-]);
+const recordList = ref([]);
+
+onMounted(() => {
+    getUserList();
+});
 
+const getUserList = async () => {
+    const { data } = await VE_API.user.userList();
+    if (data.length) {
+        recordList.value = data || [];
+    }
+};
 // 处理列表项点击
 const handleItemClick = (data) => {
-    console.log("点击了服务记录项:", data);
-    // TODO: 跳转到详情页
-    router.push("/service_detail");
+    router.push(`/service_detail?farmId=${data.farmId}`);
 };
 
 const dateValue = ref("1");

+ 33 - 22
src/views/old_mini/modify_work/reviewWork.vue

@@ -80,6 +80,14 @@
             <div class="tabs-content-item">
                 <div class="common-card-title">
                     <img class="icon" src="@/assets/img/home/label-icon.png" alt="" />
+                    <span>执行照片</span>
+                </div>
+                <album-carousel class="execute-img" :key="1" labelText="执行照片" :images="workItem.executeEvidence"></album-carousel>
+            </div>
+
+            <div class="tabs-content-item">
+                <div class="common-card-title">
+                    <img class="icon" src="@/assets/img/home/label-icon.png" alt="" />
                     <span>复核成效</span>
                 </div>
                 <div class="info-box bottom-box">
@@ -98,15 +106,20 @@
                             <div class="img-list over-img-box">
                                 <album-carousel :key="1" labelText="农事前" :images="triggerImg"></album-carousel>
                             </div>
-                            <div class="img-list over-img-box" v-if="workItem.reviewImage && workItem.reviewImage.length">
-                                <album-carousel :key="2" labelText="农事后" :images="workItem.reviewImage"></album-carousel>
+                            <div
+                                class="img-list over-img-box"
+                                v-if="workItem.reviewImage && workItem.reviewImage.length"
+                            >
+                                <album-carousel
+                                    :key="2"
+                                    labelText="农事后"
+                                    :images="workItem.reviewImage"
+                                ></album-carousel>
                             </div>
                             <div class="img-list" v-else>
                                 <div
-                                    class="recheck-text-wrap no-events"
+                                    class="recheck-text-wrap active"
                                     :class="{
-                                        active: !diffInDays(workItem.reviewDate) > 0 && curRole === '0',
-                                        'yse-events': curRole === '0' && !diffInDays(workItem.reviewDate) > 0,
                                         'center-wrap': !imageArr.length,
                                     }"
                                 >
@@ -137,23 +150,15 @@
                                                 "
                                                 alt=""
                                             />
-                                            <div class="recheck-text">
-                                                {{ curRole === "2" ? "等待农户上传" : "点击上传照片" }}
-                                            </div>
-                                            <div
-                                                class="recheck-desc"
-                                                v-show="curRole === '2' && diffInDays(workItem.reviewDate) != 0"
-                                            >
-                                            <!-- (已逾期{{ diffInDays(workItem.reviewDate, "add") }}天) -->
-                                            </div>
+                                            <div class="recheck-text">点击上传照片</div>
                                         </template>
-                                        <template v-else>
+                                        <!-- <template v-else>
                                             <img class="img-icon" src="@/assets/img/gallery/img-icon.png" alt="" />
                                             <div class="recheck-text">等待复核</div>
                                             <div class="recheck-desc" v-show="diffInDays(workItem.reviewDate) >= 0">
                                                 (剩余{{ diffInDays(workItem.reviewDate) }}天)
                                             </div>
-                                        </template>
+                                        </template> -->
                                     </upload>
                                     <div
                                         class="submit"
@@ -300,11 +305,14 @@ onActivated(() => {
 const getDetail = () => {
     if (!paramsPage.value.id) return;
     loading.value = true;
-    VE_API.z_farm_work_record.getDetail({ id: paramsPage.value.id }).then(({ data }) => {
-        workItem.value = data[0];
-    }).finally(() => {
-        loading.value = false;
-    });
+    VE_API.z_farm_work_record
+        .getDetail({ id: paramsPage.value.id })
+        .then(({ data }) => {
+            workItem.value = data[0];
+        })
+        .finally(() => {
+            loading.value = false;
+        });
 };
 
 const triggerImg = ref([]);
@@ -424,6 +432,9 @@ const handleUpload = ({ imgArr }) => {
             background: #fff;
             margin-top: 12px;
             position: relative;
+            .execute-img{
+                margin-top: 12px;
+            }
             .card-title {
                 display: flex;
                 justify-content: space-between;
@@ -575,7 +586,7 @@ const handleUpload = ({ imgArr }) => {
                     padding-bottom: 5px;
                 }
             }
-            .recheck-box{
+            .recheck-box {
                 margin-top: 12px;
             }
             .recheck-box,

+ 63 - 2
src/views/old_mini/monitor/index.vue

@@ -87,16 +87,39 @@
     </div>
     <!-- 农场信息 -->
     <farm-info-popup ref="farmInfoRef" :farmId="gardenId"></farm-info-popup>
+
+    <popup v-model:show="showFarmPopup" round class="create-farm-popup" :overlay-style="{'backdrop-filter': 'blur(4px)'}" :close-on-click-overlay="false">
+        <img class="create-farm-icon" src="@/assets/img/home/create-farm-icon.png" alt="" />
+        <div class="create-farm-text">
+            <div>您当前还没有农场</div>
+            <div>请先创建农场</div>
+        </div>
+        <div class="create-farm-btn" @click="toCreateFarm">去创建农场</div>
+    </popup>
 </template>
 
 <script setup>
-import { ref, computed, onMounted, onUnmounted, onActivated } from "vue";
+import { ref, computed, onUnmounted, onActivated } from "vue";
 import { useStore } from "vuex";
-import { Badge, List } from "vant";
+import { Badge, List ,Popup} from "vant";
 import weatherInfo from "@/components/weatherInfo.vue";
 import { useRouter, useRoute } from "vue-router";
 import farmInfoPopup from "../home/components/farmInfoPopup.vue";
 
+const showFarmPopup = ref(false);
+
+const toCreateFarm = () => {
+    router.push("/create_farm?isReload=true&from=monitor");
+    showFarmPopup.value = false;
+};
+
+onActivated(()=>{
+    showFarmPopup.value = false;
+    if(localStorage.getItem('isGarden') != 'true'){
+        showFarmPopup.value = true;
+    }
+})
+
 const store = useStore();
 const tabBarHeight = computed(() => store.state.home.tabBarHeight);
 const router = useRouter();
@@ -289,6 +312,44 @@ function handlePage(url) {
 </script>
 
 <style scoped lang="scss">
+.create-farm-popup {
+    width: 75%;
+    padding: 28px 28px 20px;
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    justify-content: center;
+    .create-farm-icon {
+        width: 40px;
+        height: 40px;
+        margin-bottom: 12px;
+    }
+    .farm-check-icon {
+        width: 68px;
+        height: 68px;
+        margin-bottom: 12px;
+    }
+    .create-farm-text {
+        font-size: 18px;
+        font-weight: 500;
+        margin-bottom: 32px;
+        text-align: center;
+        &.success-text {
+            font-size: 23px;
+            font-weight: 400;
+        }
+    }
+    .create-farm-btn {
+        width: 100%;
+        box-sizing: border-box;
+        padding: 8px;
+        border-radius: 25px;
+        font-size: 16px;
+        background: #2199f8;
+        color: #fff;
+        text-align: center;
+    }
+}
 .monitor-index {
     width: 100%;
     height: 100%;

+ 2 - 3
src/views/old_mini/plan/index.vue

@@ -27,9 +27,8 @@ const curRole = localStorage.getItem("SET_USER_CUR_ROLE");
 
 const tabs = ref([]);
 const active = ref(null);
-
-const handleTabChange = (index) => {
-    console.log(index);
+const handleTabChange = (id) => {
+    active.value = id;
 };
 
 onMounted(() => {

+ 4 - 3
src/views/old_mini/user/farmDetails.vue

@@ -9,6 +9,7 @@
                     variety: farmDetail.typeName,
                     address: farmDetail.address,
                     mapImage: '/map.png',
+                    maxWidth:'58px',
                 }"
             >
                 <template #right>
@@ -46,7 +47,7 @@
                         </template>
                         <empty
                             v-else
-                            image="https://fastly.jsdelivr.net/npm/@vant/assets/custom-empty-image.png"
+                            image="https://birdseye-img.sysuimars.com/birdseye-look-mini/custom-empty-image.png"
                             image-size="80"
                             description="暂无数据"
                             class="empty-state"
@@ -79,7 +80,7 @@
                         </div>
                         <empty
                             v-if="detailList.length === 0"
-                            image="https://fastly.jsdelivr.net/npm/@vant/assets/custom-empty-image.png"
+                            image="https://birdseye-img.sysuimars.com/birdseye-look-mini/custom-empty-image.png"
                             image-size="80"
                             description="暂无数据"
                             class="empty-state"
@@ -104,7 +105,7 @@
                         <record-item v-if="detailList.length > 0" :record-item-data="detailList[0]" title-mode="default" class="recipe-item" />
                         <empty
                             v-else
-                            image="https://fastly.jsdelivr.net/npm/@vant/assets/custom-empty-image.png"
+                            image="https://birdseye-img.sysuimars.com/birdseye-look-mini/custom-empty-image.png"
                             image-size="80"
                             description="暂无数据"
                             class="empty-state"

+ 7 - 2
src/views/old_mini/user/index.vue

@@ -12,7 +12,7 @@
             </div>
         </div>
         <div class="list">
-            <collapse v-model="activeNames">
+            <collapse v-model="activeNames" class="collapse-list">
                 <collapse-item :name="index" v-for="(item, index) in dataList" :key="index" :is-link="false">
                     <template #title>
                         <el-icon class="icon"><CaretRight /></el-icon>
@@ -31,6 +31,7 @@
                             area: ele.mianji + '亩',
                             variety: ele.typeName,
                             address: ele.address,
+                            maxWidth:'66px',
                             mapImage: ele.mapImage || '/map.png',
                             // day: 15,
                             // farmInfo: '梢期杀虫',
@@ -65,7 +66,7 @@ onMounted(() => {
     getUserList();
 });
 
-const activeNames = ref([0]);
+const activeNames = ref([1]);
 const dataList = ref([
     {
         name: "Vip客户",
@@ -167,6 +168,10 @@ const handleItemClick = (data) => {
     .list {
         width: 100%;
         margin-top: 12px;
+        .collapse-list{
+            height: calc(100vh - 100px - 60px);
+            overflow: auto;
+        }
         .text {
             color: #7c7c7c;
         }

+ 1 - 1
src/views/old_mini/user/subPages/serviceList.vue

@@ -24,7 +24,7 @@
                 />
                 <empty
                     v-show="detailList.length === 0"
-                    image="https://fastly.jsdelivr.net/npm/@vant/assets/custom-empty-image.png"
+                    image="https://birdseye-img.sysuimars.com/birdseye-look-mini/custom-empty-image.png"
                     image-size="80"
                     description="暂无数据"
                 />