|
|
@@ -1,5 +1,5 @@
|
|
|
<template>
|
|
|
- <div class="farm-item" :class="{ done: props.status, hall: isHall }">
|
|
|
+ <div class="farm-item" :class="{ done: props.status, ['farm-item-' + itemIndex]: itemIndex }">
|
|
|
<div class="item-top">
|
|
|
<div class="top-l">
|
|
|
<el-popover
|
|
|
@@ -20,7 +20,10 @@
|
|
|
: ""
|
|
|
}}
|
|
|
</div>
|
|
|
- <div class="item-time" v-else>{{ itemData?.executeDate }}</div>
|
|
|
+ <div class="item-time" v-if="itemIndex !== 3">{{ itemData?.executeDate }}</div>
|
|
|
+ <div class="item-tag" v-if="itemIndex === 3">
|
|
|
+ {{ farmWorkType[itemData?.farmWorkType || 0] }}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="top-r" @click="toDetail(props.status, itemData.id, itemData.farmWorkLibId)">
|
|
|
{{ props.status === 0 ? "" : "查看详情" }}
|
|
|
@@ -49,13 +52,6 @@
|
|
|
<div class="farm-addr">{{ itemData?.address }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="right-wrap" v-if="isHall">
|
|
|
- <div class="click-item" v-if="!itemData?.isFollow" @click="handleFollow(itemData)">
|
|
|
- <el-icon><Plus /></el-icon>
|
|
|
- <span>关注</span>
|
|
|
- </div>
|
|
|
- <span v-else class="follow-text" @click="handleFollow(itemData)">已关注</span>
|
|
|
- </div>
|
|
|
</div>
|
|
|
<slot name="footer"></slot>
|
|
|
</div>
|
|
|
@@ -67,13 +63,13 @@
|
|
|
<span class="value">{{ prescriptionText }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="desc-info" v-if="itemIndex === 1 && itemData?.reviewDate">
|
|
|
+ <div class="desc-info" v-if="(itemIndex === 1 || itemIndex === 3) && itemData?.reviewDate">
|
|
|
<div class="desc-info-item">
|
|
|
<span>复核时间:</span>
|
|
|
<span class="value">{{ itemData?.reviewDate }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="desc-info" v-if="itemIndex === 2 && itemData?.reviewIntervalDays">
|
|
|
+ <div class="desc-info" v-if="(itemIndex === 2 && itemData?.reviewIntervalDays) || (itemIndex === 3 && itemData?.reviewIntervalDays && !itemData?.reviewDate)">
|
|
|
<div class="desc-info-item">
|
|
|
<span>复核时间:</span>
|
|
|
<span class="value">{{ reviewDate }}</span>
|
|
|
@@ -87,7 +83,7 @@
|
|
|
>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div v-if="itemIndex === 1 && itemData.reviewImage?.length" class="review-image two-image">
|
|
|
+ <div v-if="(itemIndex === 1 || itemIndex === 3) && itemData.reviewImage?.length" class="review-image two-image">
|
|
|
<!-- 第一张:执行照片 -->
|
|
|
<div class="review-image-item" v-if="itemData.executeEvidenceList?.length">
|
|
|
<photo-provider :photo-closable="true">
|
|
|
@@ -186,10 +182,7 @@ const props = defineProps({
|
|
|
type: Object,
|
|
|
default: () => ({}),
|
|
|
},
|
|
|
- isHall: {
|
|
|
- type: Boolean,
|
|
|
- default: false,
|
|
|
- },
|
|
|
+ // 0: 待完成,1:已完成,2:待复核,3:农户版已完成
|
|
|
itemIndex: {
|
|
|
type: Number,
|
|
|
default: 0,
|
|
|
@@ -204,6 +197,13 @@ const toPage = () => {
|
|
|
router.push("/report_detail");
|
|
|
};
|
|
|
|
|
|
+const farmWorkType = {
|
|
|
+ 0: "预警农事",
|
|
|
+ 1: "标准农事",
|
|
|
+ 2: "建议农事",
|
|
|
+ 3: "自建农事",
|
|
|
+};
|
|
|
+
|
|
|
const handleFollow = ({ farmId, isFollow }) => {
|
|
|
ElMessageBox.confirm(`${isFollow ? "确定要取消关注该农场吗?" : "确定要关注该农场吗?"}`, "提示", {
|
|
|
confirmButtonText: "确定",
|
|
|
@@ -342,7 +342,7 @@ function formatArea(val) {
|
|
|
}
|
|
|
|
|
|
const toDetail = (status, id, farmWorkId) => {
|
|
|
- if (status === 1) {
|
|
|
+ if (status === 1 || status === 3) {
|
|
|
// 复核成效
|
|
|
router.push({
|
|
|
path: "/review_work",
|
|
|
@@ -374,6 +374,22 @@ const toDetail = (status, id, farmWorkId) => {
|
|
|
color: rgba(0, 0, 0, 0.6);
|
|
|
}
|
|
|
}
|
|
|
+ &.farm-item-3 {
|
|
|
+ background: #fff;
|
|
|
+ border: 1px solid rgba(0, 0, 0, 0.1);
|
|
|
+ border-radius: 5px;
|
|
|
+ .item-top {
|
|
|
+ .item-name {
|
|
|
+ padding: 0;
|
|
|
+ background: none;
|
|
|
+ border: none;
|
|
|
+ color: #000000;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .item-box {
|
|
|
+ border-color: #F5F5F5;
|
|
|
+ }
|
|
|
+ }
|
|
|
.top-r {
|
|
|
flex: none;
|
|
|
}
|
|
|
@@ -391,7 +407,7 @@ const toDetail = (status, id, farmWorkId) => {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: space-between;
|
|
|
- padding: 10px 12px;
|
|
|
+ padding: 8px 12px;
|
|
|
color: #2199f8;
|
|
|
font-size: 14px;
|
|
|
.top-l {
|
|
|
@@ -404,6 +420,16 @@ const toDetail = (status, id, farmWorkId) => {
|
|
|
padding-right: 8px;
|
|
|
flex: none;
|
|
|
}
|
|
|
+ .item-tag {
|
|
|
+ font-size: 12px;
|
|
|
+ color: #000000;
|
|
|
+ padding: 0 10px;
|
|
|
+ background: rgba(119, 119, 119, 0.1);
|
|
|
+ border-radius: 20px;
|
|
|
+ font-weight: normal;
|
|
|
+ height: 26px;
|
|
|
+ line-height: 26px;
|
|
|
+ }
|
|
|
.item-name {
|
|
|
margin-right: 8px;
|
|
|
color: #2199f8;
|