<script setup>
|
import {ref} from 'vue'
|
const props = defineProps({
|
data: {
|
type: Object,
|
default: () => {}
|
}
|
})
|
|
const timeType = ref('date')
|
const timeVal = ref()
|
const timeOption = [
|
{ label: '日', value: 'date' },
|
{ label: '月', value: 'month' },
|
{ label: '年', value: 'year' },
|
]
|
|
</script>
|
|
<template>
|
<div class="item">
|
<div class="item-t">{{props.data.name}}</div>
|
<div class="item-c">
|
<div class="select-box">
|
<el-select
|
v-model="timeType"
|
class="m-2"
|
placeholder="Select"
|
>
|
<el-option
|
v-for="item in timeOption"
|
:key="item.value"
|
:label="item.label"
|
:value="item.value"
|
/>
|
</el-select>
|
<el-date-picker
|
v-model="timeVal"
|
:type="timeType"
|
placeholder="请选择"
|
/>
|
</div>
|
<div class="table-box">
|
<table class="cusTable" cellpadding="0" cellspacing="0" border="1">
|
<tr>
|
<th v-for="[key, value] in Object.entries(props.data.heade)" :key="key">{{value}}</th>
|
</tr>
|
<tr v-for="(item,index) in props.data.list" :key="index">
|
<td v-for="[key, value] in Object.entries(props.data.heade)" :key="key">{{item[key]}}</td>
|
</tr>
|
</table>
|
</div>
|
</div>
|
</div>
|
</template>
|
|
<style scoped lang="scss">
|
.item {
|
width: 100%;
|
height: 100%;
|
background: url("@/assets/images_lc/H_100_bg.png") no-repeat;
|
background-size: 100% 100%;
|
|
.item-t {
|
background: url("@/assets/images_lc/title_font.png") no-repeat;
|
padding-left: 12%;
|
color: #fff;
|
font-size: 1.2rem;
|
}
|
.item-c{
|
height: 96%;
|
padding: 1rem;
|
:deep(.el-select__wrapper){
|
background: transparent;
|
box-shadow: none;
|
border: 1px solid #6CD1F8;
|
.el-select__placeholder{
|
color: #6CD1F8;
|
}
|
}
|
:deep(.el-input__wrapper){
|
background: transparent;
|
box-shadow: none;
|
border: 1px solid #6CD1F8;
|
.el-input__inner{
|
color: #6CD1F8;
|
}
|
}
|
.select-box{
|
display: flex;
|
gap: 3rem;
|
:deep(.el-select){
|
width: 43%;
|
}
|
}
|
.table-box{
|
height: 97%;
|
overflow-y: scroll;
|
&::-webkit-scrollbar{
|
display: none;
|
}
|
.cusTable{
|
border-color: #fff;
|
color: #fff;
|
margin-top: 1rem;
|
width: 100%;
|
height: 100%;
|
th{
|
background: #6CD1F8;
|
height: 2.5rem;
|
}
|
td{
|
height: 2.5rem;
|
text-align: center;
|
}
|
}
|
}
|
.info{
|
height: 16%;
|
color: #fff;
|
display: flex;
|
flex-wrap: wrap;
|
margin-top: 1rem;
|
.info-item{
|
width: 50%;
|
display: flex;
|
align-items: center;
|
}
|
}
|
}
|
}
|
</style>
|