From 5857dfa10b70a061b8e4711dd8f18b585ac6fc23 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期二, 25 二月 2025 17:43:37 +0800
Subject: [PATCH] ll
---
h5/pages/staff/vehicle/applePeo.vue | 530 +++++++++++++++++++++++++++++-----------------------------
1 files changed, 269 insertions(+), 261 deletions(-)
diff --git a/h5/pages/staff/vehicle/applePeo.vue b/h5/pages/staff/vehicle/applePeo.vue
index 0a6f418..a8b3503 100644
--- a/h5/pages/staff/vehicle/applePeo.vue
+++ b/h5/pages/staff/vehicle/applePeo.vue
@@ -1,5 +1,5 @@
<template>
- <view class="main_app" :class="{ popupShow: isShowSelMem }">
+ <view class="main_app" :style="{ height: windowHeight + 'px' }" :class="{ popupShow: isShowSelMem }">
<view class="search_inp df_ac">
<image class="mr12 search" src="@/static/ic_search@2x.png" mode="widthFix"></image>
<input v-model="param.queryParam" @confirm="initData()" type="text" placeholder="鎼滅储"
@@ -21,11 +21,11 @@
<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>
<view class="" style="height: 220rpx;"></view>
- <view v-if="memberList.length == 0" class="empty_wrap">
- <image src="@/static/empty.png" mode=""></image>
- <text>鏆傛棤鏁版嵁</text>
+ <view v-if="memberList.length == 0" class="empty_wrap">
+ <image src="@/static/empty.png" mode=""></image>
+ <text>鏆傛棤鏁版嵁</text>
</view>
</view>
<!-- -->
@@ -37,13 +37,13 @@
</view>
<image @click="openSeleter" class="open_icon" src="@/static/staff/renyuan_ic_open.png" mode=""></image>
</view>
- <view class="btn" @click="onSubmit">纭({{ selList.length }}/{{ param.limitNum }})</view>
+ <view class="btn" @click="onSubmit">纭({{ selList.length }})</view>
</view>
<!-- -->
<u-popup catchtouchmove :show="isShowSelMem" :round="12" mode="bottom" @close="closeModal">
<view class="modal">
<view class="modal_header">
- <text class="status">宸查�夋嫨锛歿{ selList.filter(i => i.checkedTemp).length }}浜�</text>
+ <text class="status">宸查�夋嫨锛歿{selList.filter(i => i.checkedTemp).length}}浜�</text>
<text class="btn" @click="subSelMem">纭</text>
</view>
<view class="modal_mem_list">
@@ -67,256 +67,173 @@
</template>
<script>
- import {
- userPagePost
- } from '@/api'
- import dayjs from 'dayjs'
- export default {
- data() {
- return {
- memberList: [],
- selList: [],
- param: {
- limitNum: ''
- },
- pagination: {
- page: 1,
- capacity: 40
- },
+import {
+ userPagePost
+} from '@/api'
+import dayjs from 'dayjs'
+export default {
+ data() {
+ return {
+ memberList: [],
+ selList: [],
+ param: {
+ limitNum: ''
+ },
+ windowHeight: '',
+ pagination: {
+ page: 1,
+ capacity: 40
+ },
- isShowSelMem: false
- }
- },
- onLoad(option) {
- this.param = {
- limitNum: option.limitNum,
- queryParam: '',
- startTime: dayjs(Number(option.startTime)).format('YYYY-MM-DD HH:mm:ss'),
- endTime: dayjs(Number(option.endTime)).format('YYYY-MM-DD HH:mm:ss'),
- }
- this.initData()
- },
- mounted() {
- this.$eventBus.$on('applePeoDetail', (res) => {
- setTimeout(() => {
- res.forEach(item => {
- this.memberList.forEach(mem => {
- if (item.id == mem.id) {
- mem.checked = true
- }
- })
+ isShowSelMem: false
+ }
+ },
+ onLoad(option) {
+ const result = uni.getWindowInfo()
+ this.windowHeight = result.windowHeight
+ this.param = {
+ // limitNum: option.limitNum,
+ queryParam: '',
+ startTime: dayjs(Number(option.startTime)).format('YYYY-MM-DD HH:mm:ss'),
+ endTime: dayjs(Number(option.endTime)).format('YYYY-MM-DD HH:mm:ss'),
+ }
+ this.initData()
+ },
+ mounted() {
+ this.$eventBus.$on('applePeoDetail', (res) => {
+ setTimeout(() => {
+ res.forEach(item => {
+ this.memberList.forEach(mem => {
+ if (item.id == mem.id) {
+ mem.checked = true
+ }
})
- this.selList = this.memberList.filter(i => i.checked)
- this.$nextTick(() => {
- this.$forceUpdate()
- })
- }, 500)
+ })
+ this.selList = this.memberList.filter(i => i.checked)
+ this.$nextTick(() => {
+ this.$forceUpdate()
+ })
+ }, 500)
+ })
+ },
+ methods: {
+ onSubmit() {
+ this.$eventBus.$emit('applePeo', this.selList)
+ uni.navigateBack()
+ },
+ changeMem(item, index) {
+ // const { selList, param } = this
+ // if (this.selList.length == param.limitNum && !item.checked) return uni.showToast({
+ // title: `璇ヤ細璁彲瀹圭撼${param.limitNum}浜篳,
+ // icon: 'none'
+ // })
+ // item.checked = !item.checked
+ // this.selList = this.memberList.filter(i => i.checked)
+ // //
+ item.checked = !item.checked
+ const i = this.selList.findIndex(a => a.id === item.id)
+ if (item.checked && i === -1) {
+ this.selList.push(item)
+ } else {
+ this.selList.splice(i, 1)
+ }
+ this.$forceUpdate()
+ },
+ openSeleter() {
+ this.isShowSelMem = true
+ this.selList.forEach(item => {
+ item.checkedTemp = true
+ })
+ this.$forceUpdate()
+ },
+ initData() {
+ const {
+ param,
+ pagination
+ } = this
+ userPagePost({
+ ...param,
+ querySpecial: 1, type: 2, companyType: 1, workStatus: 0
+
+ }).then(res => {
+ this.memberList = res.data || []
+ this.memberList.forEach(i => {
+ const index = this.selList.findIndex(ite => ite.id === i.id)
+ i.checked = index > -1
+ })
})
},
- methods: {
- onSubmit() {
- this.$eventBus.$emit('applePeo', this.selList)
- uni.navigateBack()
- },
- changeMem(item, index) {
- // const { selList, param } = this
- // if (this.selList.length == param.limitNum && !item.checked) return uni.showToast({
- // title: `璇ヤ細璁彲瀹圭撼${param.limitNum}浜篳,
- // icon: 'none'
- // })
- // item.checked = !item.checked
- // this.selList = this.memberList.filter(i => i.checked)
- // //
- item.checked = !item.checked
- const i = this.selList.findIndex(a => a.id === item.id)
- if (item.checked && i === -1) {
- this.selList.push(item)
- } else {
- this.selList.splice(i, 1)
- }
- this.$forceUpdate()
- },
- openSeleter() {
- this.isShowSelMem = true
- this.selList.forEach(item => {
- item.checkedTemp = true
- })
- this.$forceUpdate()
- },
- initData() {
- const {
- param,
- pagination
- } = this
- userPagePost({
- ...param,
- querySpecial: 1, type: 2, companyType: 1,workStatus:0
-
- }).then(res => {
- this.memberList = res.data || []
- this.memberList.forEach(i => {
- const index = this.selList.findIndex(ite => ite.id === i.id)
- i.checked = index > -1
- })
- })
- },
- closeModal() {
- this.selList.forEach(item => {
- item.checkedTemp = true
- })
- this.isShowSelMem = false
- },
- subSelMem() {
- const {
- memberList
- } = this
- this.selList = this.selList.filter(i => i.checkedTemp)
- memberList.forEach(ite => {
- const index = this.selList.findIndex(i => i.id === ite.id)
- ite.checked = index > -1
- })
- this.isShowSelMem = false
- this.$forceUpdate()
- },
- handleRemove(i) {
- this.selList[i].checkedTemp = false
- this.$forceUpdate()
- },
- }
- };
+ closeModal() {
+ this.selList.forEach(item => {
+ item.checkedTemp = true
+ })
+ this.isShowSelMem = false
+ },
+ subSelMem() {
+ const {
+ memberList
+ } = this
+ this.selList = this.selList.filter(i => i.checkedTemp)
+ memberList.forEach(ite => {
+ const index = this.selList.findIndex(i => i.id === ite.id)
+ ite.checked = index > -1
+ })
+ this.isShowSelMem = false
+ this.$forceUpdate()
+ },
+ handleRemove(i) {
+ this.selList[i].checkedTemp = false
+ this.$forceUpdate()
+ },
+ }
+}
</script>
<style lang="scss">
- .modal {
- padding: 40rpx 30rpx;
- max-height: 1000rpx;
+.main_app {
+ position: relative;
+}
- .modal_header {
- display: flex;
- justify-content: space-between;
- align-items: center;
- padding-bottom: 20rpx;
+.modal {
+ padding: 40rpx 30rpx;
+ max-height: 1000rpx;
- .status {
- font-weight: 600;
- }
+ .modal_header {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding-bottom: 20rpx;
- .btn {
- color: $uni-color-primary;
- }
- }
-
- .modal_mem_list {
- max-height: 860rpx;
- overflow: auto;
-
- .line {
- display: flex;
- align-items: center;
- border-bottom: 1rpx solid #e5e5e5;
- padding: 30rpx 0;
-
- .avatar {
- width: 64rpx;
- height: 64rpx;
- border-radius: 50%;
- overflow: hidden;
- margin-right: 20rpx;
- display: flex;
- justify-content: center;
- align-items: center;
- background-color: $uni-color-primary;
- color: #fff;
- }
-
- .content {
- flex: 1;
-
- .depart {
- font-size: 24rpx;
- color: #666666;
- }
-
- .info {
- display: flex;
- margin-bottom: 16rpx;
-
- .name {
- font-size: 30rpx;
- }
- }
- }
-
- .btn {
- width: 80rpx;
- height: 48rpx;
- line-height: 48rpx;
- text-align: center;
- font-size: 24rpx;
- color: #333333;
- border-radius: 4rpx;
- border: 1rpx solid #999999;
- }
- }
- }
- }
-
- .sub_wrap {
- position: fixed;
- bottom: 0;
- background-color: #fff;
- left: 0;
- width: 100%;
- box-shadow: 0rpx 0rpx 6rpx 0rpx #b2b2b2;
- padding: 30rpx 30rpx 42rpx;
-
- .sel_mem {
- display: flex;
- align-items: center;
-
- .members {
- width: 500rpx;
- color: $uni-color-primary;
- white-space: nowrap;
- overflow: hidden; //鏂囨湰瓒呭嚭闅愯棌
- text-overflow: ellipsis;
- margin-right: 20rpx;
- }
-
- .open_icon {
- width: 44rpx;
- height: 44rpx;
- }
+ .status {
+ font-weight: 600;
}
.btn {
- width: 690rpx;
- height: 88rpx;
- line-height: 88rpx;
- background: $uni-color-primary;
- border-radius: 44rpx;
- color: #fff;
- text-align: center;
- margin-top: 22rpx;
+ color: $uni-color-primary;
}
}
- .member_list {
- height: calc( 100vh - 130rpx );
- overflow: auto;
- margin-top: 10rpx;
+ .modal_mem_list {
+ max-height: 860rpx;
+ overflow: auto;
+
.line {
display: flex;
align-items: center;
border-bottom: 1rpx solid #e5e5e5;
padding: 30rpx 0;
-
+
.avatar {
width: 64rpx;
height: 64rpx;
border-radius: 50%;
overflow: hidden;
margin-right: 20rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ background-color: $uni-color-primary;
+ color: #fff;
}
.content {
@@ -334,45 +251,136 @@
.name {
font-size: 30rpx;
}
-
- .tag {
- font-size: 24rpx;
- border-radius: 4rpx;
- border: 1rpx solid #f62710;
- color: #f62710;
- padding: 0rpx 6rpx;
- margin-left: 8rpx;
- display: flex;
- align-items: center;
- }
}
}
- .checked {
- width: 48rpx;
+ .btn {
+ width: 80rpx;
+ height: 48rpx;
+ line-height: 48rpx;
+ text-align: center;
+ font-size: 24rpx;
+ color: #333333;
+ border-radius: 4rpx;
+ border: 1rpx solid #999999;
+ }
+ }
+ }
+}
+
+.sub_wrap {
+ position: fixed;
+ bottom: 0;
+ background-color: #fff;
+ left: 0;
+ width: 100%;
+ box-shadow: 0rpx 0rpx 6rpx 0rpx #b2b2b2;
+ padding: 30rpx 30rpx 42rpx;
+
+ .sel_mem {
+ display: flex;
+ align-items: center;
+
+ .members {
+ width: 500rpx;
+ color: $uni-color-primary;
+ white-space: nowrap;
+ overflow: hidden; //鏂囨湰瓒呭嚭闅愯棌
+ text-overflow: ellipsis;
+ margin-right: 20rpx;
+ }
+
+ .open_icon {
+ width: 44rpx;
+ height: 44rpx;
+ }
+ }
+
+ .btn {
+ width: 690rpx;
+ height: 88rpx;
+ line-height: 88rpx;
+ background: $uni-color-primary;
+ border-radius: 44rpx;
+ color: #fff;
+ text-align: center;
+ margin-top: 22rpx;
+ }
+}
+
+.member_list {
+ height: calc(100vh - 130rpx);
+ overflow: auto;
+ margin-top: 10rpx;
+
+ .line {
+ display: flex;
+ align-items: center;
+ border-bottom: 1rpx solid #e5e5e5;
+ padding: 30rpx 0;
+
+ .avatar {
+ width: 64rpx;
+ height: 64rpx;
+ border-radius: 50%;
+ overflow: hidden;
+ margin-right: 20rpx;
+ }
+
+ .content {
+ flex: 1;
+
+ .depart {
+ font-size: 24rpx;
+ color: #666666;
+ }
+
+ .info {
+ display: flex;
+ margin-bottom: 16rpx;
+
+ .name {
+ font-size: 30rpx;
+ }
+
+ .tag {
+ font-size: 24rpx;
+ border-radius: 4rpx;
+ border: 1rpx solid #f62710;
+ color: #f62710;
+ padding: 0rpx 6rpx;
+ margin-left: 8rpx;
+ display: flex;
+ align-items: center;
+ }
}
}
- .empty {
- width: 100%;
- height: 280rpx;
+ .checked {
+ width: 48rpx;
}
}
- .search_inp {
- height: 72rpx;
- background: #f7f7f7;
- border-radius: 4rpx;
- padding-left: 16rpx;
-
- .search {
- width: 28rpx;
- }
-
- input {
- flex: 1;
- font-size: 28rpx;
- color: #333333;
- }
+ .empty {
+ width: 100%;
+ height: 280rpx;
}
+}
+
+.search_inp {
+ height: 72rpx;
+ background: #f7f7f7;
+ border-radius: 4rpx;
+ padding-left: 16rpx;
+
+ .search {
+ width: 28rpx;
+ }
+
+ input {
+ flex: 1;
+ font-size: 28rpx;
+ color: #333333;
+ }
+}
</style>
\ No newline at end of file
--
Gitblit v1.9.3