<template>
|
<van-popup
|
v-model:show="props.show"
|
:close-on-click-overlay="false"
|
round
|
position="bottom"
|
:style="{ height: '60%' }">
|
<div class="title">
|
<div class="close" @click="close"><van-icon name="arrow-down" size="30" color="#ffffff" /></div>
|
</div>
|
<div class="content">
|
<div class="content_list">
|
<div class="content_list_item" v-for="(item, i) in props.list" :key="i" @click="jump(item)">
|
<div class="content_list_item_name">{{item.unionName}}</div>
|
</div>
|
</div>
|
</div>
|
</van-popup>
|
</template>
|
|
<script setup lang="ts">
|
import { defineProps, defineEmits, ref } from 'vue'
|
|
// 返回上一页带参数
|
const jump = (item: any) => {
|
emit('value', item)
|
}
|
|
const props: any = defineProps({
|
show: {
|
type: Boolean,
|
required: true
|
},
|
list: {
|
type: Array,
|
required: true
|
}
|
})
|
|
const emit = defineEmits(['close', 'value'])
|
|
// 关闭回调
|
const close = () => {
|
emit('close')
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.title {
|
position: fixed;
|
right: 50px;
|
bottom: 100px;
|
z-index: 9;
|
.close {
|
width: 80px;
|
height: 80px;
|
border-radius: 50%;
|
background: #999999;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
}
|
}
|
.content {
|
.content_code {
|
position: fixed;
|
right: 30px;
|
bottom: 100px;
|
img {
|
width: 138px;
|
height: 138px;
|
}
|
}
|
.content_top {
|
top: 0 !important;
|
}
|
.content_search {
|
padding: 30px;
|
background: white;
|
position: sticky;
|
top: 88px;
|
z-index: 9;
|
.content_search_x {
|
height: 24px;
|
}
|
}
|
.content_total {
|
padding: 24px 30px;
|
background: #F7F7F7;
|
font-size: 24px;
|
font-weight: 400;
|
color: #666666;
|
position: sticky;
|
z-index: 99;
|
top: 127px;
|
}
|
.content_list {
|
width: 100%;
|
height: 100%;
|
display: flex;
|
flex-direction: column;
|
.page_content {
|
margin-top: 36px;
|
padding: 0 30px;
|
box-sizing: border-box;
|
.page_content_title {
|
display: flex;
|
flex-direction: column;
|
margin-bottom: 10px;
|
.page_content_title_top {
|
display: flex;
|
align-items: center;
|
justify-content: space-between;
|
span {
|
&:nth-child(1) {
|
font-size: 30px;
|
font-weight: 500;
|
color: #222222;
|
}
|
&:nth-child(2) {
|
flex-shrink: 0;
|
font-size: 24px;
|
font-weight: 400;
|
color: #333333;
|
span {
|
font-size: 24px;
|
color: $nav-color;
|
}
|
}
|
}
|
}
|
.page_content_title_bottom {
|
.green {
|
color: $nav-stateColor7 !important;
|
.black {
|
color: black !important;
|
}
|
}
|
.warning {
|
color: $nav-stateColor5 !important;
|
.black {
|
color: black !important;
|
}
|
}
|
.error {
|
color: $nav-stateColor4 !important;
|
.black {
|
color: black !important;
|
}
|
}
|
span {
|
font-size: 24px;
|
font-weight: 400;
|
color: #666666;
|
}
|
}
|
}
|
.lineBorder {
|
border: none !important;
|
padding-bottom: 0 !important;
|
margin-bottom: 24px;
|
}
|
.page_content_list {
|
width: 100%;
|
display: flex;
|
align-items: center;
|
flex-wrap: wrap;
|
&:first-child {
|
margin: 0;
|
}
|
&:last-child {
|
border: none;
|
}
|
.page_content_list_nums {
|
width: 30%;
|
display: flex;
|
.page_content_list_num_label {
|
font-size: 26px;
|
font-weight: 400;
|
color: #666666;
|
}
|
.page_content_list_num_nr {
|
font-size: 26px;
|
font-weight: 400;
|
color: #222222;
|
}
|
}
|
.page_content_list_num {
|
width: 70%;
|
display: flex;
|
.page_content_list_num_label {
|
font-size: 26px;
|
font-weight: 400;
|
color: #666666;
|
}
|
.page_content_list_num_nr {
|
font-size: 26px;
|
font-weight: 400;
|
color: #222222;
|
}
|
}
|
.page_content_list_items {
|
width: 30%;
|
display: flex;
|
margin-top: 24px;
|
.page_content_list_item_label {
|
font-size: 26px;
|
font-weight: 400;
|
color: #666666;
|
flex-shrink: 0;
|
}
|
.page_content_list_item_nr {
|
font-size: 26px;
|
font-weight: 400;
|
color: #222222;
|
}
|
}
|
.page_content_list_item {
|
width: 70%;
|
display: flex;
|
.page_content_list_item_label {
|
font-size: 26px;
|
font-weight: 400;
|
color: #666666;
|
flex-shrink: 0;
|
}
|
.page_content_list_item_nr {
|
font-size: 26px;
|
font-weight: 400;
|
color: #222222;
|
}
|
}
|
}
|
}
|
.content_list_item {
|
padding: 30px;
|
display: flex;
|
border-bottom: 1px solid #ececec;
|
.serious {
|
color: $nav-stateColor4 !important;
|
}
|
.success {
|
color: $nav-stateColor2 !important;
|
}
|
.warning {
|
color: $nav-stateColor5 !important;
|
}
|
.content_list_item_status {
|
font-size: 28px;
|
margin-right: 10px;
|
}
|
.content_list_item_name {
|
font-size: 28px;
|
}
|
}
|
}
|
}
|
</style>
|