diff --git a/apps/backend/data/cloudtentacles-session.json b/apps/backend/data/cloudtentacles-session.json index 137c803e..5f375672 100644 --- a/apps/backend/data/cloudtentacles-session.json +++ b/apps/backend/data/cloudtentacles-session.json @@ -1,9 +1,13 @@ { - "token": "P1ifGvDcxYchECzx51cqL2TzBkntjQtRwxpetU7RDMMjsSCmC8kHU751bJ4rJMSSjQN73QveARqGLIWe078nKvnA", - "baseUrl": "https://123.207.217.176", - "username": "17665234375", - "phone": "17665234375", - "loggedInAt": "2026-05-19T13:48:31.443Z", - "deviceId": "-", - "deviceType": 0 + "sessions": { + "default": { + "token": "P1ifGvDcxYchECzx51cqL2TzBkntjQtRwxpetU7RDMMjsSCmC8kHU751bJ4rJMSSjQN73QveARqGLIWe078nKvnA", + "baseUrl": "https://123.207.217.176", + "username": "17665234375", + "phone": "17665234375", + "loggedInAt": "2026-05-22T01:39:20.128Z", + "deviceId": "-", + "deviceType": 0 + } + } } diff --git a/apps/frontend/src/views/admin/fulfillment/AdminFulfillmentConfigHubView.vue b/apps/frontend/src/views/admin/fulfillment/AdminFulfillmentConfigHubView.vue index 05d7e7f2..b2f58824 100644 --- a/apps/frontend/src/views/admin/fulfillment/AdminFulfillmentConfigHubView.vue +++ b/apps/frontend/src/views/admin/fulfillment/AdminFulfillmentConfigHubView.vue @@ -56,4 +56,13 @@ const activeTab = computed({ :deep(.hub-tabs .el-tabs__content) { padding-top: var(--space-4); } + +:deep(.hub-tabs .el-tabs__item) { + font-weight: 500; + font-size: var(--text-base); +} + +:deep(.hub-tabs .el-tabs__item.is-active) { + font-weight: 600; +} diff --git a/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindings.css b/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindings.css index fa6debb5..fbccea8a 100644 --- a/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindings.css +++ b/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindings.css @@ -5,41 +5,83 @@ .section-card { border-radius: var(--radius-lg); + border: 1px solid var(--border-default); + background: var(--bg-surface); +} + +.section-card :deep(.el-card__header) { + background: var(--bg-surface); + border-bottom: 1px solid var(--border-default); + padding: var(--space-4) var(--space-5); +} + +.section-card :deep(.el-card__body) { + padding: var(--space-5); +} + +.card-header { + display: flex; + flex-direction: column; + gap: var(--space-2); } .card-header--split { - align-items: center; + flex-direction: row; + justify-content: space-between; + align-items: flex-start; +} + +.card-title { + display: block; + font-size: var(--text-lg); + font-weight: 600; + color: var(--text-primary); + margin-bottom: var(--space-1); +} + +.card-desc { + display: block; + font-size: var(--text-sm); + color: var(--text-secondary); + line-height: 1.5; } .overview-card { display: grid; - gap: var(--space-4); + gap: var(--space-5); +} + +.overview-file { + margin-top: var(--space-1); } .overview-file code { color: var(--text-primary); word-break: break-all; + font-size: var(--text-sm); } .overview-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); - gap: var(--space-3); + gap: var(--space-4); } .overview-stat { min-width: 0; - padding: var(--space-3); + padding: var(--space-4); border: 1px solid var(--border-default); border-radius: var(--radius-md); - background: var(--bg-subtle); + background: var(--bg-surface); } .overview-stat :deep(.el-statistic__head) { - margin-bottom: 6px; + margin-bottom: var(--space-2); color: var(--text-secondary); font-size: var(--text-xs); - font-weight: 700; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.5px; } .overview-stat :deep(.el-statistic__content) { @@ -58,7 +100,7 @@ .lookup-toolbar, .lookup-summary { display: grid; - gap: var(--space-3); + gap: var(--space-4); } .lookup-toolbar { @@ -67,15 +109,15 @@ } .lookup-summary { - margin-top: var(--space-4); + margin-top: var(--space-1); } .field-help { display: block; - margin-top: 6px; + margin-top: var(--space-2); color: var(--text-secondary); font-size: var(--text-xs); - line-height: 1.5; + line-height: 1.6; } .field-wide { @@ -98,32 +140,41 @@ .admin-panel :deep(.el-form-item__label) { color: var(--text-secondary); - font-size: var(--text-xs); - font-weight: 700; - line-height: 1.4; - margin-bottom: 6px; + font-size: var(--text-sm); + font-weight: 600; + line-height: 1.5; + margin-bottom: var(--space-2); } .cell-subtle { color: var(--text-secondary); display: block; font-size: var(--text-xs); - line-height: 1.5; + line-height: 1.6; +} + +.cell-stack { + display: flex; + flex-direction: column; + gap: var(--space-1); } .binding-card { margin-top: var(--space-3); background: var(--bg-surface); + border: 1px solid var(--border-default); + border-radius: var(--radius-md); } .binding-card :deep(.el-card__header) { padding: var(--space-3) var(--space-4); - background: var(--bg-subtle); + background: var(--bg-surface); + border-bottom: 1px solid var(--border-default); } .binding-card :deep(.el-card__body) { display: grid; - gap: var(--space-3); + gap: var(--space-4); padding: var(--space-4); } @@ -135,13 +186,14 @@ .binding-header { display: flex; justify-content: space-between; - gap: var(--space-3); + gap: var(--space-4); align-items: flex-start; } .binding-summary { display: grid; - gap: 4px; + gap: var(--space-2); + flex: 1; } .binding-title-row { @@ -150,16 +202,19 @@ align-items: center; flex-wrap: wrap; color: var(--text-primary); + font-size: var(--text-base); } .binding-subtle { color: var(--text-secondary); + font-size: var(--text-sm); + line-height: 1.5; } .binding-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); - gap: var(--space-4); + gap: var(--space-4) var(--space-5); } .binding-collapsed-preview { @@ -167,11 +222,17 @@ font-size: var(--text-sm); } +.binding-collapsed-preview :deep(.el-descriptions__label) { + font-weight: 600; +} + .binding-actions { display: flex; justify-content: space-between; gap: var(--space-3); align-items: center; + padding-top: var(--space-3); + border-top: 1px solid var(--border-default); } @media (max-width: 900px) { @@ -181,6 +242,7 @@ display: grid; grid-template-columns: 1fr; align-items: stretch; + gap: var(--space-3); } .overview-stats, @@ -192,4 +254,37 @@ .binding-collapsed-preview :deep(.el-descriptions__body .el-descriptions__table) { display: block; } + + .section-card :deep(.el-card__header), + .section-card :deep(.el-card__body) { + padding: var(--space-4); + } + + .binding-card :deep(.el-card__header), + .binding-card :deep(.el-card__body) { + padding: var(--space-3); + } +} + +.data-table { + margin-top: var(--space-4); +} + +.data-table :deep(.el-table__header th) { + background: var(--bg-surface); + color: var(--text-secondary); + font-weight: 600; + font-size: var(--text-sm); +} + +.data-table :deep(.el-table__body td) { + padding: var(--space-3) var(--space-2); +} + +.mt-4 { + margin-top: var(--space-4); +} + +.w-full { + width: 100%; } diff --git a/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindingsView.vue b/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindingsView.vue index b289c479..a3cf2b6e 100644 --- a/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindingsView.vue +++ b/apps/frontend/src/views/admin/fulfillment/bindings/AdminFulfillmentBindingsView.vue @@ -5,7 +5,6 @@ import { hasAdminRole } from '@/utils/admin-auth' import AdminBindingsLookupSection from './components/AdminBindingsLookupSection.vue' import AdminBindingsObservedSection from './components/AdminBindingsObservedSection.vue' -import AdminBindingsOverviewSection from './components/AdminBindingsOverviewSection.vue' import AdminBindingsRuleSection from './components/AdminBindingsRuleSection.vue' import { useFulfillmentBindings } from './composables/useFulfillmentBindings' import { useFulfillmentBindingsLookup } from './composables/useFulfillmentBindingsLookup' @@ -21,13 +20,6 @@ onMounted(bindings.loadConfigs) @@ -67,23 +67,14 @@ const emit = defineEmits<{ - - - + diff --git a/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsOverviewSection.vue b/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsOverviewSection.vue index 70af9437..8c711113 100644 --- a/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsOverviewSection.vue +++ b/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsOverviewSection.vue @@ -30,17 +30,17 @@ defineProps<{
- + - +
- 外部 SKU / 商品 ID / 商品名命中任一即可 - 内部 SKU 决定库存绑定与履约链路 - 同类商品跨平台尽量共用同一内部 SKU + 外部 SKU / 商品 ID / 商品名命中任一即可 + 内部 SKU 决定库存绑定与履约链路 + 同类商品跨平台尽量共用同一内部 SKU
diff --git a/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsRuleSection.vue b/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsRuleSection.vue index c691d300..a021340e 100644 --- a/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsRuleSection.vue +++ b/apps/frontend/src/views/admin/fulfillment/bindings/components/AdminBindingsRuleSection.vue @@ -57,11 +57,15 @@ const emit = defineEmits<{
- 完整 {{ ruleMetrics.completedCount }} - 待完善 {{ ruleMetrics.draftCount }} - 人工 {{ ruleMetrics.manualCount }} - 半自动 {{ ruleMetrics.assistedCount }} - 快手 Cloud {{ ruleMetrics.kuaishouCloudCount }} + 完整 {{ ruleMetrics.completedCount }} + 待完善 {{ ruleMetrics.draftCount }} + 人工 {{ ruleMetrics.manualCount }} + 半自动 {{ ruleMetrics.assistedCount }} + 快手 Cloud {{ ruleMetrics.kuaishouCloudCount }}
- - - - - - - - - - - - - - - - - 查询 91卡券订单 - - - +
+ + + + + + + + + + + + + + + + + 查询 91卡券订单 + + + - + +