Ver Fonte

fix: 进度环

刘秀芳 há 3 semanas atrás
pai
commit
29925ba3cf

+ 3 - 7
src/components/common/stepBox.vue

@@ -1,5 +1,5 @@
 <template>
-    <div class="step-content" :class="isDone ? `step-4` : `step-${card.orderStatus ? card.orderStatus : card.orderStatus === 0 ? card.orderStatus : card.status}`">
+    <div class="step-content" :class="`step-${orderStatus}`">
         <div class="step-text t-r">专家</div>
         <div class="step-text b-l">农服</div>
         <div class="step-text b-r">农资</div>
@@ -12,17 +12,13 @@
             <div class="step-time time-b-l" v-if="card.updateDate4">
                 {{ formatDate(card.updateDate4) }}
             </div> -->
-        <img class="step-img" :src="require(`@/assets/img/gallery/step-${isDone ? 4 : (card.orderStatus ? card.orderStatus : card.orderStatus === 0 ? card.orderStatus : card.status)}.png`)" />
+        <img class="step-img" :src="require(`@/assets/img/gallery/step-${orderStatus}.png`)" />
     </div>
 </template>
 
 <script setup>
 const props = defineProps({
-    card: {},
-    isDone: {
-        type: Boolean,
-        default: false
-    }
+    orderStatus: {},
 })
 
 // 正则表达式 将日期 YYYY-MM-DD 格式的字符串转换为 MM-DD

+ 5 - 5
src/views/home/album/index.vue

@@ -142,10 +142,6 @@
                                                 <span class="desc-title">触发条件:</span>
                                                 {{ card.condition }}
                                             </div>
-                                            <div class="card-desc">
-                                                <span class="desc-title">农事编号:</span>
-                                                {{ card.code }}
-                                            </div>
                                             <div v-if="card.executeDate || card.solarName" class="card-desc">
                                                 <span class="desc-title">推荐时间:</span>
                                                 {{ card.executeDate || card.solarName }}
@@ -156,6 +152,10 @@
                                                 }}</span>
                                                 {{ card.executeDate }}
                                             </div>
+                                            <div class="card-desc">
+                                                <span class="desc-title">农事编号:</span>
+                                                {{ card.code }}
+                                            </div>
                                         </div>
                                         <div class="card-desc last-desc">
                                             <span class="desc-title">药物处方:</span>
@@ -190,7 +190,7 @@
                                             </div>
                                         </div>
                                         <div class="step-box" v-else>
-                                            <step-box :card="card" v-if="card.orderStatus || card.orderStatus === 0"></step-box>
+                                            <step-box :orderStatus="card.orderStatus" v-if="card.orderStatus || card.orderStatus === 0"></step-box>
                                         </div>
                                     </div>
                                     <chart

+ 59 - 38
src/views/warningHome/components/album.vue

@@ -40,18 +40,16 @@
                                         class="menu-icon"
                                         :src="
                                             require('@/assets/images/warningHome/gallery/icon-' +
-                                                item.icon +
-                                                (item.statuss === 0 ? '-no' : '') +
-                                                '.png')
+                                                item.icon + '.png')
                                         "
                                     />
                                     <div
                                         :class="[
                                             'menu-name',
                                             {
-                                                noTime: item.status === 0,
-                                                onTime: item.status === 2,
-                                                now: item.status === 1,
+                                                feature: item.execute === 0 ||item.execute === 2,
+                                                onTime:  item.execute === 1,
+                                                now: item.execute === 3,
                                             },
                                         ]"
                                     >
@@ -69,7 +67,7 @@
                             class="done-card section"
                             v-for="(card, cardI) in farmWorkList"
                             :key="cardI"
-                            :class="{ flashing: card.status === 1 && isFlashing }"
+                            :class="{ flashing: card.execute === 3 && isFlashing && cardI === secondLastIndex }"
                         >
                             <div class="card-dom" :id="'section' + cardI"></div>
                             <!-- <div v-if="card.status === 1" class="log-wrap">
