From ff3b306de08451051d7438ccc5d3260504836b72 Mon Sep 17 00:00:00 2001
From: qsh <>
Date: Fri, 30 Jan 2026 14:08:23 +0800
Subject: [PATCH] sc
---
src/api/login.js | 2 +-
src/pages/account/log.vue | 96 +++++++++
src/pages/account/manage.vue | 85 ++++++++
src/pages/account/personal.vue | 89 ++++++++
src/pages/account/quota.vue | 128 +++++++++++-
src/pages/distribution/data.vue | 202 ++++++++++++++++++
src/pages/distributor/add.vue | 83 ++++++++
src/pages/distributor/edit.vue | 93 +++++++++
src/pages/distributor/index.vue | 118 +++++++++++
src/pages/distributor/rule.vue | 123 +++++++++++
src/pages/exception/ai-recharge.vue | 154 +++++++++++++-
src/pages/exception/member-order.vue | 154 +++++++++++++-
src/pages/exception/profit.vue | 154 +++++++++++++-
src/pages/index.vue | 97 ++++++++-
src/pages/member/order.vue | 119 +++++++++++
src/pages/mine/about-us.vue | 258 ++++++++++++++++++++++-
src/pages/mine/about/index.vue | 126 ++++++++++-
src/pages/mine/avatar/index.vue | 102 ++++++++-
src/pages/mine/custom-fields.vue | 245 +++++++++++++++++++++-
src/pages/mine/data-logs.vue | 299 ++++++++++++++++++++++++++-
src/pages/mine/help-center.vue | 230 ++++++++++++++++++++-
src/pages/mine/help/index.vue | 124 +++++++++--
src/pages/mine/index.vue | 90 +++++++-
src/pages/mine/info/edit.vue | 200 ++++++++++++++++--
src/pages/mine/info/index.vue | 113 +++++++++-
src/pages/mine/password-change.vue | 152 +++++++++++++-
src/pages/mine/personal-info.vue | 167 ++++++++++++++-
src/pages/mine/pwd/index.vue | 138 ++++++++++++-
src/pages/mine/school-info.vue | 87 +++++++-
src/pages/mine/setting/index.vue | 154 +++++++++++++-
src/pages/stats/distribution.vue | 227 +++++++++++++++++++-
src/pages/stats/member.vue | 257 ++++++++++++++++++++++-
src/pages/stats/student.vue | 273 +++++++++++++++++++++++-
src/pages/student/analysis.vue | 144 +++++++++++++
src/pages/student/detail.vue | 150 +++++++++++++-
src/pages/student/list.vue | 122 +++++++++++
src/pages/student/remind.vue | 169 +++++++++++++++
src/pages/work/index.vue | 157 ++++++++------
38 files changed, 5491 insertions(+), 190 deletions(-)
diff --git a/src/api/login.js b/src/api/login.js
index 0ec1ff4..0dc40f4 100644
--- a/src/api/login.js
+++ b/src/api/login.js
@@ -39,7 +39,7 @@ export function getInfo() {
// 退出方法
export function logout() {
return request({
- url: '/logout',
+ url: '/system/auth/logout',
method: 'post'
});
}
diff --git a/src/pages/account/log.vue b/src/pages/account/log.vue
index 77c7590..93d94ce 100644
--- a/src/pages/account/log.vue
+++ b/src/pages/account/log.vue
@@ -487,4 +487,100 @@
color: #909399;
cursor: not-allowed;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .log-manage-container {
+ max-width: 1000px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section,
+ .pagination {
+ margin: 0 32rpx 24rpx;
+ padding: 32rpx;
+ }
+
+ .log-list {
+ padding: 0 32rpx;
+ }
+
+ .log-item {
+ margin-bottom: 24rpx;
+ padding: 32rpx;
+ }
+
+ .filter-row {
+ gap: 32rpx;
+ }
+
+ .filter-item {
+ min-width: 250rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .log-time,
+ .log-detail,
+ .log-meta,
+ .page-info {
+ font-size: 22rpx;
+ }
+
+ .log-status {
+ font-size: 22rpx;
+ padding: 6rpx 16rpx;
+ }
+
+ .log-operation {
+ font-size: 28rpx;
+ }
+
+ .page-btn {
+ font-size: 22rpx;
+ padding: 12rpx 24rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .log-manage-container {
+ max-width: 1200px;
+ }
+
+ .filter-item {
+ min-width: 300rpx;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 28rpx;
+ }
+
+ .log-operation {
+ font-size: 30rpx;
+ }
+
+ .log-time,
+ .log-detail,
+ .log-meta {
+ font-size: 24rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/account/manage.vue b/src/pages/account/manage.vue
index 39d8c7c..4649087 100644
--- a/src/pages/account/manage.vue
+++ b/src/pages/account/manage.vue
@@ -387,4 +387,89 @@
font-size: 24rpx;
color: #909399;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .account-manage-container {
+ max-width: 1000px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section {
+ margin: 0 32rpx 24rpx;
+ padding: 32rpx;
+ }
+
+ .account-list {
+ padding: 0 32rpx;
+ }
+
+ .account-item {
+ margin-bottom: 24rpx;
+ padding: 32rpx;
+ }
+
+ .filter-row {
+ gap: 32rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .account-name {
+ font-size: 32rpx;
+ }
+
+ .meta-item {
+ font-size: 22rpx;
+ }
+
+ .action-btn {
+ font-size: 22rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .add-btn {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .account-manage-container {
+ max-width: 1200px;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 28rpx;
+ }
+
+ .account-name {
+ font-size: 34rpx;
+ }
+
+ .meta-item {
+ font-size: 24rpx;
+ }
+
+ .action-btn {
+ font-size: 24rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/account/personal.vue b/src/pages/account/personal.vue
index b2696f4..05a243a 100644
--- a/src/pages/account/personal.vue
+++ b/src/pages/account/personal.vue
@@ -407,4 +407,93 @@
font-size: 24rpx;
color: #909399;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .personal-account-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .info-section,
+ .security-section,
+ .account-info-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .info-row {
+ flex-direction: row;
+ gap: 32rpx;
+ }
+
+ .info-item {
+ flex: 1;
+ }
+
+ .info-label {
+ font-size: 26rpx;
+ }
+
+ .info-input,
+ .info-text,
+ .info-value,
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .info-control {
+ padding: 20rpx;
+ }
+
+ .security-item {
+ padding: 32rpx;
+ }
+
+ .security-label {
+ font-size: 26rpx;
+ }
+
+ .security-status {
+ font-size: 22rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .personal-account-container {
+ max-width: 1000px;
+ }
+
+ .info-section,
+ .security-section,
+ .account-info-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .info-label {
+ font-size: 28rpx;
+ }
+
+ .info-input,
+ .info-text,
+ .info-value,
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .security-label {
+ font-size: 28rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/account/quota.vue b/src/pages/account/quota.vue
index 609f321..00157a6 100644
--- a/src/pages/account/quota.vue
+++ b/src/pages/account/quota.vue
@@ -434,21 +434,141 @@
color: #f56c6c;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
.quota-manage-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section {
+ margin: 0 32rpx 24rpx;
+ padding: 32rpx;
+ }
+
+ .total-quota-section,
+ .distributor-quota-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .quota-stats {
+ margin: 0 32rpx 32rpx;
+ padding: 32rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .quota-item {
+ margin-bottom: 24rpx;
+ }
+
+ .quota-label {
+ font-size: 26rpx;
}
.quota-input {
- width: 160rpx;
- height: 72rpx;
+ width: 180rpx;
+ height: 80rpx;
font-size: 28rpx;
+ padding: 0 20rpx;
+ }
+
+ .quota-unit {
+ font-size: 26rpx;
+ }
+
+ .quota-hint {
+ font-size: 22rpx;
}
.distributor-name {
font-size: 28rpx;
}
+
+ .distributor-id {
+ font-size: 22rpx;
+ }
+
+ .stats-label {
+ font-size: 26rpx;
+ }
+
+ .stats-value {
+ font-size: 32rpx;
+ }
+
+ .quota-list {
+ gap: 24rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .quota-manage-container {
+ max-width: 1000px;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .quota-label {
+ font-size: 28rpx;
+ }
+
+ .quota-input {
+ width: 200rpx;
+ height: 90rpx;
+ font-size: 32rpx;
+ }
+
+ .quota-unit {
+ font-size: 28rpx;
+ }
+
+ .quota-hint {
+ font-size: 24rpx;
+ }
+
+ .distributor-name {
+ font-size: 32rpx;
+ }
+
+ .distributor-id {
+ font-size: 24rpx;
+ }
+
+ .stats-label {
+ font-size: 28rpx;
+ }
+
+ .stats-value {
+ font-size: 36rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/distribution/data.vue b/src/pages/distribution/data.vue
index a31b819..7ea55c3 100644
--- a/src/pages/distribution/data.vue
+++ b/src/pages/distribution/data.vue
@@ -669,4 +669,206 @@
color: #909399;
cursor: not-allowed;
}
+
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
+ .distribution-data-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section {
+ margin: 0 32rpx 24rpx;
+ padding: 32rpx;
+ }
+
+ .metrics-section,
+ .trend-section,
+ .detail-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .metrics-grid {
+ grid-template-columns: repeat(4, 1fr);
+ gap: 24rpx;
+ }
+
+ .metric-card {
+ padding: 32rpx;
+ }
+
+ .metric-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .metric-value {
+ font-size: 36rpx;
+ }
+
+ .metric-label {
+ font-size: 26rpx;
+ }
+
+ .chart-container {
+ padding: 32rpx;
+ }
+
+ .chart-title {
+ font-size: 32rpx;
+ }
+
+ .chart-bars {
+ height: 360rpx;
+ }
+
+ .bar {
+ width: 56rpx;
+ }
+
+ .bar-label {
+ font-size: 22rpx;
+ }
+
+ .bar-value {
+ font-size: 22rpx;
+ }
+
+ .detail-item {
+ padding: 32rpx;
+ }
+
+ .detail-time {
+ font-size: 22rpx;
+ }
+
+ .detail-status {
+ font-size: 22rpx;
+ }
+
+ .info-item {
+ font-size: 22rpx;
+ }
+
+ .info-label {
+ width: 100rpx;
+ }
+
+ .info-value {
+ font-size: 22rpx;
+ }
+
+ .amount-label {
+ font-size: 22rpx;
+ }
+
+ .amount-value {
+ font-size: 32rpx;
+ }
+
+ .pagination {
+ padding: 32rpx;
+ }
+
+ .page-info {
+ font-size: 22rpx;
+ }
+
+ .page-btn {
+ font-size: 22rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .export-btn {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .distribution-data-container {
+ max-width: 1000px;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .metric-icon {
+ font-size: 64rpx;
+ }
+
+ .metric-value {
+ font-size: 40rpx;
+ }
+
+ .metric-label {
+ font-size: 28rpx;
+ }
+
+ .chart-title {
+ font-size: 36rpx;
+ }
+
+ .detail-time {
+ font-size: 24rpx;
+ }
+
+ .detail-status {
+ font-size: 24rpx;
+ }
+
+ .info-item {
+ font-size: 24rpx;
+ }
+
+ .info-label {
+ width: 120rpx;
+ }
+
+ .info-value {
+ font-size: 24rpx;
+ }
+
+ .amount-label {
+ font-size: 24rpx;
+ }
+
+ .amount-value {
+ font-size: 36rpx;
+ }
+
+ .page-btn {
+ font-size: 24rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/distributor/add.vue b/src/pages/distributor/add.vue
index 9af88e7..f45f32f 100644
--- a/src/pages/distributor/add.vue
+++ b/src/pages/distributor/add.vue
@@ -311,4 +311,87 @@
font-size: 18rpx;
color: #909399;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .distributor-add-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .form-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .form-card {
+ padding: 32rpx;
+ }
+
+ .form-row {
+ margin-bottom: 32rpx;
+ }
+
+ .form-label {
+ font-size: 26rpx;
+ }
+
+ .form-input,
+ .picker {
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .form-textarea {
+ height: 200rpx;
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .textarea-count {
+ font-size: 20rpx;
+ }
+
+ .save-btn {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .distributor-add-container {
+ max-width: 1000px;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .form-label {
+ font-size: 28rpx;
+ }
+
+ .form-input,
+ .picker {
+ font-size: 28rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .form-textarea {
+ font-size: 28rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/distributor/edit.vue b/src/pages/distributor/edit.vue
index 6cf8039..fb409fe 100644
--- a/src/pages/distributor/edit.vue
+++ b/src/pages/distributor/edit.vue
@@ -372,4 +372,97 @@
background-color: #fef0f0;
color: #f56c6c;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .distributor-edit-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .form-section,
+ .action-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .form-card {
+ padding: 32rpx;
+ }
+
+ .form-row {
+ margin-bottom: 32rpx;
+ }
+
+ .form-label {
+ font-size: 26rpx;
+ }
+
+ .form-input,
+ .picker {
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .form-textarea {
+ height: 200rpx;
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .textarea-count {
+ font-size: 20rpx;
+ }
+
+ .save-btn {
+ font-size: 28rpx;
+ }
+
+ .action-btn {
+ font-size: 26rpx;
+ padding: 24rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .distributor-edit-container {
+ max-width: 1000px;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .form-label {
+ font-size: 28rpx;
+ }
+
+ .form-input,
+ .picker {
+ font-size: 28rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .form-textarea {
+ font-size: 28rpx;
+ }
+
+ .action-btn {
+ font-size: 28rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/distributor/index.vue b/src/pages/distributor/index.vue
index c948f56..addf0f6 100644
--- a/src/pages/distributor/index.vue
+++ b/src/pages/distributor/index.vue
@@ -492,4 +492,122 @@
color: #909399;
cursor: not-allowed;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .distributor-list-container {
+ max-width: 1000px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section {
+ margin: 0 32rpx 24rpx;
+ padding: 32rpx;
+ }
+
+ .distributor-list-section {
+ padding: 0 32rpx;
+ }
+
+ .pagination {
+ margin: 0 32rpx 32rpx;
+ padding: 32rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .distributor-item {
+ padding: 32rpx;
+ }
+
+ .distributor-avatar {
+ width: 100rpx;
+ height: 100rpx;
+ border-radius: 50rpx;
+ margin-right: 32rpx;
+ }
+
+ .avatar-placeholder {
+ font-size: 36rpx;
+ }
+
+ .distributor-name {
+ font-size: 32rpx;
+ }
+
+ .distributor-meta {
+ gap: 24rpx;
+ }
+
+ .meta-item {
+ font-size: 22rpx;
+ }
+
+ .action-btn {
+ font-size: 18rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .page-info {
+ font-size: 22rpx;
+ }
+
+ .page-btn {
+ font-size: 22rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .add-btn {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .distributor-list-container {
+ max-width: 1200px;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .distributor-name {
+ font-size: 34rpx;
+ }
+
+ .meta-item {
+ font-size: 24rpx;
+ }
+
+ .action-btn {
+ font-size: 20rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/distributor/rule.vue b/src/pages/distributor/rule.vue
index 9a3f967..0778123 100644
--- a/src/pages/distributor/rule.vue
+++ b/src/pages/distributor/rule.vue
@@ -470,4 +470,127 @@
color: #303133;
margin-left: 4rpx;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .distributor-rule-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .rule-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .rule-card {
+ padding: 32rpx;
+ }
+
+ .rule-row {
+ margin-bottom: 32rpx;
+ }
+
+ .rule-label {
+ font-size: 26rpx;
+ }
+
+ .switch {
+ transform: scale(1);
+ }
+
+ .picker {
+ min-width: 250rpx;
+ padding: 20rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .form-input {
+ min-width: 200rpx;
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .input-suffix {
+ font-size: 26rpx;
+ right: 40rpx;
+ }
+
+ .level-item {
+ padding: 24rpx;
+ }
+
+ .level-title {
+ font-size: 28rpx;
+ }
+
+ .condition-label,
+ .benefit-label {
+ font-size: 20rpx;
+ }
+
+ .condition-value,
+ .benefit-value {
+ font-size: 20rpx;
+ }
+
+ .save-btn {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .distributor-rule-container {
+ max-width: 1000px;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .rule-label {
+ font-size: 28rpx;
+ }
+
+ .picker {
+ min-width: 300rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .form-input {
+ min-width: 250rpx;
+ font-size: 28rpx;
+ }
+
+ .input-suffix {
+ font-size: 28rpx;
+ }
+
+ .level-title {
+ font-size: 32rpx;
+ }
+
+ .condition-label,
+ .benefit-label {
+ font-size: 22rpx;
+ }
+
+ .condition-value,
+ .benefit-value {
+ font-size: 22rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/exception/ai-recharge.vue b/src/pages/exception/ai-recharge.vue
index 5a6f80a..32b2eb0 100644
--- a/src/pages/exception/ai-recharge.vue
+++ b/src/pages/exception/ai-recharge.vue
@@ -582,28 +582,170 @@
color: #909399;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
.ai-recharge-exception-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
}
- .stats-section,
- .exception-section {
+ .stats-section {
+ margin: 32rpx;
padding: 40rpx;
}
+ .exception-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .tips-section {
+ margin: 0 32rpx 32rpx;
+ padding: 40rpx;
+ }
+
+ .page-header {
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .refresh-btn {
+ font-size: 30rpx;
+ }
+
+ .stats-grid {
+ gap: 24rpx;
+ }
+
+ .stat-card {
+ padding: 32rpx;
+ }
+
+ .stat-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .stat-value {
+ font-size: 36rpx;
+ }
+
+ .stat-label {
+ font-size: 26rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ }
+
+ .filter-tab {
+ padding: 16rpx 32rpx;
+ font-size: 26rpx;
+ }
+
+ .exception-item {
+ padding: 32rpx;
+ }
+
.exception-title {
font-size: 32rpx;
}
+ .exception-status {
+ padding: 12rpx 24rpx;
+ font-size: 22rpx;
+ }
+
+ .exception-desc {
+ font-size: 26rpx;
+ }
+
+ .info-label {
+ font-size: 24rpx;
+ }
+
+ .info-value {
+ font-size: 24rpx;
+ }
+
+ .action-btn {
+ padding: 16rpx 32rpx;
+ font-size: 26rpx;
+ }
+
+ .tips-title {
+ font-size: 32rpx;
+ }
+
+ .tips-content {
+ font-size: 26rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .ai-recharge-exception-container {
+ max-width: 1000px;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .refresh-btn {
+ font-size: 32rpx;
+ }
+
+ .stat-icon {
+ font-size: 64rpx;
+ }
+
+ .stat-value {
+ font-size: 40rpx;
+ }
+
+ .stat-label {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .filter-tab {
+ font-size: 28rpx;
+ }
+
+ .exception-title {
+ font-size: 34rpx;
+ }
+
.exception-desc {
font-size: 28rpx;
}
- .info-item {
- font-size: 24rpx;
+ .info-label {
+ font-size: 26rpx;
+ }
+
+ .info-value {
+ font-size: 26rpx;
+ }
+
+ .action-btn {
+ font-size: 28rpx;
+ }
+
+ .tips-title {
+ font-size: 34rpx;
+ }
+
+ .tips-content {
+ font-size: 28rpx;
}
}
\ No newline at end of file
diff --git a/src/pages/exception/member-order.vue b/src/pages/exception/member-order.vue
index 3b7db2c..261cdae 100644
--- a/src/pages/exception/member-order.vue
+++ b/src/pages/exception/member-order.vue
@@ -617,28 +617,170 @@
color: #909399;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
.member-order-exception-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
}
- .stats-section,
- .exception-section {
+ .stats-section {
+ margin: 32rpx;
padding: 40rpx;
}
+ .exception-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .tips-section {
+ margin: 0 32rpx 32rpx;
+ padding: 40rpx;
+ }
+
+ .page-header {
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .refresh-btn {
+ font-size: 30rpx;
+ }
+
+ .stats-grid {
+ gap: 24rpx;
+ }
+
+ .stat-card {
+ padding: 32rpx;
+ }
+
+ .stat-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .stat-value {
+ font-size: 36rpx;
+ }
+
+ .stat-label {
+ font-size: 26rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ }
+
+ .filter-tab {
+ padding: 16rpx 32rpx;
+ font-size: 26rpx;
+ }
+
+ .exception-item {
+ padding: 32rpx;
+ }
+
.exception-title {
font-size: 32rpx;
}
+ .exception-status {
+ padding: 12rpx 24rpx;
+ font-size: 22rpx;
+ }
+
+ .exception-desc {
+ font-size: 26rpx;
+ }
+
+ .info-label {
+ font-size: 24rpx;
+ }
+
+ .info-value {
+ font-size: 24rpx;
+ }
+
+ .action-btn {
+ padding: 16rpx 32rpx;
+ font-size: 26rpx;
+ }
+
+ .tips-title {
+ font-size: 32rpx;
+ }
+
+ .tips-content {
+ font-size: 26rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .member-order-exception-container {
+ max-width: 1000px;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .refresh-btn {
+ font-size: 32rpx;
+ }
+
+ .stat-icon {
+ font-size: 64rpx;
+ }
+
+ .stat-value {
+ font-size: 40rpx;
+ }
+
+ .stat-label {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .filter-tab {
+ font-size: 28rpx;
+ }
+
+ .exception-title {
+ font-size: 34rpx;
+ }
+
.exception-desc {
font-size: 28rpx;
}
- .info-item {
- font-size: 24rpx;
+ .info-label {
+ font-size: 26rpx;
+ }
+
+ .info-value {
+ font-size: 26rpx;
+ }
+
+ .action-btn {
+ font-size: 28rpx;
+ }
+
+ .tips-title {
+ font-size: 34rpx;
+ }
+
+ .tips-content {
+ font-size: 28rpx;
}
}
\ No newline at end of file
diff --git a/src/pages/exception/profit.vue b/src/pages/exception/profit.vue
index 9dcab19..3e18d86 100644
--- a/src/pages/exception/profit.vue
+++ b/src/pages/exception/profit.vue
@@ -579,28 +579,170 @@
color: #909399;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
.profit-exception-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
}
- .stats-section,
- .exception-section {
+ .stats-section {
+ margin: 32rpx;
padding: 40rpx;
}
+ .exception-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .tips-section {
+ margin: 0 32rpx 32rpx;
+ padding: 40rpx;
+ }
+
+ .page-header {
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .refresh-btn {
+ font-size: 30rpx;
+ }
+
+ .stats-grid {
+ gap: 24rpx;
+ }
+
+ .stat-card {
+ padding: 32rpx;
+ }
+
+ .stat-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .stat-value {
+ font-size: 36rpx;
+ }
+
+ .stat-label {
+ font-size: 26rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ }
+
+ .filter-tab {
+ padding: 16rpx 32rpx;
+ font-size: 26rpx;
+ }
+
+ .exception-item {
+ padding: 32rpx;
+ }
+
.exception-title {
font-size: 32rpx;
}
+ .exception-status {
+ padding: 12rpx 24rpx;
+ font-size: 22rpx;
+ }
+
+ .exception-desc {
+ font-size: 26rpx;
+ }
+
+ .info-label {
+ font-size: 24rpx;
+ }
+
+ .info-value {
+ font-size: 24rpx;
+ }
+
+ .action-btn {
+ padding: 16rpx 32rpx;
+ font-size: 26rpx;
+ }
+
+ .tips-title {
+ font-size: 32rpx;
+ }
+
+ .tips-content {
+ font-size: 26rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .profit-exception-container {
+ max-width: 1000px;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .refresh-btn {
+ font-size: 32rpx;
+ }
+
+ .stat-icon {
+ font-size: 64rpx;
+ }
+
+ .stat-value {
+ font-size: 40rpx;
+ }
+
+ .stat-label {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .filter-tab {
+ font-size: 28rpx;
+ }
+
+ .exception-title {
+ font-size: 34rpx;
+ }
+
.exception-desc {
font-size: 28rpx;
}
- .info-item {
- font-size: 24rpx;
+ .info-label {
+ font-size: 26rpx;
+ }
+
+ .info-value {
+ font-size: 26rpx;
+ }
+
+ .action-btn {
+ font-size: 28rpx;
+ }
+
+ .tips-title {
+ font-size: 34rpx;
+ }
+
+ .tips-content {
+ font-size: 28rpx;
}
}
\ No newline at end of file
diff --git a/src/pages/index.vue b/src/pages/index.vue
index c8a39b8..0e54adb 100644
--- a/src/pages/index.vue
+++ b/src/pages/index.vue
@@ -517,24 +517,113 @@
}
}
- /* 平板和大屏响应式 */
+ /* 平板响应式 */
@media screen and (min-width: 768px) {
+ .index-container {
+ max-width: 900px;
+ margin: 0 auto;
+ padding: 40rpx;
+ width: 100%;
+ }
+
+ .welcome-section {
+ padding: 56rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .welcome-title {
+ font-size: 48rpx;
+ }
+
+ .welcome-desc {
+ font-size: 28rpx;
+ }
+
+ .stats-section {
+ gap: 40rpx;
+ }
+
+ .section {
+ padding: 32rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .stats-grid {
+ grid-template-columns: repeat(4, 1fr);
+ gap: 20rpx;
+ }
+
+ .stat-card {
+ padding: 32rpx;
+ }
+
+ .stat-icon {
+ font-size: 56rpx;
+ margin-right: 24rpx;
+ }
+
+ .stat-value {
+ font-size: 32rpx;
+ }
+
+ .stat-label {
+ font-size: 24rpx;
+ }
+
+ .feature-card {
+ padding: 32rpx;
+ }
+
+ .feature-icon {
+ width: 100rpx;
+ height: 100rpx;
+ margin-right: 24rpx;
+ }
+
+ .icon-text {
+ font-size: 48rpx;
+ }
+
+ .feature-title {
+ font-size: 32rpx;
+ }
+
+ .feature-desc {
+ font-size: 24rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
.index-container {
max-width: 1000px;
}
.welcome-section {
- padding: 60rpx;
+ padding: 64rpx;
}
.welcome-title {
font-size: 52rpx;
}
+ .welcome-desc {
+ font-size: 32rpx;
+ }
+
.section {
padding: 36rpx;
}
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 36rpx;
+ }
+
.stats-grid {
gap: 24rpx;
}
@@ -551,6 +640,10 @@
font-size: 36rpx;
}
+ .stat-label {
+ font-size: 26rpx;
+ }
+
.feature-card {
padding: 36rpx;
}
diff --git a/src/pages/member/order.vue b/src/pages/member/order.vue
index be446d9..1f6f2ab 100644
--- a/src/pages/member/order.vue
+++ b/src/pages/member/order.vue
@@ -620,4 +620,123 @@
color: #909399;
cursor: not-allowed;
}
+
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
+ .member-order-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section {
+ margin: 0 32rpx 24rpx;
+ padding: 32rpx;
+ }
+
+ .order-list-section {
+ padding: 0 32rpx;
+ }
+
+ .pagination {
+ margin: 0 32rpx 32rpx;
+ padding: 32rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .order-item {
+ padding: 32rpx;
+ }
+
+ .order-code {
+ font-size: 28rpx;
+ }
+
+ .order-status {
+ font-size: 22rpx;
+ }
+
+ .info-item {
+ font-size: 24rpx;
+ }
+
+ .info-label {
+ width: 160rpx;
+ }
+
+ .action-btn {
+ font-size: 18rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .page-info {
+ font-size: 22rpx;
+ }
+
+ .page-btn {
+ font-size: 22rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .export-btn {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .member-order-container {
+ max-width: 1000px;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .order-code {
+ font-size: 32rpx;
+ }
+
+ .order-status {
+ font-size: 24rpx;
+ }
+
+ .info-item {
+ font-size: 26rpx;
+ }
+
+ .info-label {
+ width: 180rpx;
+ }
+
+ .action-btn {
+ font-size: 20rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/mine/about-us.vue b/src/pages/mine/about-us.vue
index ba6e5e2..e55cd7c 100644
--- a/src/pages/mine/about-us.vue
+++ b/src/pages/mine/about-us.vue
@@ -445,39 +445,293 @@
color: #909399;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.about-us-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
}
.company-section {
+ margin: 24rpx;
padding: 80rpx 40rpx;
}
+ .company-logo {
+ width: 180rpx;
+ height: 180rpx;
+ border-radius: 90rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .logo-icon {
+ font-size: 90rpx;
+ }
+
.company-name {
font-size: 40rpx;
+ margin-bottom: 20rpx;
}
.company-slogan {
font-size: 28rpx;
}
+ .version-section {
+ margin: 0 24rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .version-item {
+ padding: 24rpx 0;
+ }
+
+ .version-label {
+ font-size: 32rpx;
+ }
+
+ .version-value {
+ font-size: 32rpx;
+ }
+
+ .features-section {
+ margin: 0 24rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 40rpx;
+ }
+
.features-list {
grid-template-columns: repeat(auto-fill, minmax(400rpx, 1fr));
+ gap: 32rpx;
+ }
+
+ .feature-item {
+ padding: 32rpx;
+ border-radius: 16rpx;
+ }
+
+ .feature-icon {
+ font-size: 48rpx;
+ margin-right: 20rpx;
}
.feature-title {
font-size: 32rpx;
+ margin-bottom: 12rpx;
}
.feature-desc {
font-size: 28rpx;
}
+ .contact-section {
+ margin: 0 24rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .contact-list {
+ gap: 32rpx;
+ }
+
+ .contact-item {
+ padding: 32rpx;
+ border-radius: 16rpx;
+ }
+
+ .contact-icon {
+ font-size: 48rpx;
+ margin-right: 24rpx;
+ }
+
+ .contact-label {
+ font-size: 28rpx;
+ margin-bottom: 8rpx;
+ }
+
.contact-value {
font-size: 32rpx;
}
+
+ .copyright-section {
+ padding: 60rpx 40rpx;
+ }
+
+ .copyright-text {
+ font-size: 32rpx;
+ margin-bottom: 12rpx;
+ }
+
+ .copyright-desc {
+ font-size: 28rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .policy-item {
+ font-size: 28rpx;
+ }
+
+ .policy-divider {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .about-us-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .company-section {
+ padding: 100rpx 50rpx;
+ }
+
+ .company-logo {
+ width: 200rpx;
+ height: 200rpx;
+ border-radius: 100rpx;
+ margin-bottom: 48rpx;
+ }
+
+ .logo-icon {
+ font-size: 100rpx;
+ }
+
+ .company-name {
+ font-size: 48rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .company-slogan {
+ font-size: 32rpx;
+ }
+
+ .version-section {
+ padding: 48rpx;
+ }
+
+ .version-item {
+ padding: 28rpx 0;
+ }
+
+ .version-label {
+ font-size: 36rpx;
+ }
+
+ .version-value {
+ font-size: 36rpx;
+ }
+
+ .features-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 48rpx;
+ }
+
+ .features-list {
+ grid-template-columns: repeat(auto-fill, minmax(450rpx, 1fr));
+ gap: 40rpx;
+ }
+
+ .feature-item {
+ padding: 40rpx;
+ border-radius: 20rpx;
+ }
+
+ .feature-icon {
+ font-size: 56rpx;
+ margin-right: 24rpx;
+ }
+
+ .feature-title {
+ font-size: 36rpx;
+ margin-bottom: 16rpx;
+ }
+
+ .feature-desc {
+ font-size: 32rpx;
+ }
+
+ .contact-section {
+ padding: 48rpx;
+ }
+
+ .contact-list {
+ gap: 40rpx;
+ }
+
+ .contact-item {
+ padding: 40rpx;
+ border-radius: 20rpx;
+ }
+
+ .contact-icon {
+ font-size: 56rpx;
+ margin-right: 28rpx;
+ }
+
+ .contact-label {
+ font-size: 32rpx;
+ margin-bottom: 12rpx;
+ }
+
+ .contact-value {
+ font-size: 36rpx;
+ }
+
+ .copyright-section {
+ padding: 80rpx 50rpx;
+ }
+
+ .copyright-text {
+ font-size: 36rpx;
+ margin-bottom: 16rpx;
+ }
+
+ .copyright-desc {
+ font-size: 32rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .policy-item {
+ font-size: 32rpx;
+ }
+
+ .policy-divider {
+ font-size: 32rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/mine/about/index.vue b/src/pages/mine/about/index.vue
index 205ada6..54f7de0 100644
--- a/src/pages/mine/about/index.vue
+++ b/src/pages/mine/about/index.vue
@@ -55,11 +55,10 @@
background-color: #f8f8f8;
}
- .copyright {
- margin-top: 50rpx;
- text-align: center;
- line-height: 60rpx;
- color: #999;
+ .about-container {
+ min-height: 100vh;
+ display: flex;
+ flex-direction: column;
}
.header-section {
@@ -67,5 +66,122 @@
padding: 30rpx 0 0;
flex-direction: column;
align-items: center;
+ background-color: #fff;
+ padding: 60rpx 24rpx 40rpx;
+ }
+
+ .header-section image {
+ width: 150rpx;
+ height: 150rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .content-section {
+ flex: 1;
+ background-color: #fff;
+ margin: 16rpx 0;
+ }
+
+ .menu-list {
+ padding: 0 24rpx;
+ }
+
+ .list-cell {
+ border-bottom: 1rpx solid #f0f0f0;
+ }
+
+ .menu-item-box {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 28rpx;
+ padding: 28rpx 0;
+ color: #303133;
+ }
+
+ .text-right {
+ color: #606266;
+ }
+
+ .copyright {
+ margin-top: 50rpx;
+ text-align: center;
+ line-height: 60rpx;
+ color: #999;
+ font-size: 24rpx;
+ padding-bottom: 40rpx;
+ }
+
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
+ .about-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ background-color: #fff;
+ }
+
+ .header-section {
+ padding: 60rpx 32rpx 40rpx;
+ margin-bottom: 0;
+ }
+
+ .header-section image {
+ width: 180rpx;
+ height: 180rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .content-section {
+ margin: 0;
+ padding: 0 32rpx;
+ }
+
+ .menu-list {
+ padding: 0;
+ }
+
+ .menu-item-box {
+ font-size: 32rpx;
+ padding: 32rpx 0;
+ }
+
+ .copyright {
+ margin-top: 80rpx;
+ font-size: 26rpx;
+ padding-bottom: 60rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .about-container {
+ max-width: 1000px;
+ }
+
+ .header-section {
+ padding: 80rpx 48rpx 60rpx;
+ }
+
+ .header-section image {
+ width: 200rpx;
+ height: 200rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .content-section {
+ padding: 0 48rpx;
+ }
+
+ .menu-item-box {
+ font-size: 36rpx;
+ padding: 36rpx 0;
+ }
+
+ .copyright {
+ margin-top: 100rpx;
+ font-size: 28rpx;
+ padding-bottom: 80rpx;
+ }
}
diff --git a/src/pages/mine/avatar/index.vue b/src/pages/mine/avatar/index.vue
index c43806e..60a05cc 100644
--- a/src/pages/mine/avatar/index.vue
+++ b/src/pages/mine/avatar/index.vue
@@ -333,13 +333,34 @@
diff --git a/src/pages/mine/custom-fields.vue b/src/pages/mine/custom-fields.vue
index 76584b7..c7af8e0 100644
--- a/src/pages/mine/custom-fields.vue
+++ b/src/pages/mine/custom-fields.vue
@@ -622,19 +622,84 @@
margin-bottom: 8rpx;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.custom-fields-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .save-btn {
+ font-size: 32rpx;
}
.fields-section {
+ margin: 24rpx;
padding: 40rpx;
}
+ .section-header {
+ margin-bottom: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ }
+
+ .add-btn {
+ padding: 16rpx 32rpx;
+ font-size: 28rpx;
+ }
+
+ .add-icon {
+ margin-right: 12rpx;
+ font-size: 32rpx;
+ }
+
+ .fields-list {
+ gap: 40rpx;
+ }
+
.field-item {
padding: 32rpx;
+ border-radius: 16rpx;
+ }
+
+ .field-header {
+ margin-bottom: 32rpx;
+ }
+
+ .field-title {
+ font-size: 32rpx;
+ }
+
+ .action-btn {
+ width: 48rpx;
+ height: 48rpx;
+ font-size: 28rpx;
+ }
+
+ .field-form {
+ gap: 32rpx;
+ }
+
+ .form-label {
+ font-size: 28rpx;
+ margin-bottom: 12rpx;
}
.form-input {
@@ -649,12 +714,188 @@
padding: 20rpx;
}
+ .form-picker {
+ height: 80rpx;
+ }
+
+ .picker-display {
+ font-size: 28rpx;
+ padding: 0 24rpx;
+ }
+
+ .form-switch {
+ transform: scale(1.4);
+ }
+
.rules-section {
+ margin: 0 24rpx 24rpx;
padding: 40rpx;
}
+ .rules-content {
+ gap: 32rpx;
+ }
+
+ .rule-item {
+ padding: 24rpx 0;
+ }
+
+ .rule-label {
+ font-size: 32rpx;
+ }
+
.tips-section {
+ margin: 0 24rpx 32rpx;
padding: 40rpx;
}
+
+ .tips-title {
+ font-size: 32rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .tips-content {
+ font-size: 28rpx;
+ }
+
+ .tip-item {
+ margin-bottom: 12rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .custom-fields-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .save-btn {
+ font-size: 36rpx;
+ }
+
+ .fields-section {
+ padding: 48rpx;
+ }
+
+ .section-header {
+ margin-bottom: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .add-btn {
+ padding: 20rpx 40rpx;
+ font-size: 32rpx;
+ }
+
+ .add-icon {
+ margin-right: 16rpx;
+ font-size: 36rpx;
+ }
+
+ .fields-list {
+ gap: 48rpx;
+ }
+
+ .field-item {
+ padding: 40rpx;
+ border-radius: 20rpx;
+ }
+
+ .field-header {
+ margin-bottom: 40rpx;
+ }
+
+ .field-title {
+ font-size: 36rpx;
+ }
+
+ .action-btn {
+ width: 56rpx;
+ height: 56rpx;
+ font-size: 32rpx;
+ }
+
+ .field-form {
+ gap: 40rpx;
+ }
+
+ .form-label {
+ font-size: 32rpx;
+ margin-bottom: 16rpx;
+ }
+
+ .form-input {
+ height: 96rpx;
+ font-size: 32rpx;
+ padding: 0 32rpx;
+ }
+
+ .form-textarea {
+ min-height: 200rpx;
+ font-size: 32rpx;
+ padding: 24rpx;
+ }
+
+ .form-picker {
+ height: 96rpx;
+ }
+
+ .picker-display {
+ font-size: 32rpx;
+ padding: 0 32rpx;
+ }
+
+ .form-switch {
+ transform: scale(1.6);
+ }
+
+ .rules-section {
+ padding: 48rpx;
+ }
+
+ .rules-content {
+ gap: 40rpx;
+ }
+
+ .rule-item {
+ padding: 28rpx 0;
+ }
+
+ .rule-label {
+ font-size: 36rpx;
+ }
+
+ .tips-section {
+ padding: 48rpx;
+ }
+
+ .tips-title {
+ font-size: 36rpx;
+ margin-bottom: 28rpx;
+ }
+
+ .tips-content {
+ font-size: 32rpx;
+ }
+
+ .tip-item {
+ margin-bottom: 16rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/mine/data-logs.vue b/src/pages/mine/data-logs.vue
index 5519a55..fe4263a 100644
--- a/src/pages/mine/data-logs.vue
+++ b/src/pages/mine/data-logs.vue
@@ -622,25 +622,314 @@
margin-bottom: 8rpx;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.data-logs-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .tab-container {
+ margin: 24rpx;
+ }
+
+ .tab-item {
+ padding: 28rpx;
+ font-size: 32rpx;
}
.logs-section,
.backup-section {
+ margin: 0 24rpx 24rpx;
padding: 40rpx;
}
- .log-item,
- .backup-item {
- padding: 32rpx;
+ .section-header {
+ margin-bottom: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
}
.search-input {
width: 400rpx;
+ height: 80rpx;
+ font-size: 28rpx;
+ padding: 0 32rpx;
+ }
+
+ .logs-list {
+ gap: 32rpx;
+ }
+
+ .log-item {
+ padding: 32rpx;
+ border-radius: 16rpx;
+ }
+
+ .log-header {
+ margin-bottom: 16rpx;
+ }
+
+ .log-actor {
+ font-size: 32rpx;
+ }
+
+ .log-time {
+ font-size: 28rpx;
+ }
+
+ .log-content {
+ font-size: 28rpx;
+ margin-bottom: 16rpx;
+ }
+
+ .log-ip {
+ font-size: 28rpx;
+ }
+
+ .info-text {
+ font-size: 28rpx;
+ padding: 12rpx 20rpx;
+ }
+
+ .backup-list {
+ gap: 32rpx;
+ }
+
+ .backup-item {
+ padding: 32rpx;
+ border-radius: 16rpx;
+ }
+
+ .backup-header {
+ margin-bottom: 24rpx;
+ }
+
+ .backup-time {
+ font-size: 32rpx;
+ }
+
+ .backup-status {
+ padding: 8rpx 20rpx;
+ font-size: 24rpx;
+ }
+
+ .backup-details {
+ margin-bottom: 24rpx;
+ }
+
+ .detail-item {
+ margin-bottom: 16rpx;
+ font-size: 28rpx;
+ }
+
+ .detail-label {
+ width: 140rpx;
+ }
+
+ .action-btn {
+ padding: 16rpx 32rpx;
+ font-size: 28rpx;
+ }
+
+ .empty-icon {
+ font-size: 120rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .empty-text {
+ font-size: 32rpx;
+ }
+
+ .pagination {
+ margin-top: 40rpx;
+ padding-top: 32rpx;
+ }
+
+ .page-info {
+ font-size: 28rpx;
+ }
+
+ .page-btn {
+ padding: 12rpx 32rpx;
+ font-size: 28rpx;
+ }
+
+ .tips-section {
+ margin: 0 24rpx 32rpx;
+ padding: 40rpx;
+ }
+
+ .tips-title {
+ font-size: 32rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .tips-content {
+ font-size: 28rpx;
+ }
+
+ .tip-item {
+ margin-bottom: 12rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .data-logs-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .tab-item {
+ padding: 32rpx;
+ font-size: 36rpx;
+ }
+
+ .logs-section,
+ .backup-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .search-input {
+ width: 450rpx;
+ height: 96rpx;
+ font-size: 32rpx;
+ padding: 0 40rpx;
+ }
+
+ .logs-list {
+ gap: 40rpx;
+ }
+
+ .log-item {
+ padding: 40rpx;
+ border-radius: 20rpx;
+ }
+
+ .log-actor {
+ font-size: 36rpx;
+ }
+
+ .log-time {
+ font-size: 32rpx;
+ }
+
+ .log-content {
+ font-size: 32rpx;
+ }
+
+ .log-ip {
+ font-size: 32rpx;
+ }
+
+ .info-text {
+ font-size: 32rpx;
+ padding: 16rpx 24rpx;
+ }
+
+ .backup-list {
+ gap: 40rpx;
+ }
+
+ .backup-item {
+ padding: 40rpx;
+ border-radius: 20rpx;
+ }
+
+ .backup-time {
+ font-size: 36rpx;
+ }
+
+ .backup-status {
+ padding: 12rpx 24rpx;
+ font-size: 28rpx;
+ }
+
+ .detail-item {
+ margin-bottom: 20rpx;
+ font-size: 32rpx;
+ }
+
+ .detail-label {
+ width: 160rpx;
+ }
+
+ .action-btn {
+ padding: 20rpx 40rpx;
+ font-size: 32rpx;
+ }
+
+ .empty-icon {
+ font-size: 140rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .empty-text {
+ font-size: 36rpx;
+ }
+
+ .pagination {
+ margin-top: 48rpx;
+ padding-top: 40rpx;
+ }
+
+ .page-info {
+ font-size: 32rpx;
+ }
+
+ .page-btn {
+ padding: 16rpx 40rpx;
+ font-size: 32rpx;
+ }
+
+ .tips-section {
+ padding: 48rpx;
+ }
+
+ .tips-title {
+ font-size: 36rpx;
+ margin-bottom: 28rpx;
+ }
+
+ .tips-content {
+ font-size: 32rpx;
+ }
+
+ .tip-item {
+ margin-bottom: 16rpx;
}
}
\ No newline at end of file
diff --git a/src/pages/mine/help-center.vue b/src/pages/mine/help-center.vue
index ea6e492..77f2d48 100644
--- a/src/pages/mine/help-center.vue
+++ b/src/pages/mine/help-center.vue
@@ -524,37 +524,253 @@
color: #909399;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.help-center-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
}
- .faq-section,
- .guide-section,
- .contact-section {
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .faq-section {
+ margin: 24rpx;
padding: 40rpx;
}
+ .guide-section {
+ margin: 0 24rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .contact-section {
+ margin: 0 24rpx 32rpx;
+ padding: 40rpx;
+ }
+
+ .section-header {
+ margin-bottom: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ }
+
+ .search-input {
+ width: 350rpx;
+ height: 72rpx;
+ padding: 0 32rpx;
+ font-size: 28rpx;
+ }
+
+ .faq-list {
+ gap: 24rpx;
+ }
+
+ .faq-item {
+ border-radius: 16rpx;
+ }
+
+ .faq-header {
+ padding: 32rpx;
+ }
+
.faq-question {
font-size: 32rpx;
}
- .faq-answer {
+ .faq-icon {
font-size: 28rpx;
+ margin-left: 24rpx;
+ }
+
+ .faq-answer {
+ padding: 0 32rpx 32rpx;
+ font-size: 28rpx;
+ }
+
+ .guide-list {
+ gap: 24rpx;
+ margin-top: 32rpx;
+ }
+
+ .guide-item {
+ padding: 32rpx;
+ border-radius: 16rpx;
+ }
+
+ .guide-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
}
.guide-title {
font-size: 32rpx;
+ margin-bottom: 12rpx;
}
.guide-desc {
- font-size: 26rpx;
+ font-size: 28rpx;
+ }
+
+ .guide-arrow {
+ font-size: 36rpx;
+ }
+
+ .contact-info {
+ gap: 32rpx;
+ margin-top: 32rpx;
+ }
+
+ .contact-item {
+ padding: 32rpx;
+ border-radius: 16rpx;
+ }
+
+ .contact-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .contact-label {
+ font-size: 28rpx;
+ margin-bottom: 8rpx;
}
.contact-value {
font-size: 32rpx;
}
+
+ .contact-action {
+ padding: 16rpx 32rpx;
+ font-size: 28rpx;
+ }
+
+ .empty-icon {
+ font-size: 120rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .empty-text {
+ font-size: 32rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .help-center-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .faq-section,
+ .guide-section,
+ .contact-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .search-input {
+ width: 400rpx;
+ height: 84rpx;
+ padding: 0 36rpx;
+ font-size: 32rpx;
+ }
+
+ .faq-header {
+ padding: 40rpx;
+ }
+
+ .faq-question {
+ font-size: 36rpx;
+ }
+
+ .faq-icon {
+ font-size: 32rpx;
+ }
+
+ .faq-answer {
+ padding: 0 40rpx 40rpx;
+ font-size: 32rpx;
+ }
+
+ .guide-item {
+ padding: 40rpx;
+ }
+
+ .guide-icon {
+ font-size: 64rpx;
+ margin-right: 40rpx;
+ }
+
+ .guide-title {
+ font-size: 36rpx;
+ }
+
+ .guide-desc {
+ font-size: 32rpx;
+ }
+
+ .guide-arrow {
+ font-size: 40rpx;
+ }
+
+ .contact-item {
+ padding: 40rpx;
+ }
+
+ .contact-icon {
+ font-size: 64rpx;
+ margin-right: 40rpx;
+ }
+
+ .contact-label {
+ font-size: 32rpx;
+ }
+
+ .contact-value {
+ font-size: 36rpx;
+ }
+
+ .contact-action {
+ padding: 20rpx 40rpx;
+ font-size: 32rpx;
+ }
+
+ .empty-icon {
+ font-size: 140rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .empty-text {
+ font-size: 36rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/mine/help/index.vue b/src/pages/mine/help/index.vue
index bc2399b..ab5314e 100644
--- a/src/pages/mine/help/index.vue
+++ b/src/pages/mine/help/index.vue
@@ -63,46 +63,136 @@
}
.help-container {
+ min-height: 100vh;
margin-bottom: 100rpx;
- padding: 30rpx;
+ padding: 24rpx;
}
.list-title {
margin-bottom: 30rpx;
}
- .childList {
- background: #ffffff;
- box-shadow: 0px 0px 10rpx rgba(193, 193, 193, 0.2);
- border-radius: 16rpx;
- margin-top: 10rpx;
- }
-
- .line {
- width: 100%;
- height: 1rpx;
- background-color: #F5F5F5;
- }
-
.text-title {
color: #303133;
font-size: 32rpx;
font-weight: bold;
margin-left: 10rpx;
+ line-height: 1.4;
+ display: flex;
+ align-items: center;
.iconfont {
font-size: 16px;
margin-right: 10rpx;
+ color: #409eff;
}
}
- .text-item {
- font-size: 28rpx;
- padding: 24rpx;
+ .childList {
+ background: #ffffff;
+ box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.08);
+ border-radius: 16rpx;
+ margin-top: 16rpx;
+ overflow: hidden;
}
.question {
color: #606266;
font-size: 28rpx;
+ transition: all 0.3s ease;
+ }
+
+ .question:hover {
+ background-color: #f5f7fa;
+ }
+
+ .text-item {
+ font-size: 28rpx;
+ padding: 24rpx;
+ line-height: 1.4;
+ }
+
+ .line {
+ width: 100%;
+ height: 1rpx;
+ background-color: #F5F5F5;
+ }
+
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
+ .help-container {
+ max-width: 900px;
+ margin: 0 auto 100rpx;
+ width: 100%;
+ background-color: #fff;
+ padding: 40rpx;
+ border-radius: 0;
+ }
+
+ .list-title {
+ margin-bottom: 40rpx;
+ }
+
+ .text-title {
+ font-size: 36rpx;
+ margin-left: 16rpx;
+
+ .iconfont {
+ font-size: 20px;
+ margin-right: 16rpx;
+ }
+ }
+
+ .childList {
+ margin-top: 20rpx;
+ border-radius: 20rpx;
+ box-shadow: 0 6rpx 24rpx rgba(0, 0, 0, 0.1);
+ }
+
+ .question {
+ font-size: 32rpx;
+ }
+
+ .text-item {
+ font-size: 32rpx;
+ padding: 32rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .help-container {
+ max-width: 1000px;
+ padding: 60rpx;
+ }
+
+ .list-title {
+ margin-bottom: 50rpx;
+ }
+
+ .text-title {
+ font-size: 40rpx;
+ margin-left: 20rpx;
+
+ .iconfont {
+ font-size: 24px;
+ margin-right: 20rpx;
+ }
+ }
+
+ .childList {
+ margin-top: 24rpx;
+ border-radius: 24rpx;
+ box-shadow: 0 8rpx 32rpx rgba(0, 0, 0, 0.12);
+ }
+
+ .question {
+ font-size: 36rpx;
+ }
+
+ .text-item {
+ font-size: 36rpx;
+ padding: 40rpx;
+ }
}
diff --git a/src/pages/mine/index.vue b/src/pages/mine/index.vue
index a92ca1a..7cd5c3a 100644
--- a/src/pages/mine/index.vue
+++ b/src/pages/mine/index.vue
@@ -491,16 +491,28 @@
line-height: 1.4;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.mine-container {
max-width: 900px;
margin: 0 auto;
- padding: 30rpx;
+ padding: 40rpx;
+ width: 100%;
}
.welcome-section {
- padding: 50rpx;
+ padding: 56rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .avatar {
+ width: 144rpx;
+ height: 144rpx;
+ margin-right: 32rpx;
+ }
+
+ .avatar-icon {
+ font-size: 72rpx;
}
.user-name {
@@ -511,6 +523,10 @@
font-size: 28rpx;
}
+ .user-stats {
+ padding-top: 32rpx;
+ }
+
.stat-value {
font-size: 36rpx;
}
@@ -519,13 +535,30 @@
font-size: 24rpx;
}
+ .role-switch {
+ margin-bottom: 40rpx;
+ }
+
+ .role-tab {
+ padding: 28rpx;
+ font-size: 32rpx;
+ }
+
+ .feature-section {
+ margin-bottom: 40rpx;
+ }
+
.section-title {
font-size: 36rpx;
- margin-bottom: 30rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .feature-grid {
+ gap: 24rpx;
}
.feature-card {
- padding: 30rpx;
+ padding: 32rpx;
}
.feature-icon {
@@ -547,23 +580,60 @@
}
}
- /* 平板和大屏响应式 */
- @media screen and (min-width: 768px) {
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
.mine-container {
max-width: 1000px;
}
.welcome-section {
- padding: 60rpx;
+ padding: 64rpx;
+ }
+
+ .avatar {
+ width: 160rpx;
+ height: 160rpx;
+ margin-right: 40rpx;
+ }
+
+ .avatar-icon {
+ font-size: 80rpx;
+ }
+
+ .user-name {
+ font-size: 48rpx;
+ }
+
+ .user-role {
+ font-size: 32rpx;
+ }
+
+ .stat-value {
+ font-size: 40rpx;
+ }
+
+ .stat-label {
+ font-size: 26rpx;
+ }
+
+ .role-tab {
+ padding: 32rpx;
+ font-size: 36rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 40rpx;
}
.feature-card {
- padding: 36rpx;
+ padding: 40rpx;
}
.feature-icon {
width: 120rpx;
height: 120rpx;
+ margin-right: 32rpx;
}
.icon-text {
diff --git a/src/pages/mine/info/edit.vue b/src/pages/mine/info/edit.vue
index a145bb5..4c1642b 100644
--- a/src/pages/mine/info/edit.vue
+++ b/src/pages/mine/info/edit.vue
@@ -90,35 +90,203 @@
diff --git a/src/pages/mine/info/index.vue b/src/pages/mine/info/index.vue
index f1eddbd..f1fdd05 100644
--- a/src/pages/mine/info/index.vue
+++ b/src/pages/mine/info/index.vue
@@ -30,8 +30,117 @@
getUser()
-
diff --git a/src/pages/mine/password-change.vue b/src/pages/mine/password-change.vue
index 6c7a024..1848981 100644
--- a/src/pages/mine/password-change.vue
+++ b/src/pages/mine/password-change.vue
@@ -466,14 +466,33 @@
line-height: 1.6;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.password-change-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .save-btn {
+ font-size: 32rpx;
}
.form-section {
+ margin: 24rpx;
padding: 40rpx;
}
@@ -487,21 +506,148 @@
}
.form-input {
- height: 100rpx;
+ height: 96rpx;
font-size: 32rpx;
padding: 0 120rpx 0 32rpx;
}
+ .password-toggle {
+ font-size: 36rpx;
+ }
+
.strength-section {
+ margin: 0 24rpx 24rpx;
padding: 40rpx;
}
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .strength-tips {
+ margin-bottom: 40rpx;
+ }
+
.tip-item {
font-size: 28rpx;
+ margin-bottom: 16rpx;
+ }
+
+ .strength-indicator {
+ padding: 24rpx;
+ }
+
+ .strength-label {
+ font-size: 28rpx;
+ }
+
+ .strength-text {
+ font-size: 28rpx;
}
.operation-tips {
+ margin: 0 24rpx 32rpx;
padding: 40rpx;
}
+
+ .tips-title {
+ font-size: 32rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .tips-content {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .password-change-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .save-btn {
+ font-size: 36rpx;
+ }
+
+ .form-section {
+ padding: 48rpx;
+ }
+
+ .form-group {
+ margin-bottom: 48rpx;
+ }
+
+ .form-label {
+ font-size: 36rpx;
+ margin-bottom: 20rpx;
+ }
+
+ .form-input {
+ height: 112rpx;
+ font-size: 36rpx;
+ padding: 0 140rpx 0 40rpx;
+ }
+
+ .password-toggle {
+ font-size: 40rpx;
+ }
+
+ .strength-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .strength-tips {
+ margin-bottom: 48rpx;
+ }
+
+ .tip-item {
+ font-size: 32rpx;
+ margin-bottom: 20rpx;
+ }
+
+ .strength-indicator {
+ padding: 28rpx;
+ }
+
+ .strength-label {
+ font-size: 32rpx;
+ }
+
+ .strength-text {
+ font-size: 32rpx;
+ }
+
+ .operation-tips {
+ padding: 48rpx;
+ }
+
+ .tips-title {
+ font-size: 36rpx;
+ margin-bottom: 28rpx;
+ }
+
+ .tips-content {
+ font-size: 32rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/mine/personal-info.vue b/src/pages/mine/personal-info.vue
index 9002a5c..ab4a8a7 100644
--- a/src/pages/mine/personal-info.vue
+++ b/src/pages/mine/personal-info.vue
@@ -466,17 +466,53 @@
font-weight: 500;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.personal-info-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .save-btn {
+ font-size: 32rpx;
}
.form-section {
+ margin: 24rpx;
padding: 40rpx;
}
+ .avatar-section {
+ margin-bottom: 48rpx;
+ }
+
+ .avatar-preview {
+ width: 240rpx;
+ height: 240rpx;
+ }
+
+ .avatar-icon {
+ font-size: 96rpx;
+ }
+
+ .avatar-tip {
+ font-size: 24rpx;
+ }
+
.form-group {
margin-bottom: 40rpx;
}
@@ -487,7 +523,7 @@
}
.form-input {
- height: 100rpx;
+ height: 96rpx;
font-size: 32rpx;
padding: 0 32rpx;
}
@@ -499,13 +535,136 @@
}
.form-text {
- height: 100rpx;
+ height: 96rpx;
+ font-size: 32rpx;
+ padding: 0 32rpx;
+ }
+
+ .picker-display {
font-size: 32rpx;
padding: 0 32rpx;
}
.account-section {
+ margin: 0 24rpx 32rpx;
padding: 40rpx;
}
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .account-info {
+ gap: 24rpx;
+ }
+
+ .info-item {
+ padding: 24rpx 0;
+ }
+
+ .info-label,
+ .info-value {
+ font-size: 32rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .personal-info-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .save-btn {
+ font-size: 36rpx;
+ }
+
+ .form-section {
+ padding: 48rpx;
+ }
+
+ .avatar-section {
+ margin-bottom: 56rpx;
+ }
+
+ .avatar-preview {
+ width: 280rpx;
+ height: 280rpx;
+ }
+
+ .avatar-icon {
+ font-size: 112rpx;
+ }
+
+ .avatar-tip {
+ font-size: 28rpx;
+ }
+
+ .form-group {
+ margin-bottom: 48rpx;
+ }
+
+ .form-label {
+ font-size: 36rpx;
+ margin-bottom: 20rpx;
+ }
+
+ .form-input {
+ height: 112rpx;
+ font-size: 36rpx;
+ padding: 0 40rpx;
+ }
+
+ .form-textarea {
+ min-height: 240rpx;
+ font-size: 36rpx;
+ padding: 40rpx;
+ }
+
+ .form-text {
+ height: 112rpx;
+ font-size: 36rpx;
+ padding: 0 40rpx;
+ }
+
+ .picker-display {
+ font-size: 36rpx;
+ padding: 0 40rpx;
+ }
+
+ .account-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .account-info {
+ gap: 28rpx;
+ }
+
+ .info-item {
+ padding: 28rpx 0;
+ }
+
+ .info-label,
+ .info-value {
+ font-size: 36rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/mine/pwd/index.vue b/src/pages/mine/pwd/index.vue
index 4074320..741071d 100644
--- a/src/pages/mine/pwd/index.vue
+++ b/src/pages/mine/pwd/index.vue
@@ -69,11 +69,143 @@
diff --git a/src/pages/mine/school-info.vue b/src/pages/mine/school-info.vue
index 4cfe6ba..7532cd7 100644
--- a/src/pages/mine/school-info.vue
+++ b/src/pages/mine/school-info.vue
@@ -318,14 +318,33 @@
margin-bottom: 8rpx;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.school-info-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .save-btn {
+ font-size: 32rpx;
}
.form-section {
+ margin: 24rpx;
padding: 40rpx;
}
@@ -339,7 +358,7 @@
}
.form-input {
- height: 100rpx;
+ height: 96rpx;
font-size: 32rpx;
padding: 0 32rpx;
}
@@ -351,6 +370,7 @@
}
.tips-section {
+ margin: 0 24rpx 32rpx;
padding: 40rpx;
}
@@ -362,22 +382,75 @@
.tips-content {
font-size: 28rpx;
}
+
+ .tip-item {
+ margin-bottom: 12rpx;
+ }
}
- /* 平板和大屏响应式 */
- @media screen and (min-width: 768px) {
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .school-info-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .save-btn {
+ font-size: 36rpx;
+ }
+
.form-section {
- padding: 50rpx;
+ padding: 48rpx;
+ }
+
+ .form-group {
+ margin-bottom: 48rpx;
+ }
+
+ .form-label {
+ font-size: 36rpx;
+ margin-bottom: 20rpx;
}
.form-input {
- height: 120rpx;
+ height: 112rpx;
font-size: 36rpx;
+ padding: 0 40rpx;
}
.form-textarea {
min-height: 240rpx;
font-size: 36rpx;
+ padding: 40rpx;
+ }
+
+ .tips-section {
+ padding: 48rpx;
+ }
+
+ .tips-title {
+ font-size: 36rpx;
+ margin-bottom: 28rpx;
+ }
+
+ .tips-content {
+ font-size: 32rpx;
+ }
+
+ .tip-item {
+ margin-bottom: 16rpx;
}
}
\ No newline at end of file
diff --git a/src/pages/mine/setting/index.vue b/src/pages/mine/setting/index.vue
index 1215df6..6b7eb01 100644
--- a/src/pages/mine/setting/index.vue
+++ b/src/pages/mine/setting/index.vue
@@ -59,20 +59,160 @@
diff --git a/src/pages/stats/distribution.vue b/src/pages/stats/distribution.vue
index b2266a5..07dc9d1 100644
--- a/src/pages/stats/distribution.vue
+++ b/src/pages/stats/distribution.vue
@@ -563,27 +563,246 @@
margin-left: 16rpx;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.distribution-stats-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
}
- .metrics-grid {
- grid-template-columns: repeat(4, 1fr);
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .export-btn {
+ font-size: 32rpx;
+ }
+
+ .filter-section {
+ margin: 24rpx;
+ padding: 32rpx;
}
.filter-row {
gap: 24rpx;
}
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .metrics-section,
+ .chart-section,
+ .ranking-section {
+ margin: 0 24rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .metrics-grid {
+ grid-template-columns: repeat(4, 1fr);
+ gap: 24rpx;
+ }
+
+ .metric-card {
+ padding: 32rpx;
+ }
+
+ .metric-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .metric-value {
+ font-size: 36rpx;
+ }
+
+ .metric-label {
+ font-size: 26rpx;
+ }
+
+ .chart-container {
+ padding: 32rpx;
+ }
+
+ .chart-title {
+ font-size: 32rpx;
+ }
+
.chart-bars {
height: 400rpx;
+ gap: 24rpx;
}
.bar {
width: 60rpx;
}
+
+ .bar-label,
+ .bar-value {
+ font-size: 22rpx;
+ }
+
+ .ranking-item {
+ padding: 32rpx;
+ }
+
+ .ranking-number {
+ width: 56rpx;
+ height: 56rpx;
+ font-size: 26rpx;
+ }
+
+ .ranking-name {
+ font-size: 32rpx;
+ }
+
+ .stat-label,
+ .stat-value {
+ font-size: 22rpx;
+ }
+
+ .ranking-arrow {
+ font-size: 36rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .distribution-stats-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .export-btn {
+ font-size: 36rpx;
+ }
+
+ .filter-section {
+ padding: 40rpx;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .filter-control {
+ padding: 24rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .metrics-section,
+ .chart-section,
+ .ranking-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .metrics-grid {
+ gap: 32rpx;
+ }
+
+ .metric-card {
+ padding: 40rpx;
+ }
+
+ .metric-icon {
+ font-size: 64rpx;
+ margin-right: 40rpx;
+ }
+
+ .metric-value {
+ font-size: 40rpx;
+ }
+
+ .metric-label {
+ font-size: 28rpx;
+ }
+
+ .chart-container {
+ padding: 40rpx;
+ }
+
+ .chart-title {
+ font-size: 36rpx;
+ }
+
+ .chart-bars {
+ height: 450rpx;
+ gap: 32rpx;
+ }
+
+ .bar {
+ width: 72rpx;
+ }
+
+ .bar-label,
+ .bar-value {
+ font-size: 24rpx;
+ }
+
+ .ranking-item {
+ padding: 40rpx;
+ }
+
+ .ranking-number {
+ width: 64rpx;
+ height: 64rpx;
+ font-size: 28rpx;
+ }
+
+ .ranking-name {
+ font-size: 36rpx;
+ }
+
+ .stat-label,
+ .stat-value {
+ font-size: 24rpx;
+ }
+
+ .ranking-arrow {
+ font-size: 40rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/stats/member.vue b/src/pages/stats/member.vue
index ed040fc..4b42714 100644
--- a/src/pages/stats/member.vue
+++ b/src/pages/stats/member.vue
@@ -721,23 +721,276 @@
color: #f56c6c;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.member-stats-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .export-btn {
+ font-size: 32rpx;
+ }
+
+ .filter-section {
+ margin: 24rpx;
+ padding: 32rpx;
+ }
+
+ .filter-row {
+ gap: 24rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .metrics-section,
+ .chart-section,
+ .distribution-section,
+ .recent-orders-section {
+ margin: 0 24rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
}
.metrics-grid {
grid-template-columns: repeat(4, 1fr);
+ gap: 24rpx;
+ }
+
+ .metric-card {
+ padding: 32rpx;
+ }
+
+ .metric-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .metric-value {
+ font-size: 36rpx;
+ }
+
+ .metric-label {
+ font-size: 26rpx;
+ }
+
+ .chart-container {
+ padding: 32rpx;
+ }
+
+ .chart-title {
+ font-size: 32rpx;
+ }
+
+ .chart-lines {
+ height: 360rpx;
+ }
+
+ .legend-text {
+ font-size: 22rpx;
}
.distribution-grid {
gap: 24rpx;
}
+ .distribution-card {
+ padding: 32rpx;
+ }
+
+ .distribution-icon {
+ font-size: 56rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .distribution-title {
+ font-size: 26rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .stat-label,
+ .stat-value {
+ font-size: 22rpx;
+ }
+
.order-item {
padding: 32rpx;
}
+
+ .order-no {
+ font-size: 26rpx;
+ }
+
+ .order-status {
+ font-size: 20rpx;
+ padding: 6rpx 16rpx;
+ }
+
+ .info-label,
+ .info-value {
+ font-size: 22rpx;
+ }
+
+ .info-label {
+ width: 140rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .member-stats-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .export-btn {
+ font-size: 36rpx;
+ }
+
+ .filter-section {
+ padding: 40rpx;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .filter-control {
+ padding: 24rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .metrics-section,
+ .chart-section,
+ .distribution-section,
+ .recent-orders-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .metrics-grid {
+ gap: 32rpx;
+ }
+
+ .metric-card {
+ padding: 40rpx;
+ }
+
+ .metric-icon {
+ font-size: 64rpx;
+ margin-right: 40rpx;
+ }
+
+ .metric-value {
+ font-size: 40rpx;
+ }
+
+ .metric-label {
+ font-size: 28rpx;
+ }
+
+ .chart-container {
+ padding: 40rpx;
+ }
+
+ .chart-title {
+ font-size: 36rpx;
+ }
+
+ .chart-lines {
+ height: 400rpx;
+ }
+
+ .legend-text {
+ font-size: 24rpx;
+ }
+
+ .distribution-card {
+ padding: 40rpx;
+ }
+
+ .distribution-icon {
+ font-size: 64rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .distribution-title {
+ font-size: 28rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .stat-label,
+ .stat-value {
+ font-size: 24rpx;
+ }
+
+ .order-item {
+ padding: 40rpx;
+ }
+
+ .order-no {
+ font-size: 28rpx;
+ }
+
+ .order-status {
+ font-size: 22rpx;
+ padding: 8rpx 20rpx;
+ }
+
+ .info-label,
+ .info-value {
+ font-size: 24rpx;
+ }
+
+ .info-label {
+ width: 160rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/stats/student.vue b/src/pages/stats/student.vue
index 1b62285..8b2a992 100644
--- a/src/pages/stats/student.vue
+++ b/src/pages/stats/student.vue
@@ -736,27 +736,296 @@
cursor: pointer;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.student-stats-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
+ }
+
+ .page-header {
+ height: 140rpx;
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .back-icon {
+ font-size: 48rpx;
+ }
+
+ .export-btn {
+ font-size: 32rpx;
+ }
+
+ .filter-section {
+ margin: 24rpx;
+ padding: 32rpx;
+ }
+
+ .filter-row {
+ gap: 24rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .metrics-section,
+ .chart-section,
+ .distribution-section,
+ .student-section {
+ margin: 0 24rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
}
.metrics-grid {
grid-template-columns: repeat(4, 1fr);
+ gap: 24rpx;
+ }
+
+ .metric-card {
+ padding: 32rpx;
+ }
+
+ .metric-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .metric-value {
+ font-size: 36rpx;
+ }
+
+ .metric-label {
+ font-size: 26rpx;
+ }
+
+ .chart-container {
+ padding: 32rpx;
+ }
+
+ .chart-title {
+ font-size: 32rpx;
}
.chart-bars {
height: 400rpx;
+ gap: 24rpx;
}
.bar {
width: 60rpx;
}
+ .bar-label,
+ .bar-value {
+ font-size: 22rpx;
+ }
+
+ .distribution-grid {
+ gap: 24rpx;
+ }
+
+ .distribution-card {
+ padding: 32rpx;
+ }
+
+ .distribution-icon {
+ font-size: 56rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .distribution-title {
+ font-size: 26rpx;
+ margin-bottom: 24rpx;
+ }
+
+ .stat-label,
+ .stat-value {
+ font-size: 22rpx;
+ }
+
.student-item {
padding: 32rpx;
}
+
+ .student-name {
+ font-size: 32rpx;
+ }
+
+ .student-meta {
+ gap: 40rpx;
+ }
+
+ .meta-label,
+ .meta-value {
+ font-size: 22rpx;
+ }
+
+ .student-arrow {
+ font-size: 36rpx;
+ }
+
+ .load-more {
+ padding: 32rpx;
+ font-size: 26rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .student-stats-container {
+ max-width: 1000px;
+ }
+
+ .page-header {
+ height: 160rpx;
+ padding: 0 64rpx;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .back-icon {
+ font-size: 56rpx;
+ }
+
+ .export-btn {
+ font-size: 36rpx;
+ }
+
+ .filter-section {
+ padding: 40rpx;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .filter-control {
+ padding: 24rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .metrics-section,
+ .chart-section,
+ .distribution-section,
+ .student-section {
+ padding: 48rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ margin-bottom: 40rpx;
+ }
+
+ .metrics-grid {
+ gap: 32rpx;
+ }
+
+ .metric-card {
+ padding: 40rpx;
+ }
+
+ .metric-icon {
+ font-size: 64rpx;
+ margin-right: 40rpx;
+ }
+
+ .metric-value {
+ font-size: 40rpx;
+ }
+
+ .metric-label {
+ font-size: 28rpx;
+ }
+
+ .chart-container {
+ padding: 40rpx;
+ }
+
+ .chart-title {
+ font-size: 36rpx;
+ }
+
+ .chart-bars {
+ height: 450rpx;
+ gap: 32rpx;
+ }
+
+ .bar {
+ width: 72rpx;
+ }
+
+ .bar-label,
+ .bar-value {
+ font-size: 24rpx;
+ }
+
+ .distribution-card {
+ padding: 40rpx;
+ }
+
+ .distribution-icon {
+ font-size: 64rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .distribution-title {
+ font-size: 28rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .stat-label,
+ .stat-value {
+ font-size: 24rpx;
+ }
+
+ .student-item {
+ padding: 40rpx;
+ }
+
+ .student-name {
+ font-size: 36rpx;
+ }
+
+ .student-meta {
+ gap: 48rpx;
+ }
+
+ .meta-label,
+ .meta-value {
+ font-size: 24rpx;
+ }
+
+ .student-arrow {
+ font-size: 40rpx;
+ }
+
+ .load-more {
+ padding: 40rpx;
+ font-size: 28rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/student/analysis.vue b/src/pages/student/analysis.vue
index 3390c46..29e3356 100644
--- a/src/pages/student/analysis.vue
+++ b/src/pages/student/analysis.vue
@@ -472,4 +472,148 @@
.ranking-cell.count {
color: #67c23a;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .learning-analysis-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section,
+ .core-data-section,
+ .trend-section,
+ .distribution-section,
+ .ranking-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .page-header {
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .export-btn {
+ font-size: 26rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .filter-row {
+ gap: 32rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .data-item {
+ gap: 12rpx;
+ }
+
+ .data-value {
+ font-size: 32rpx;
+ }
+
+ .data-label {
+ font-size: 20rpx;
+ }
+
+ .chart-placeholder {
+ padding: 64rpx;
+ }
+
+ .chart-rect {
+ height: 350rpx;
+ }
+
+ .chart-text {
+ font-size: 26rpx;
+ }
+
+ .trend-hint,
+ .distribution-hint {
+ font-size: 22rpx;
+ }
+
+ .header-item {
+ font-size: 22rpx;
+ }
+
+ .ranking-item {
+ padding: 20rpx;
+ }
+
+ .ranking-cell {
+ font-size: 22rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .learning-analysis-container {
+ max-width: 1000px;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .export-btn {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .data-value {
+ font-size: 36rpx;
+ }
+
+ .data-label {
+ font-size: 22rpx;
+ }
+
+ .chart-rect {
+ height: 400rpx;
+ }
+
+ .chart-text {
+ font-size: 28rpx;
+ }
+
+ .trend-hint,
+ .distribution-hint {
+ font-size: 24rpx;
+ }
+
+ .header-item {
+ font-size: 24rpx;
+ }
+
+ .ranking-cell {
+ font-size: 24rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/student/detail.vue b/src/pages/student/detail.vue
index 0ad2d3d..43c6ffc 100644
--- a/src/pages/student/detail.vue
+++ b/src/pages/student/detail.vue
@@ -624,19 +624,161 @@
text-align: center;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
.student-detail-container {
max-width: 900px;
margin: 0 auto;
+ width: 100%;
}
- .learning-metrics {
- grid-template-columns: repeat(4, 1fr);
+ .info-section,
+ .learning-section,
+ .record-section,
+ .action-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
}
.info-row {
gap: 48rpx;
}
+
+ .info-label {
+ font-size: 26rpx;
+ }
+
+ .info-value {
+ font-size: 32rpx;
+ }
+
+ .learning-metrics {
+ grid-template-columns: repeat(4, 1fr);
+ gap: 24rpx;
+ }
+
+ .metric-item {
+ padding: 32rpx;
+ }
+
+ .metric-icon {
+ font-size: 56rpx;
+ margin-right: 32rpx;
+ }
+
+ .metric-value {
+ font-size: 36rpx;
+ }
+
+ .metric-label {
+ font-size: 26rpx;
+ }
+
+ .progress-title {
+ font-size: 32rpx;
+ }
+
+ .progress-subject,
+ .progress-percentage {
+ font-size: 26rpx;
+ }
+
+ .record-item {
+ padding: 32rpx;
+ }
+
+ .record-time {
+ font-size: 22rpx;
+ width: 200rpx;
+ }
+
+ .record-type {
+ font-size: 26rpx;
+ }
+
+ .record-detail {
+ font-size: 22rpx;
+ }
+
+ .record-status {
+ font-size: 22rpx;
+ }
+
+ .action-grid {
+ gap: 24rpx;
+ }
+
+ .action-item {
+ padding: 40rpx 24rpx;
+ }
+
+ .action-icon {
+ font-size: 56rpx;
+ }
+
+ .action-label {
+ font-size: 22rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .student-detail-container {
+ max-width: 1000px;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .info-label {
+ font-size: 28rpx;
+ }
+
+ .info-value {
+ font-size: 34rpx;
+ }
+
+ .metric-icon {
+ font-size: 64rpx;
+ }
+
+ .metric-value {
+ font-size: 40rpx;
+ }
+
+ .metric-label {
+ font-size: 28rpx;
+ }
+
+ .progress-title {
+ font-size: 34rpx;
+ }
+
+ .progress-subject,
+ .progress-percentage {
+ font-size: 28rpx;
+ }
+
+ .record-type {
+ font-size: 28rpx;
+ }
+
+ .record-detail {
+ font-size: 24rpx;
+ }
+
+ .record-status {
+ font-size: 24rpx;
+ }
+
+ .action-label {
+ font-size: 24rpx;
+ }
}
\ No newline at end of file
diff --git a/src/pages/student/list.vue b/src/pages/student/list.vue
index 6282c0e..e371aec 100644
--- a/src/pages/student/list.vue
+++ b/src/pages/student/list.vue
@@ -508,4 +508,126 @@
color: #909399;
cursor: not-allowed;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .student-list-container {
+ max-width: 1000px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .filter-section {
+ margin: 0 32rpx 24rpx;
+ padding: 32rpx;
+ }
+
+ .student-list-section {
+ padding: 0 32rpx;
+ }
+
+ .pagination {
+ margin: 0 32rpx 32rpx;
+ padding: 32rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .filter-label {
+ font-size: 26rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 26rpx;
+ }
+
+ .filter-control {
+ padding: 20rpx;
+ }
+
+ .student-item {
+ padding: 32rpx;
+ }
+
+ .student-avatar {
+ width: 100rpx;
+ height: 100rpx;
+ border-radius: 50rpx;
+ margin-right: 32rpx;
+ }
+
+ .avatar-placeholder {
+ font-size: 36rpx;
+ }
+
+ .student-name {
+ font-size: 32rpx;
+ }
+
+ .student-meta {
+ gap: 24rpx;
+ }
+
+ .meta-item {
+ font-size: 22rpx;
+ }
+
+ .action-btn {
+ font-size: 18rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .page-info {
+ font-size: 22rpx;
+ }
+
+ .page-btn {
+ font-size: 22rpx;
+ padding: 12rpx 24rpx;
+ }
+
+ .add-btn {
+ font-size: 28rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .student-list-container {
+ max-width: 1200px;
+ }
+
+ .filter-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text,
+ .search-input {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .student-name {
+ font-size: 34rpx;
+ }
+
+ .student-meta {
+ gap: 32rpx;
+ }
+
+ .meta-item {
+ font-size: 24rpx;
+ }
+
+ .action-btn {
+ font-size: 20rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/student/remind.vue b/src/pages/student/remind.vue
index 263ba16..ddf55cf 100644
--- a/src/pages/student/remind.vue
+++ b/src/pages/student/remind.vue
@@ -512,4 +512,173 @@
background-color: #409eff;
color: #fff;
}
+
+ /* 平板和大屏响应式 */
+ @media screen and (min-width: 768px) {
+ .learning-remind-container {
+ max-width: 900px;
+ margin: 0 auto;
+ width: 100%;
+ }
+
+ .remind-setting-section,
+ .student-select-section,
+ .preview-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .action-section {
+ margin: 0 32rpx 24rpx;
+ padding: 40rpx;
+ }
+
+ .page-header {
+ padding: 0 48rpx;
+ }
+
+ .header-title {
+ font-size: 36rpx;
+ }
+
+ .batch-btn {
+ font-size: 26rpx;
+ }
+
+ .section-title {
+ font-size: 36rpx;
+ margin-bottom: 32rpx;
+ }
+
+ .setting-card,
+ .select-card,
+ .preview-card {
+ padding: 32rpx;
+ }
+
+ .setting-row {
+ margin-bottom: 32rpx;
+ }
+
+ .setting-label {
+ font-size: 26rpx;
+ }
+
+ .picker {
+ padding: 20rpx;
+ }
+
+ .picker-text {
+ font-size: 26rpx;
+ }
+
+ .content-textarea {
+ height: 200rpx;
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .content-count {
+ font-size: 20rpx;
+ }
+
+ .time-input {
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .students-textarea {
+ height: 160rpx;
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .upload-btn {
+ padding: 20rpx;
+ font-size: 26rpx;
+ }
+
+ .file-name {
+ font-size: 22rpx;
+ }
+
+ .preview-title {
+ font-size: 26rpx;
+ }
+
+ .preview-content {
+ padding: 32rpx;
+ font-size: 26rpx;
+ min-height: 160rpx;
+ }
+
+ .info-item {
+ font-size: 22rpx;
+ }
+
+ .action-btn {
+ padding: 28rpx;
+ font-size: 30rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .learning-remind-container {
+ max-width: 1000px;
+ }
+
+ .header-title {
+ font-size: 40rpx;
+ }
+
+ .batch-btn {
+ font-size: 28rpx;
+ }
+
+ .section-title {
+ font-size: 40rpx;
+ }
+
+ .setting-label {
+ font-size: 28rpx;
+ }
+
+ .picker-text {
+ font-size: 28rpx;
+ }
+
+ .content-textarea {
+ font-size: 28rpx;
+ }
+
+ .time-input {
+ font-size: 28rpx;
+ }
+
+ .students-textarea {
+ font-size: 28rpx;
+ }
+
+ .upload-btn {
+ font-size: 28rpx;
+ }
+
+ .preview-title {
+ font-size: 28rpx;
+ }
+
+ .preview-content {
+ font-size: 28rpx;
+ }
+
+ .info-item {
+ font-size: 24rpx;
+ }
+
+ .action-btn {
+ padding: 32rpx;
+ font-size: 32rpx;
+ }
+ }
\ No newline at end of file
diff --git a/src/pages/work/index.vue b/src/pages/work/index.vue
index db670c0..704bcc4 100644
--- a/src/pages/work/index.vue
+++ b/src/pages/work/index.vue
@@ -488,17 +488,17 @@
}
.section {
- margin-bottom: 30rpx;
+ margin-bottom: 24rpx;
}
/* 标题样式 */
.section-title {
- font-size: 32rpx;
+ font-size: 28rpx;
font-weight: bold;
color: #303133;
- margin-bottom: 24rpx;
- padding-left: 12rpx;
- border-left: 8rpx solid #409eff;
+ margin-bottom: 20rpx;
+ padding-left: 10rpx;
+ border-left: 6rpx solid #409eff;
line-height: 1.2;
}
@@ -514,9 +514,9 @@
display: flex;
align-items: center;
background-color: #fff;
- border-radius: 16rpx;
- padding: 24rpx;
- box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.08);
+ border-radius: 12rpx;
+ padding: 20rpx;
+ box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.08);
transition: all 0.3s ease;
cursor: pointer;
}
@@ -528,19 +528,20 @@
/* 图标容器 */
.feature-icon {
- width: 80rpx;
- height: 80rpx;
- border-radius: 16rpx;
+ width: 64rpx;
+ height: 64rpx;
+ border-radius: 12rpx;
display: flex;
align-items: center;
justify-content: center;
- margin-right: 20rpx;
+ margin-right: 16rpx;
flex-shrink: 0;
+ position: relative;
}
/* 图标文本样式 */
.icon-text {
- font-size: 36rpx;
+ font-size: 32rpx;
line-height: 1;
text-align: center;
}
@@ -548,25 +549,20 @@
/* 异常徽章样式 */
.exception-badge {
position: absolute;
- top: -8rpx;
- right: -8rpx;
- min-width: 36rpx;
- height: 36rpx;
- padding: 0 12rpx;
+ top: -6rpx;
+ right: -6rpx;
+ min-width: 28rpx;
+ height: 28rpx;
+ padding: 0 8rpx;
background-color: #f56c6c;
color: #fff;
- border-radius: 18rpx;
- font-size: 20rpx;
+ border-radius: 14rpx;
+ font-size: 16rpx;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
- box-shadow: 0 2rpx 8rpx rgba(245, 108, 108, 0.5);
- }
-
- /* 图标容器相对定位,用于异常徽章 */
- .feature-icon {
- position: relative;
+ box-shadow: 0 2rpx 6rpx rgba(245, 108, 108, 0.5);
}
/* 各模块颜色 */
@@ -597,39 +593,98 @@
}
.feature-title {
- font-size: 28rpx;
+ font-size: 24rpx;
font-weight: 600;
color: #303133;
- margin-bottom: 8rpx;
+ margin-bottom: 6rpx;
line-height: 1.3;
}
.feature-desc {
- font-size: 22rpx;
+ font-size: 20rpx;
color: #909399;
line-height: 1.4;
}
- /* 响应式设计 */
- @media screen and (min-width: 500px) {
+ /* 平板响应式 */
+ @media screen and (min-width: 768px) {
.work-container {
max-width: 900px;
margin: 0 auto;
- padding: 30rpx;
+ padding: 40rpx;
+ width: 100%;
+ }
+
+ .section {
+ margin-bottom: 32rpx;
+ }
+
+ .section-title {
+ font-size: 32rpx;
+ margin-bottom: 24rpx;
+ padding-left: 12rpx;
+ border-left: 8rpx solid #409eff;
+ }
+
+ .feature-row {
+ flex-direction: row;
+ flex-wrap: wrap;
+ gap: 20rpx;
+ }
+
+ .feature-card {
+ flex: 0 0 calc(50% - 10rpx);
+ max-width: calc(50% - 10rpx);
+ padding: 28rpx;
+ }
+
+ .feature-icon {
+ width: 80rpx;
+ height: 80rpx;
+ margin-right: 20rpx;
+ }
+
+ .icon-text {
+ font-size: 36rpx;
+ }
+
+ .feature-title {
+ font-size: 28rpx;
+ }
+
+ .feature-desc {
+ font-size: 22rpx;
+ }
+ }
+
+ /* 大屏设备响应式 */
+ @media screen and (min-width: 1024px) {
+ .work-container {
+ max-width: 1000px;
+ }
+
+ .section {
+ margin-bottom: 40rpx;
}
.section-title {
font-size: 36rpx;
- margin-bottom: 30rpx;
+ margin-bottom: 28rpx;
}
+ .feature-row {
+ gap: 24rpx;
+ }
+
.feature-card {
- padding: 30rpx;
+ flex: 0 0 calc(33.333% - 16rpx);
+ max-width: calc(33.333% - 16rpx);
+ padding: 32rpx;
}
.feature-icon {
- width: 100rpx;
- height: 100rpx;
+ width: 96rpx;
+ height: 96rpx;
margin-right: 24rpx;
}
@@ -645,32 +700,12 @@
font-size: 24rpx;
}
}
-
- /* 平板和大屏响应式 */
- @media screen and (min-width: 768px) {
- .work-container {
- max-width: 1000px;
- }
-
+
+ /* 超大屏设备响应式 */
+ @media screen and (min-width: 1440px) {
.feature-card {
- padding: 36rpx;
- }
-
- .feature-icon {
- width: 120rpx;
- height: 120rpx;
- }
-
- .icon-text {
- font-size: 52rpx;
- }
-
- .feature-title {
- font-size: 36rpx;
- }
-
- .feature-desc {
- font-size: 26rpx;
+ flex: 0 0 calc(25% - 18rpx);
+ max-width: calc(25% - 18rpx);
}
}
\ No newline at end of file