jiangping
2025-05-07 c3aaf28f7316cce12eec007a9f85a96cbcddeec2
h5/pages/staff/memberSel.vue
@@ -8,24 +8,18 @@
      ></image>
      <input
        v-model="param.name"
        @blur="initData()"
        @input="changeInput"
        type="text"
        placeholder="搜索"
        placeholder="请输入姓名进行搜索"
            confirm-type="search"
        placeholder-style="color: #999999;"
      />
    </view>
    <view class="member_list">
      <checkbox-group @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 v-for="item in inputList" :key="item.id" class="line">
          <image v-if="item.faceImgFull" :src="item.faceImgFull" class="avatar" ></image>
          <span v-else class="img_name">{{item.name && item.name.slice(0,1)}}</span>
          <view class="content">
            <view class="info">
              <text class="name">{{ item.name }}</text>
@@ -42,7 +36,10 @@
          <text></text>
        </view>
      </checkbox-group>
      <view class="empty"></view>
      <view v-if="inputList.length == 0" class="empty_wrap">
         <image src="../../static/empty.png"></image>
         <text>暂无数据</text>
      </view>
    </view>
    <!--  -->
    <!-- <view class="sub_wrap">
@@ -99,13 +96,15 @@
  data() {
    return {
      memberList: [],
      inputList: [],
      selList: [],
      param: {},
      isShowSelMem: false
    }
  },
  onLoad() {
  onLoad(option) {
    this.$set(this.param, 'id', option.areaId || '')
    this.initData()
  },
  methods: {
@@ -116,17 +115,25 @@
         console.log( e.detail.value[0]);
         const id = Number(e.detail.value[0])
         const item = this.memberList.find(i => i.id === id)
         console.log('item', item);
         uni.navigateTo({
            url: `/pages/staff/snapshot?id=${item.id}&name=${item.name}`
         })
      this.$eventBus.$emit('snapshotSel', item)
         uni.navigateBack()
    },
      changeInput(e) {
         const str = e.target.value
         this.inputList = this.memberList.filter(item => {
            if(item.name.indexOf(str) > -1){
               return item
            }
         })
      },
    initData() {
      const { param } = this
      findHiddenAreaMemberList({
        name: param.name
        name: param.name,
        id: param.id
      }).then(res => {
        this.memberList = res.data || []
        this.inputList = [...this.memberList]
      })
    }
  }
@@ -134,6 +141,9 @@
</script>
<style lang="scss">
   .main_app{
      padding-top: 30rpx;
   }
.modal {
  padding: 40rpx 30rpx;
  .modal_header {
@@ -234,6 +244,18 @@
      overflow: hidden;
      margin-right: 20rpx;
    }
      .img_name{
         width: 64rpx;
         height: 64rpx;
         line-height: 64rpx;
         text-align: center;
         border-radius: 50%;
         overflow: hidden;
         margin-right: 20rpx;
         background: $uni-color-primary;
         color: #fff;
         border: 1rpx solid $uni-color-primary;
      }
    .content {
      flex: 1;
      .depart {