@@ -87,15 +85,14 @@
                                     </div>
                                 </div>
                             </div> -->
-                            <div class="card-wrap" :class="{ noCarousel: card.status !== 0 }">
+                            <div class="card-wrap" :class="{ noCarousel: (card.execute !== 0 && card.execute !== 2), 'done': (card.execute === 4 || card.execute === 5) }">
                                 <div
                                     class="card-content"
-                                    :class="{ push: card.status === 1, hasBg: card.status === 2 && !card.hasBg }"
+                                    :class="{ push: card.execute === 3, hasBg: (card.execute === 0 || card.execute === 2) && !card.hasBg }"
                                 >
                                     <div
                                         class="card-top"
                                         @click="showDetail(card)"
-                                        :class="{ noChart: !card.indexChart.length }"
                                     >
                                         <div class="card-title serve-title">
                                             <div class="title-name">{{ card.farmWorkName }}</div>
@@ -103,45 +100,61 @@
                                             <div v-if="card.type === 2" class="status-tag advice">推荐农事</div>
                                             <div v-if="card.type === 0" class="status-tag warning">预警农事</div>
                                             <!-- 右上角角标 -->
-                                            <div v-if="card.status === 2 && card.execute === 0" class="add-btn">
+                                            <div v-if="card.execute === 0" class="add-btn">
                                                 未触发
                                             </div>
                                             <div
-                                                v-if="card.status === 2 && card.execute === 2"
+                                                v-if="card.execute === 2"
                                                 class="add-btn unactive"
                                             >
                                                 未激活
                                             </div>
                                             <div v-if="card.execute === 3" class="add-btn">待执行</div>
-                                            <div v-if="card.status === 0 && card.execute === 4" class="add-btn recheck">
+                                            <div v-if="card.execute === 4" class="add-btn recheck">
                                                 已完成
                                             </div>
-                                            <div v-if="card.status === 0 && card.reCheck === 1" class="add-btn recheck">
+                                            <div v-if="card.execute === 5" class="add-btn recheck">
                                                 已复核
                                             </div>
                                             <div v-if="card.execute === 1" class="add-btn unactive">已失效</div>
                                         </div>
-                                        <div class="card-desc">
-                                            <span class="desc-title">触发条件:</span>
-                                            {{ card.condition }}
-                                        </div>
-                                        <div class="card-desc">
-                                            <span class="desc-title">农事编号:</span>
-                                            {{ card.code }}
-                                        </div>
-                                        <div v-if="card.status === 2" class="card-desc">
-                                            <span class="desc-title">推荐时间:</span>
-                                            {{ card.solarName }}
-                                        </div>
-                                        <div v-if="card.status === 1" class="card-desc">
-                                            <span class="desc-title">推荐时间:</span>
-                                            {{ card.executeDate }}
+                                        
+                                        <div v-if="card.execute === 4 || card.execute === 5">
+                                            <!-- 已完成 -->
+                                            <div class="card-desc">
+                                                <span class="desc-title">服务主体:</span>
+                                                {{ card.serviceMain || "大荔农业" }}
+                                            </div>
+                                            <div class="card-desc">
+                                                <span class="desc-title">执行主体:</span>
+                                                {{ card.executeMain || "大荔农业" }}
+                                            </div>
+                                            <div class="card-desc">
+                                                <span class="desc-title">指导专家:</span>
+                                                <span class="expert-link" @click="toExpert(card.expertName)">
+                                                    {{ card.expertName }}
+                                                    <el-icon color="#2199F8" class="icon" size="12"><Link /></el-icon>
+                                                </span>
+                                            </div>
                                         </div>
