Przeglądaj źródła

feat:修改团队管理逻辑和bug

wangsisi 5 dni temu
rodzic
commit
3b47c01931

+ 7 - 0
src/views/old_mini/mine/pages/serviceRecords.vue

@@ -2,6 +2,7 @@
     <div class="service-records-page">
         <custom-header name="服务记录"></custom-header>
         <div class="record-list">
+            <div v-if="recordList.length === 0" class="empty-data">暂无数据</div>
             <div v-for="(item, index) in recordList" :key="index" class="record-card" @click="handleItemClick(item)">
                 <img class="thumb" :src=" base_img_url2 + item.executeEvidenceList[0] + resize" alt="照片" />
                 <div class="card-body">
@@ -83,6 +84,12 @@ const getPrescriptionText = (item) => {
         display: flex;
         flex-direction: column;
         gap: 14px;
+        .empty-data {
+            text-align: center;
+            padding: 60px 0;
+            color: #999999;
+            font-size: 14px;
+        }
     }
     .record-card {
         display: flex;

+ 3 - 2
src/views/old_mini/mine/pages/teamManage.vue

@@ -33,7 +33,7 @@
                 {{ route.query.add ? "取消选择" : "设置管理员" }}
             </div>
             <div class="bottom-btn primary-btn" @click="handleAddTeamMember">
-                {{ route.query.add ? "确认设为" : "新增团队成员" }}
+                {{ route.query.add ? "确认设为" : "邀请团队成员" }}
             </div>
         </div>
 
@@ -433,10 +433,11 @@ const handleAddTeamMember = async () => {
         }
     } else {
         detailType.value = "add";
-        showAddMemberPopup.value = true;
+        // showAddMemberPopup.value = true;
         formData.name = "";
         formData.phone = "";
         formData.duties = [];
+        handleShare()
     }
 };
 

+ 1 - 1
src/views/old_mini/modify_work/completedWork.vue

@@ -390,7 +390,7 @@ const showPriceSheetPopup = () => {
 };
 
 const getButtonText = () => {
-    return agriculturalRole.value === 1 || detailData.value.executorUserId != userId.value;
+    return agriculturalRole.value === 1 || (agriculturalRole.value === 2 && detailData.value.executorUserId != userId.value);
 };
 
 const offerPopupRef = ref(null);

+ 5 - 1
src/views/old_mini/monitor/subPages/plan.vue

@@ -252,7 +252,11 @@ const getListMySchemes = (type = "auto") => {
             } else if (type === "left") {
                 active.value = data[0].id;
             } else {
-                currentTab.value = data.filter((item) => item.id === currentTab.value.id)?.[0];
+                if(currentTab.value) {
+                    currentTab.value = data.filter((item) => item.id === currentTab.value?.id)?.[0];
+                } else {
+                    currentTab.value = data[0];
+                }
                 copyPlanName.value = currentTab.value.name;
             }
         }

+ 29 - 1
src/views/old_mini/plan/index.vue

@@ -24,7 +24,9 @@
         </div>
     </div>
     <div class="custom-bottom-fixed-btns">
-        <div class="bottom-btn primary-btn" @click="handleConfirmPlan">确认方案</div>
+        <div class="bottom-btn primary-btn" :class="{ 'disabled': isCreating }" @click="handleConfirmPlan">
+            {{ isCreating ? '创建中...' : '确认方案' }}
+        </div>
     </div>
 
     <tip-popup
@@ -81,7 +83,13 @@ const getListMySchemes = () => {
 
 const showFarmPopup = ref(false);
 const shareData = ref({});
+const isCreating = ref(false); // 标识是否正在创建农场
 const handleConfirmPlan = () => {
+    // 如果正在创建,阻止重复点击
+    if (isCreating.value) {
+        return;
+    }
+    
     // 从路由参数中获取农场数据
     let geomValue = route.query.geom;
 
@@ -123,6 +131,10 @@ const handleConfirmPlan = () => {
     }
 
     delete farmParams.from;
+    
+    // 设置正在创建状态
+    isCreating.value = true;
+    
     // 调用创建农场接口
     VE_API.farm
         .saveFarm(farmParams)
@@ -131,6 +143,8 @@ const handleConfirmPlan = () => {
                 shareData.value = res.data;
                 //选择方案
                 VE_API.home.selectSchemes({ sourceSchemeId: active.value ,farmId:res.data.id}).then(({code}) => {
+                    // 请求完成,重置状态
+                    isCreating.value = false;
                     if (code === 0) {
                         ElMessage.success("创建成功");
                         setTimeout(() => {
@@ -139,13 +153,22 @@ const handleConfirmPlan = () => {
                     } else {
                         ElMessage.error(res.msg || '创建失败');
                     }
+                }).catch((err) => {
+                    // 请求失败,重置状态
+                    isCreating.value = false;
+                    console.error("选择方案失败:", err);
+                    ElMessage.error("创建失败,请稍后重试");
                 });
                 
             } else {
+                // 请求失败,重置状态
+                isCreating.value = false;
                 ElMessage.error(res.msg || "创建失败");
             }
         })
         .catch((err) => {
+            // 请求失败,重置状态
+            isCreating.value = false;
             console.error("创建农场失败:", err);
             ElMessage.error("创建失败,请稍后重试");
         });
@@ -223,6 +246,11 @@ const handleClickOverlay = () => {
     justify-content: center;
     .bottom-btn {
         padding: 10px 40px;
+        &.disabled {
+            opacity: 0.6;
+            cursor: not-allowed;
+            pointer-events: none;
+        }
     }
 }
 </style>