优化桌面端界面布局
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="page ctms-page-shell page--flush">
|
||||
<div class="overview">
|
||||
<div class="page ctms-page-shell page--flush" :class="{ 'fee-contracts-page--desktop': isDesktop }">
|
||||
<div class="overview fee-overview">
|
||||
<el-row :gutter="20">
|
||||
<el-col :xs="24" :sm="12" :md="6">
|
||||
<KpiCard
|
||||
@@ -53,7 +53,7 @@
|
||||
|
||||
<StateLoading v-else-if="loading" :rows="6" />
|
||||
|
||||
<div class="main-content-flat unified-shell" v-else>
|
||||
<div class="main-content-flat unified-shell contract-shell" v-else>
|
||||
<div class="filter-container unified-action-bar">
|
||||
<el-form :inline="true" :model="filters" class="filter-form">
|
||||
<div class="filter-item">
|
||||
@@ -208,9 +208,11 @@ import StateError from "../../components/StateError.vue";
|
||||
import KpiCard from "../../components/KpiCard.vue";
|
||||
import ContractFeeEditorDrawer from "./ContractFeeEditorDrawer.vue";
|
||||
import { TEXT } from "../../locales";
|
||||
import { isTauriRuntime } from "../../runtime";
|
||||
|
||||
const router = useRouter();
|
||||
const study = useStudyStore();
|
||||
const isDesktop = isTauriRuntime();
|
||||
const { can } = usePermission();
|
||||
const canCreate = computed(() => can("fees.contract.create"));
|
||||
const canUpdate = computed(() => can("fees.contract.update"));
|
||||
@@ -522,6 +524,76 @@ onMounted(async () => {
|
||||
letter-spacing: 0.02em;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop {
|
||||
height: 100%;
|
||||
min-height: 0;
|
||||
overflow: hidden;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop .fee-overview {
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop .contract-shell {
|
||||
display: flex;
|
||||
flex: 1 1 0;
|
||||
min-height: 0;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop .contract-table-section {
|
||||
flex: 1 1 0;
|
||||
min-height: 0;
|
||||
background: var(--ctms-bg-card);
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop .table-empty {
|
||||
min-height: 132px;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop :deep(.kpi-card) {
|
||||
min-height: 104px;
|
||||
padding: 12px 16px;
|
||||
border-radius: 8px;
|
||||
box-shadow: none;
|
||||
transform: none;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop :deep(.kpi-card:hover) {
|
||||
box-shadow: none;
|
||||
transform: none;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop :deep(.kpi-badge) {
|
||||
margin-bottom: 8px;
|
||||
padding: 3px 9px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop :deep(.kpi-title) {
|
||||
overflow: hidden;
|
||||
font-size: 15px;
|
||||
line-height: 1.25;
|
||||
letter-spacing: 0;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop :deep(.kpi-footer) {
|
||||
padding-top: 8px;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop :deep(.kpi-value) {
|
||||
font-size: 30px;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
|
||||
.fee-contracts-page--desktop :deep(.kpi-unit) {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<style>
|
||||
|
||||
Reference in New Issue
Block a user