From 9e47e0ece28c6145638aecca5bdf86857c049cf9 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期五, 31 五月 2024 18:23:34 +0800
Subject: [PATCH] ‘’

---
 h5/pages/staff/vehicle/applePeo.vue |  107 ++++++++++++++++++++++++++++++++---------------------
 1 files changed, 65 insertions(+), 42 deletions(-)

diff --git a/h5/pages/staff/vehicle/applePeo.vue b/h5/pages/staff/vehicle/applePeo.vue
index 2f62cce..54e7a5d 100644
--- a/h5/pages/staff/vehicle/applePeo.vue
+++ b/h5/pages/staff/vehicle/applePeo.vue
@@ -15,30 +15,40 @@
       />
     </view>
     <view class="member_list">
-      <checkbox-group v-model="selList" @change="changeMem">
-        <view v-for="item in memberList" :key="item.id" class="line">
-          <image
-            :src="
-              item.faceImgFull
-                ? item.faceImgFull
-                : require('@/static/logo@2x.png')
-            "
-            class="avatar"
-            mode=""
-          ></image>
-          <view class="content">
-            <view class="info">
-              <text class="name">{{ item.name }}</text>
-              <!-- <text class="tag">tag</text> -->
-            </view>
-            <view class="depart">{{ item.companyName }}</view>
+      <view v-for="(item, index) in memberList" :key="item.id" class="line">
+        <image
+          :src="
+            item.faceImgFull
+              ? item.faceImgFull
+              : require('@/static/logo@2x.png')
+          "
+          class="avatar"
+          mode=""
+        ></image>
+        <view class="content">
+          <view class="info">
+            <text class="name">{{ item.name }}</text>
+            <!-- <text class="tag">tag</text> -->
           </view>
-          <label>
-            <checkbox :checked="item.checked" :value="String(item.id)" class="checkbox" />
-          </label>
-          <text></text>
+          <view class="depart">{{ item.companyName }}</view>
         </view>
-      </checkbox-group>
+        <image
+          @click="changeMem(item, index)"
+          v-if="item.checked"
+          src="@/static/meeting/icon/ic_choose_sel@2x.png"
+          mode="widthFix"
+          class="checked"
+        ></image>
+        <image
+          @click="changeMem(item, index)"
+          v-if="!item.checked"
+          src="@/static/meeting/icon/ic_choose@2x.png"
+          mode="widthFix"
+          class="checked"
+        ></image>
+        <text></text>
+      </view>
+
       <view class="empty"></view>
     </view>
     <!--  -->
@@ -55,7 +65,7 @@
           mode=""
         ></image>
       </view>
-      <view class="btn" @click="onSubmit">纭({{selList.length}}/20)</view>
+      <view class="btn" @click="onSubmit">纭({{ selList.length }}/20)</view>
     </view>
     <!--  -->
     <u-popup
@@ -100,8 +110,8 @@
   data() {
     return {
       memberList: [],
-      selList: [],
       param: {},
+      selList: [],
 
       isShowSelMem: false
     }
@@ -109,32 +119,42 @@
   onLoad() {
     this.initData()
   },
+  mounted() {
+    this.$eventBus.$on('applePeoDetail', (res)=>{
+      res.forEach(item => {
+        this.changeMem(item)
+      })
+      this.$nextnick(() => {
+        this.$forceUpdate()
+      })
+    })
+  },
   methods: {
     onSubmit() {
       this.$eventBus.$emit('applePeo', this.selList)
       uni.navigateBack()
     },
-    changeMem(e) {
-      const arr = e.detail.value
-      let arrTemp = arr.map(item => {
-        let obj = {}
-        this.memberList.forEach(ite => {
-          if (item == ite.id) {
-            obj.name = ite.name.split('-')[0]
-            obj.componey = ite.name.split('-')[1] || ''
-            obj.id = ite.id
-          }
-        })
-        return obj
-      })
-      this.selList = arrTemp
-      // this.$forceUpdate()
+    changeMem(item, index) {
+      item.checked = !item.checked
+      this.selList = this.memberList.filter(i => i.checked)
+      // const arr = e.detail.value
+      // let arrTemp = arr.map(item => {
+      //   let obj = {}
+      //   this.memberList.forEach(ite => {
+      //     if (item == ite.id) {
+      //       obj.name = ite.name.split('-')[0]
+      //       obj.componey = ite.name.split('-')[1] || ''
+      //       obj.id = ite.id
+      //     }
+      //   })
+      //   return obj
+      // })
+      // this.selList = arrTemp
+      this.$forceUpdate()
     },
     handleRemove(item) {
-      const selIndex = this.selList.findIndex(i => i.id === item.id)
-      this.selList.splice(selIndex, 1)
       this.memberList.forEach(ite => {
-        if(item.id === ite.id){
+        if (item.id === ite.id) {
           ite.checked = false
         }
       })
@@ -282,6 +302,9 @@
         }
       }
     }
+    .checked{
+      width: 48rpx;
+    }
   }
   .empty {
     width: 100%;

--
Gitblit v1.9.3