| 
					
				 | 
			
			
				@@ -1,7 +1,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <el-dialog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         v-model="dialogVisible" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        width="60%" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width="65%" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         align-center 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         class="picture-preview-wrap v-dialog" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         :show-close="false" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -35,16 +35,51 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             <div class="value">{{ item.value }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     </div> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div class="box-form"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ref="ruleFormRef" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :model="ruleForm" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :rules="rules" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            label-position="left" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            label-width="78px" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-form-item label="品种" prop="pz"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                <el-input v-model="ruleForm.pz" placeholder="请输入品种" style="width: 240px;" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-form-item label="树龄" prop="age"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                <el-input-number 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    class="number-input" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    :controls="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    placeholder="请输入树龄" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    v-model="ruleForm.age" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    :min="0" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    style="width: 240px;" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-form-item label="栽种时间" prop="time"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                <el-date-picker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    v-model="ruleForm.time" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    type="date" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    format="YYYY.MM.DD" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    style="width: 240px;" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    value-format="YYYY.MM.DD" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    placeholder="请选择栽种时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-form-item label="守护人" prop="user"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                <el-select v-model="ruleForm.user" style="width: 240px;" placeholder="请选择守护人"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    <el-option label="张三" value="张三" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    <el-option label="张四" value="张四" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="overview-file"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="box-title">产量详情</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="box-wrap"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            class="box-item" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            v-for="(item, index) in outputBox" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div class="box-item" v-for="(item, index) in outputBox" :key="index"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             <div class="item-name">{{ item.name }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             <div class="item-val">{{ item.value }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         </div> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -54,23 +89,25 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="overview-file"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="box-title">质量详情</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     <div class="box-wrap"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            class="box-item" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            v-for="(item, index) in qualityBox" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div class="box-item" v-for="(item, index) in qualityBox" :key="index"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             <div class="item-name">{{ item.name }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             <div class="item-val">{{ item.value }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div class="btn-group"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div class="btn cancel-btn" @click="saveEdit(0)">取消</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div class="btn edit-btn" @click="saveEdit(1)">确认修改</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </el-dialog> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <script setup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { ref, computed, onMounted, onUnmounted, onActivated } from "vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { ref, computed, onMounted, reactive, onActivated } from "vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import "./cacheImg.js"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import AlbumCarouselItem from "./albumCarouselItem"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { dateFormat } from "@/utils/date_util.js"; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -182,16 +219,50 @@ const photoBaseData = ref([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const activeOuput = ref(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 function closeDialog() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     activeOuput.value = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     eventBus.emit("change:watermark", ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     eventBus.emit("resetImgIndex"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ruleFormRef.value.resetFields() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 修改档案信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const ruleFormRef = ref(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const ruleForm = reactive({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    pz: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    age: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    time: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    user: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const rules = reactive({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    pz: [{ required: true, message: "请输入品种", trigger: "blur" }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    age: [{ required: true, message: "请输入树龄", trigger: "blur" }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    time: [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type: "date", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            required: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            message: "请选择栽种时间", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            trigger: "change", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+async function saveEdit(isToSave) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (isToSave) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 保存 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        await ruleFormRef.value.validate((valid, fields) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (valid) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.log('submit!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.log('error submit!', fields) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <style lang="scss" scoped> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -208,12 +279,12 @@ function closeDialog() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         padding: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .file-title { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             font-size: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            color: #2199F8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            color: #2199f8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .tag { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                border: 1px solid #2199F8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                border: 1px solid #2199f8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 border-radius: 4px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 font-size: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 display: inline-block; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -239,11 +310,11 @@ function closeDialog() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     content: ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     left: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    top: 3px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    top: 5px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     width: 3px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     height: 16px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     background: #000000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    border-radius: 11px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    border-radius: 2px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .title { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -302,6 +373,42 @@ function closeDialog() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .box-form { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ::v-deep { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    .el-input-number .el-input__inner { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        text-align: left; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .btn-group { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            margin-top: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            justify-content: end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            padding: 10px 12px 0 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            border-top: 1px solid rgba(0, 0, 0, 0.2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            box-sizing: border-box; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            border-radius: 0 0 8px 8px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .btn { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cursor: pointer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                padding: 10px 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                font-size: 14px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                border-radius: 4px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                color: #2199F8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .cancel-btn { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                color: #000000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                background: rgba(206, 206, 206, 0.4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .edit-btn { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                background: #2199F8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                color: #FFFFFF; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .btn + .btn { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                margin-left: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .overview-file + .overview-file { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             margin-top: 8px; 
			 |