-                                        <div v-if="card.status === 0" class="card-desc">
-                                            <span class="desc-title">{{
-                                                card.reCheck ? "复核时间:" : "执行时间:"
-                                            }}</span>
-                                            {{ card.executeDate }}
+                                        <div v-else>
+                                            <div class="card-desc condition-wrap">
+                                                <span class="desc-title">触发条件:{{ card.condition }}</span>
+                                            </div>
+                                            <div class="card-desc">
+                                                <span class="desc-title">农事编号:</span>
+                                                {{ card.code }}
+                                            </div>
+                                            <div v-if="card.executeDate || card.solarName" class="card-desc">
+                                                <span class="desc-title">推荐时间:</span>
+                                                {{ card.executeDate || card.solarName }}
+                                            </div>
+                                            <div v-if="card.execute === 4" class="card-desc">
+                                                <span class="desc-title">{{
+                                                    card.execute === 5 ? "复核时间:" : "执行时间:"
+                                                }}</span>
+                                                {{ card.executeDate }}
+                                            </div>
                                         </div>
                                         <div class="card-desc last-desc">
                                             <span class="desc-title">药物处方:</span>
@@ -167,24 +180,28 @@
                                                 <div class="detail-text">查看详情></div>
                                             </div>
                                         </div>
-                                        <div class="card-link">
-                                            <img src="@/assets/images/warningHome/expert-icon.png" />
+                                        <div class="card-link" v-if="card.execute === 0 || card.execute === 2|| (card.execute === 3 && card.orderStatus === null)" @click.stop="handlePage(card)">
+                                            <!-- <img src="@/assets/img/weather_index/expert-icon.png" /> -->
+                                            <img class="expert-icon" :src="card.expertIcon" />
                                             <div class="expert-name">
                                                 {{ card.expertName
                                                 }}<el-icon size="12" class="icon"><ArrowRightBold /></el-icon>
                                             </div>
                                         </div>
+                                        <div class="step-box" v-else>
+                                            <step-box :orderStatus="card.orderStatus" v-if="card.orderStatus || card.orderStatus === 0"></step-box>
+                                        </div>
                                     </div>
                                     <chart
                                         v-if="card.execute === 3 && card.indexChart.length"
                                         :key="cardI"
                                         :indexName="card.indexName"
-                                        :type="card.status !== 1 ? 'normal' : 'feature'"
+                                        :type="(card.execute === 2 || card.execute === 0) ? 'feature' : 'normal'"
                                         :chartData="card.indexChart"
                                     ></chart>
                                 </div>
                             </div>
-                            <div v-if="card.status !== 2" :class="['over-img']">
+                            <div v-if="card.execute !== 0 && card.execute !== 2" :class="['over-img']">
                                 <!-- 图片列表 -->
                                 <album-carousel7d
                                     :sampleId="sampleId"
@@ -212,6 +229,7 @@ const store = useStore();
 import AlbumCarousel7d from "./album_compoents/albumCarousel7d";
 import detailDailog from "./album_compoents/detailDailog";
 import { SET_TOKEN } from "@/store/modules/app/type";
+import stepBox from "@/components/common/stepBox.vue";
 
 const route = useRoute();
 // 监听页面滚动,更新当前激活的锚点
@@ -614,6 +632,9 @@ const showDetail = (card) => {
                     .noTime {
                         // color: #cccccc;
                     }
+                    .feature {
+                        color: rgba(33, 153, 248, 0.6)
+                    }
                     .now {
                         color: rgba(33, 153, 248, 1);
                     }

+ 1 - 1
src/views/workDetail/components/prescriptionBox.vue

@@ -14,7 +14,7 @@
             <div class="card-item-title"><span class="dotted"></span>专家处方</div>
             <div class="prescription-box">
                 <div class="step-box">
-                    <step-box :card="infoItem" v-if="infoItem.orderStatus || infoItem.orderStatus === 0"></step-box>
+                    <step-box :orderStatus="infoItem.orderStatus" v-if="infoItem.orderStatus || infoItem.orderStatus === 0"></step-box>
                 </div>
                 <!-- <div class="blur-bg">
                         <div class="lock-btn">解锁智能处方</div>