修复bug

This commit is contained in:
2026-01-30 19:00:31 +08:00
parent fcc976680d
commit 3de5e9ebe9
91 changed files with 4966 additions and 847 deletions

View File

@@ -1,20 +1,23 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">文章管理</text>
<text class="SubTitle">content/index</text>
</view>
<AdminLayout currentPage="content-list">
<view class="Page">
<view class="Header">
<text class="Title">文章管理</text>
<text class="SubTitle">content/index</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="cs-auto-reply">
<view class="page">
<view class="topbar">
<view class="topbar-left">
<text class="title">自动回复</text>
@@ -17,9 +18,11 @@
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const onBack = () => {
// H5/小程序均可用
uni.navigateBack()

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="cs-config">
<view class="page">
<view class="topbar">
<view class="topbar-left">
<text class="title">客服设置</text>
@@ -17,9 +18,11 @@
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const onBack = () => {
// H5/小程序均可用
uni.navigateBack()

View File

@@ -1,22 +1,24 @@
<template>
<view class="page">
<view class="topbar">
<view class="topbar-left">
<text class="title">客服列表</text>
<text class="subtitle">customer-service/list</text>
<AdminLayout current-page='list'>
<view class="page">
<view class="topbar">
<view class="topbar-left">
<text class="title">客服列表</text>
<text class="subtitle">customer-service/list</text>
</view>
<view class="topbar-right">
<view class="btn" @click="onBack"><text class="btn-text">返回</text></view>
</view>
</view>
<view class="topbar-right">
<view class="btn" @click="onBack"><text class="btn-text">返回</text></view>
</view>
</view>
<view class="container">
<view class="card">
<text class="h1">客服列表</text>
<text class="p">这是页面骨架(可跑)。你可以在这里接入你们项目的 TopBar / Container 组件与业务逻辑。</text>
<view class="container">
<view class="card">
<text class="h1">客服列表</text>
<text class="p">这是页面骨架(可跑)。你可以在这里接入你们项目的 TopBar / Container 组件与业务逻辑。</text>
</view>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="cs-message">
<view class="page">
<view class="topbar">
<view class="topbar-left">
<text class="title">客服消息</text>
@@ -17,9 +18,11 @@
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const onBack = () => {
// H5/小程序均可用
uni.navigateBack()

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="cs-script">
<view class="page">
<view class="topbar">
<view class="topbar-left">
<text class="title">快捷回复话术</text>
@@ -17,9 +18,11 @@
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const onBack = () => {
// H5/小程序均可用
uni.navigateBack()

View File

@@ -1,20 +1,23 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">页面装修</text>
<text class="SubTitle">design/index</text>
</view>
<AdminLayout currentPage="design-home">
<view class="Page">
<view class="Header">
<text class="Title">页面装修</text>
<text class="SubTitle">design/index</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,5 +1,5 @@
<template>
<AdminLayout current-page="dashboard">
<AdminLayout currentPage="home">
<view class="dashboard-page">
<!-- 第一行4 个 KPI 卡片 -->
<view class="kpi-cards-row">
@@ -121,7 +121,7 @@
<script setup lang="uts">
import { ref } from 'vue'
import AdminLayout from '@/layouts/admin/index.uvue'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
import KpiMiniCard from './components/KpiMiniCard.uvue'
// KPI 数据

View File

@@ -1,13 +1,24 @@
<template>
<view class="page">
<view class="header">
<text class="title">城市数据</text>
</view>
<view class="content">
<text class="tip">TODO: 城市数据</text>
</view>
</view>
<AdminLayout currentPage="data-city-data">
<view class="page">
<view class="header">
<text class="title">城市数据</text>
</view>
<view class="content">
<text class="tip">TODO: 城市数据</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,21 @@
<template>
<view class="page">
<view class="header">
<text class="title">清除数据</text>
</view>
<view class="content">
<text class="tip">TODO: 清除数据</text>
</view>
</view>
<AdminLayout currentPage="data-clear-data">
<view class="page">
<view class="header">
<text class="title">清除数据</text>
</view>
<view class="content">
<text class="tip">TODO: 清除数据</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,21 @@
<template>
<view class="page">
<view class="header">
<text class="title">物流公司</text>
</view>
<view class="content">
<text class="tip">TODO: 物流公司</text>
</view>
</view>
<AdminLayout currentPage="data-logistics-company">
<view class="page">
<view class="header">
<text class="title">物流公司</text>
</view>
<view class="content">
<text class="tip">TODO: 物流公司</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,22 @@
<template>
<view class="page">
<view class="header">
<text class="title">配置分类</text>
</view>
<view class="content">
<text class="tip">TODO: 配置分类</text>
</view>
</view>
<AdminLayout currentPage="dev-config-category">
<view class="page">
<view class="header">
<text class="title">配置分类</text>
</view>
<view class="content">
<text class="tip">TODO: 配置分类</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,23 @@
<template>
<view class="page">
<view class="header">
<text class="title">组合数据</text>
</view>
<view class="content">
<text class="tip">TODO: 组合数据</text>
</view>
</view>
<AdminLayout currentPage="dev-config-combo">
<view class="page">
<view class="header">
<text class="title">组合数据</text>
</view>
<view class="content">
<text class="tip">TODO: 组合数据</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,22 @@
<template>
<view class="page">
<view class="header">
<text class="title">定时任务</text>
</view>
<view class="content">
<text class="tip">TODO: 定时任务</text>
</view>
</view>
<AdminLayout currentPage="dev-config-cron">
<view class="page">
<view class="header">
<text class="title">定时任务</text>
</view>
<view class="content">
<text class="tip">TODO: 定时任务</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,22 @@
<template>
<view class="page">
<view class="header">
<text class="title">自定事件</text>
</view>
<view class="content">
<text class="tip">TODO: 自定事件</text>
</view>
</view>
<AdminLayout currentPage="dev-config-event">
<view class="page">
<view class="header">
<text class="title">自定事件</text>
</view>
<view class="content">
<text class="tip">TODO: 自定事件</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,22 @@
<template>
<view class="page">
<view class="header">
<text class="title">模块配置</text>
</view>
<view class="content">
<text class="tip">TODO: 模块配置</text>
</view>
</view>
<AdminLayout currentPage="dev-config-module">
<view class="page">
<view class="header">
<text class="title">模块配置</text>
</view>
<view class="content">
<text class="tip">TODO: 模块配置</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,22 @@
<template>
<view class="page">
<view class="header">
<text class="title">权限维护</text>
</view>
<view class="content">
<text class="tip">TODO: 权限维护</text>
</view>
</view>
<AdminLayout currentPage="dev-config-permission">
<view class="page">
<view class="header">
<text class="title">权限维护</text>
</view>
<view class="content">
<text class="tip">TODO: 权限维护</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,13 +1,21 @@
<template>
<view class="page">
<view class="header">
<text class="title">接口管理</text>
</view>
<view class="content">
<text class="tip">TODO: 接口管理</text>
</view>
</view>
<AdminLayout currentPage="dev-tools-api">
<view class="page">
<view class="header">
<text class="title">接口管理</text>
</view>
<view class="content">
<text class="tip">TODO: 接口管理</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script>
<style scoped>
.page { padding: 16px; }
.title { font-size: 18px; font-weight: 600; }
.tip { color: #999; margin-top: 8px; display: block; }
</style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="dev-tools-codegen">
<view class="page">
<view class="header">
<text class="title">代码生成</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 代码生成</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="dev-tools-dict">
<view class="page">
<view class="header">
<text class="title">数据字典</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 数据字典</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="dev-tools-db">
<view class="page">
<view class="header">
<text class="title">数据库管理</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 数据库管理</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="dev-tools-file">
<view class="page">
<view class="header">
<text class="title">文件管理</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 文件管理</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="external-account">
<view class="page">
<view class="header">
<text class="title">账号管理</text>
</view>
@@ -7,7 +8,6 @@
<text class="tip">TODO: 账号管理</text>
</view>
</view>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
</AdminLayout>
</template>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="i18n-language-detail">
<view class="page">
<view class="header">
<text class="title">语言详情</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 语言详情</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="i18n-language-list">
<view class="page">
<view class="header">
<text class="title">语言列表</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 语言列表</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="i18n-region-list">
<view class="page">
<view class="header">
<text class="title">地区列表</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 地区列表</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="i18n-translate-config">
<view class="page">
<view class="header">
<text class="title">翻译配置</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 翻译配置</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="security-online-upgrade">
<view class="page">
<view class="header">
<text class="title">在线升级</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 在线升级</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="security-refresh-cache">
<view class="page">
<view class="header">
<text class="title">刷新缓存</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 刷新缓存</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="security-system-log">
<view class="page">
<view class="header">
<text class="title">系统日志</text>
</view>
@@ -7,7 +8,5 @@
<text class="tip">TODO: 系统日志</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,13 +1,17 @@
<template>
<view class="page">
<view class="header">
<text class="title">系统信息</text>
</view>
<view class="content">
<text class="tip">TODO: 系统信息</text>
</view>
</view>
<AdminLayout currentPage="system-info">
<view class="page">
<view class="header">
<text class="title">系统信息</text>
</view>
<view class="content">
<text class="tip">TODO: 系统信息</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts"> </script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
</script> <style scoped> .page { padding: 16px; } .title { font-size: 18px; font-weight: 600; } .tip { color: #999; margin-top: 8px; display: block; } </style>

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">营销管理</text>
<text class="SubTitle">marketing-management</text>
</view>
<AdminLayout currentPage="marketing">
<view class="Page">
<view class="Header">
<text class="Title">营销管理</text>
<text class="SubTitle">marketing-management</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,5 +1,6 @@
<template>
<view class="Page">
<AdminLayout currentPage="coupon-list">
<view class="page">
<view class="Header">
<text class="Title">优惠券列表</text>
<text class="SubTitle">marketing/coupon/list</text>
@@ -10,11 +11,13 @@
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,5 +1,6 @@
<template>
<view class="Page">
<AdminLayout currentPage="coupon-receive">
<view class="page">
<view class="Header">
<text class="Title">领取情况</text>
<text class="SubTitle">marketing/coupon/receive</text>
@@ -10,11 +11,13 @@
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,5 +1,6 @@
<template>
<view class="Page">
<AdminLayout :currentPage="currentPage">
<view class="Page">
<view class="Header">
<text class="Title">积分统计</text>
<text class="SubTitle">marketing/points/index</text>
@@ -10,17 +11,49 @@
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { ref, computed } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')
const tab = ref('stats')
onLoad((options) => {
// options: Record<string, any>
params.value = JSON.stringify(options ?? {})
tab.value = options?.tab || 'stats'
})
const currentPage = computed(() => {
switch (tab.value) {
case 'goods': return 'points-goods'
case 'order': return 'points-order'
case 'record': return 'points-record'
case 'config': return 'points-config'
case 'lottery-list': return 'lottery-list'
case 'lottery-config': return 'lottery-config'
case 'groupbuy-goods': return 'groupbuy-goods'
case 'groupbuy-list': return 'groupbuy-list'
case 'seckill-goods': return 'seckill-goods'
case 'seckill-list': return 'seckill-list'
case 'seckill-config': return 'seckill-config'
case 'member-type': return 'member-type'
case 'member-rights': return 'member-rights'
case 'member-card': return 'member-card'
case 'member-record': return 'member-record'
case 'member-config': return 'member-config'
case 'live-room': return 'live-room'
case 'live-goods': return 'live-goods'
case 'live-anchor': return 'live-anchor'
case 'recharge-amount': return 'recharge-amount'
case 'recharge-config': return 'recharge-config'
case 'recharge-record': return 'recharge-record'
case 'newcomer': return 'newcomer'
default: return 'points-stats'
}
})
</script>

View File

@@ -1,5 +1,6 @@
<template>
<view class="Page">
<AdminLayout currentPage="signin-record">
<view class="page">
<view class="Header">
<text class="Title">签到奖励</text>
<text class="SubTitle">marketing/signin/record</text>
@@ -10,11 +11,13 @@
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,5 +1,6 @@
<template>
<view class="Page">
<AdminLayout currentPage="signin-rule">
<view class="page">
<view class="Header">
<text class="Title">签到配置</text>
<text class="SubTitle">marketing/signin/rule</text>
@@ -10,11 +11,13 @@
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">订单</text>
<text class="SubTitle">order-management</text>
</view>
<AdminLayout currentPage="order-management">
<view class="Page">
<view class="Header">
<text class="Title">订单</text>
<text class="SubTitle">order-management</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品分类</text>
<text class="SubTitle">product-classification</text>
</view>
<AdminLayout currentPage="product-classification">
<view class="Page">
<view class="Header">
<text class="Title">商品分类</text>
<text class="SubTitle">product-classification</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品标签</text>
<text class="SubTitle">product-labels</text>
</view>
<AdminLayout currentPage="product-labels">
<view class="Page">
<view class="Header">
<text class="Title">商品标签</text>
<text class="SubTitle">product-labels</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品</text>
<text class="SubTitle">product-management</text>
</view>
<AdminLayout currentPage="product-management">
<view class="Page">
<view class="Header">
<text class="Title">商品</text>
<text class="SubTitle">product-management</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品参数</text>
<text class="SubTitle">product-parameters</text>
</view>
<AdminLayout currentPage="product-parameters">
<view class="Page">
<view class="Header">
<text class="Title">商品参数</text>
<text class="SubTitle">product-parameters</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品保障</text>
<text class="SubTitle">product-protection</text>
</view>
<AdminLayout currentPage="product-protection">
<view class="Page">
<view class="Header">
<text class="Title">商品保障</text>
<text class="SubTitle">product-protection</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,23 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品评论</text>
<text class="SubTitle">product-reviews</text>
</view>
<AdminLayout currentPage="product-reviews">
<view class="Page">
<view class="Header">
<text class="Title">商品评论</text>
<text class="SubTitle">product-reviews</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,22 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品规格</text>
<text class="SubTitle">product-specifications</text>
</view>
<AdminLayout currentPage="product-specifications">
<view class="Page">
<view class="Header">
<text class="Title">商品规格</text>
<text class="SubTitle">product-specifications</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,20 +1,23 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">商品统计</text>
<text class="SubTitle">product-statistics</text>
</view>
<AdminLayout currentPage="product-statistics">
<view class="Page">
<view class="Header">
<text class="Title">商品统计</text>
<text class="SubTitle">product-statistics</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="subscription-plan">
<view class="page">
<!-- 顶部操作栏 -->
<view class="toolbar">
<text class="title">订阅方案管理</text>
@@ -126,10 +127,13 @@
</view>
</view>
</view>
</template>
</AdminLayout>
</template>
<script lang="uts">
import supa from '@/components/supadb/aksupainstance.uts'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
type UJ = UTSJSONObject

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="subscription-user">
<view class="page">
<view class="toolbar">
<text class="title">用户订阅管理</text>
</view>
@@ -82,11 +83,13 @@
</view>
</view>
</view>
</AdminLayout>
</template>
<script lang="uts">
import supa from '@/components/supadb/aksupainstance.uts'
import { SUBSCRIPTION_STATUS } from '@/types/mall-types.uts'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
type UJ = UTSJSONObject

View File

@@ -1,20 +1,23 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">设置</text>
<text class="SubTitle">system-settings</text>
</view>
<AdminLayout currentPage="system">
<view class="Page">
<view class="Header">
<text class="Title">设置</text>
<text class="SubTitle">system-settings</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')

View File

@@ -1,46 +1,49 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<AdminLayout currentPage="sys-agreement">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<text class="nav-title">协议设置</text>
<text class="nav-title">协议设置</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">协议设置</text>
<text class="p">TODO在这里实现 协议设置 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
</scroll-view>
</view>
</template>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">协议设置</text>
<text class="p">TODO在这里实现 协议设置 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,46 +1,49 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<AdminLayout currentPage="api-collect">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部<E9A1B6>? -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<text class="nav-title">商品采集配置</text>
<text class="nav-title">商品采集配置</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">商品采集配置</text>
<text class="p">TODO在这里实现 商品采集配置 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
</scroll-view>
</view>
</template>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">商品采集配置</text>
<text class="p">TODO在这里实现 商品采集配置 的页面内容<E58685>?/text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card<64>?/text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端<E5908E>?/text>
<text class="li">2<EFBC89>?表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控<E99990>?/text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}
@@ -53,7 +56,7 @@ const onPrimaryAction = () => {
<style scoped>
.page { width: 100%; height: 100%; background-color: #f6f7fb; }
/* 顶部栏(适配沉浸式状态栏 */
/* 顶部栏(适配沉浸式状态栏<EFBFBD>?*/
.topbar { position: sticky; top: 0; z-index: 10; background-color: #fff; }
.status-bar { height: var(--status-bar-height); }
.nav { height: 44px; display: flex; align-items: center; padding: 0 12px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eef0f5; }
@@ -79,3 +82,4 @@ const onPrimaryAction = () => {
.list { margin-top: 8px; }
.li { font-size: 13px; color: #333; line-height: 20px; }
</style>

View File

@@ -1,6 +1,7 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<AdminLayout currentPage="api-logistics">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部<E9A1B6>? -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
@@ -22,25 +23,27 @@
<view class="container">
<view class="card">
<text class="h2">物流查询配置</text>
<text class="p">TODO在这里实现 物流查询配置 的页面内容。</text>
<text class="p">TODO在这里实现 物流查询配置 的页面内容<EFBFBD>?/text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card<EFBFBD>?/text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端</text>
<text class="li">2表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<text class="li">1接口拉取/保存数据API 协议对齐后端<EFBFBD>?/text>
<text class="li">2<EFBFBD>?表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控<EFBFBD>?/text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}
@@ -53,7 +56,7 @@ const onPrimaryAction = () => {
<style scoped>
.page { width: 100%; height: 100%; background-color: #f6f7fb; }
/* 顶部栏(适配沉浸式状态栏 */
/* 顶部栏(适配沉浸式状态栏<EFBFBD>?*/
.topbar { position: sticky; top: 0; z-index: 10; background-color: #fff; }
.status-bar { height: var(--status-bar-height); }
.nav { height: 44px; display: flex; align-items: center; padding: 0 12px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eef0f5; }
@@ -79,3 +82,4 @@ const onPrimaryAction = () => {
.list { margin-top: 8px; }
.li { font-size: 13px; color: #333; line-height: 20px; }
</style>

View File

@@ -1,6 +1,7 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<AdminLayout currentPage="api-pay">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部<E9A1B6>? -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
@@ -22,25 +23,27 @@
<view class="container">
<view class="card">
<text class="h2">商城支付配置</text>
<text class="p">TODO在这里实现 商城支付配置 的页面内容。</text>
<text class="p">TODO在这里实现 商城支付配置 的页面内容<EFBFBD>?/text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card<EFBFBD>?/text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端</text>
<text class="li">2表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<text class="li">1接口拉取/保存数据API 协议对齐后端<EFBFBD>?/text>
<text class="li">2<EFBFBD>?表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控<EFBFBD>?/text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}
@@ -53,7 +56,7 @@ const onPrimaryAction = () => {
<style scoped>
.page { width: 100%; height: 100%; background-color: #f6f7fb; }
/* 顶部栏(适配沉浸式状态栏 */
/* 顶部栏(适配沉浸式状态栏<EFBFBD>?*/
.topbar { position: sticky; top: 0; z-index: 10; background-color: #fff; }
.status-bar { height: var(--status-bar-height); }
.nav { height: 44px; display: flex; align-items: center; padding: 0 12px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eef0f5; }
@@ -79,3 +82,4 @@ const onPrimaryAction = () => {
.list { margin-top: 8px; }
.li { font-size: 13px; color: #333; line-height: 20px; }
</style>

View File

@@ -1,6 +1,7 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<AdminLayout currentPage="api-sms">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部<E9A1B6>? -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
@@ -22,25 +23,27 @@
<view class="container">
<view class="card">
<text class="h2">短信接口配置</text>
<text class="p">TODO在这里实现 短信接口配置 的页面内容。</text>
<text class="p">TODO在这里实现 短信接口配置 的页面内容<EFBFBD>?/text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card<EFBFBD>?/text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端</text>
<text class="li">2表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<text class="li">1接口拉取/保存数据API 协议对齐后端<EFBFBD>?/text>
<text class="li">2<EFBFBD>?表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控<EFBFBD>?/text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}
@@ -53,7 +56,7 @@ const onPrimaryAction = () => {
<style scoped>
.page { width: 100%; height: 100%; background-color: #f6f7fb; }
/* 顶部栏(适配沉浸式状态栏 */
/* 顶部栏(适配沉浸式状态栏<EFBFBD>?*/
.topbar { position: sticky; top: 0; z-index: 10; background-color: #fff; }
.status-bar { height: var(--status-bar-height); }
.nav { height: 44px; display: flex; align-items: center; padding: 0 12px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eef0f5; }
@@ -79,3 +82,4 @@ const onPrimaryAction = () => {
.list { margin-top: 8px; }
.li { font-size: 13px; color: #333; line-height: 20px; }
</style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="api-storage">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,9 +39,12 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,6 +1,7 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<AdminLayout currentPage="api-waybill">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部<E9A1B6>? -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
@@ -22,25 +23,27 @@
<view class="container">
<view class="card">
<text class="h2">电子面单配置</text>
<text class="p">TODO在这里实现 电子面单配置 的页面内容。</text>
<text class="p">TODO在这里实现 电子面单配置 的页面内容<EFBFBD>?/text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card<EFBFBD>?/text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端</text>
<text class="li">2表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<text class="li">1接口拉取/保存数据API 协议对齐后端<EFBFBD>?/text>
<text class="li">2<EFBFBD>?表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控<EFBFBD>?/text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}
@@ -53,7 +56,7 @@ const onPrimaryAction = () => {
<style scoped>
.page { width: 100%; height: 100%; background-color: #f6f7fb; }
/* 顶部栏(适配沉浸式状态栏 */
/* 顶部栏(适配沉浸式状态栏<EFBFBD>?*/
.topbar { position: sticky; top: 0; z-index: 10; background-color: #fff; }
.status-bar { height: var(--status-bar-height); }
.nav { height: 44px; display: flex; align-items: center; padding: 0 12px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eef0f5; }
@@ -79,3 +82,4 @@ const onPrimaryAction = () => {
.list { margin-top: 8px; }
.li { font-size: 13px; color: #333; line-height: 20px; }
</style>

View File

@@ -1,6 +1,7 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<AdminLayout currentPage="api-yht-config">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部<E9A1B6>? -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
@@ -9,7 +10,7 @@
<text class="nav-text">返回</text>
</view>
<text class="nav-title">一号通配置</text>
<text class="nav-title">一号通配<EFBFBD>?/text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
@@ -21,26 +22,29 @@
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">一号通配置</text>
<text class="p">TODO在这里实现 一号通配的页面内容。</text>
<text class="h2">一号通配<EFBFBD>?/text>
<text class="p">TODO在这里实现 一号通配<EFBFBD>?的页面内容<EFBFBD>?/text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card<EFBFBD>?/text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端</text>
<text class="li">2表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<text class="li">1接口拉取/保存数据API 协议对齐后端<EFBFBD>?/text>
<text class="li">2<EFBFBD>?表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控<EFBFBD>?/text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}
@@ -53,7 +57,7 @@ const onPrimaryAction = () => {
<style scoped>
.page { width: 100%; height: 100%; background-color: #f6f7fb; }
/* 顶部栏(适配沉浸式状态栏 */
/* 顶部栏(适配沉浸式状态栏<EFBFBD>?*/
.topbar { position: sticky; top: 0; z-index: 10; background-color: #fff; }
.status-bar { height: var(--status-bar-height); }
.nav { height: 44px; display: flex; align-items: center; padding: 0 12px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eef0f5; }
@@ -79,3 +83,4 @@ const onPrimaryAction = () => {
.list { margin-top: 8px; }
.li { font-size: 13px; color: #333; line-height: 20px; }
</style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="api-yht-page">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,9 +39,12 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,46 +1,49 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<AdminLayout currentPage="sys-message">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<text class="nav-title">消息管理</text>
<text class="nav-title">消息管理</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">消息管理</text>
<text class="p">TODO在这里实现 消息管理 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
</scroll-view>
</view>
</template>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">消息管理</text>
<text class="p">TODO在这里实现 消息管理 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="sys-admin">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,9 +39,12 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="sys-perm-setting">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,9 +39,12 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="sys-role">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,9 +39,12 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,46 +1,49 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<AdminLayout currentPage="sys-receipt">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<text class="nav-title">小票配置</text>
<text class="nav-title">小票配置</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">小票配置</text>
<text class="p">TODO在这里实现 小票配置 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
</scroll-view>
</view>
</template>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">小票配置</text>
<text class="p">TODO在这里实现 小票配置 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const goBack = () => {
uni.navigateBack({ delta: 1 })
}

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="ship-courier">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,6 +39,7 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="ship-freight">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,6 +39,7 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">

View File

@@ -1,43 +1,45 @@
<template>
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<AdminLayout currentPage="pickup-points">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
<view class="nav">
<view class="nav-left" @click="goBack">
<text class="nav-icon"></text>
<text class="nav-text">返回</text>
</view>
<text class="nav-title">提货点</text>
<text class="nav-title">提货点</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">提货点</text>
<text class="p">TODO在这里实现 提货点 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
<view class="nav-right">
<text class="nav-action" @click="onPrimaryAction">保存</text>
</view>
</view>
</view>
</scroll-view>
</view>
<!-- Main -->
<scroll-view class="body" scroll-y="true">
<view class="container">
<view class="card">
<text class="h2">提货点</text>
<text class="p">TODO在这里实现 提货点 的页面内容。</text>
<view class="divider" />
<text class="p muted">提示当前为可跑的占位模板TopBar + Container + Card。</text>
</view>
<view class="card">
<text class="h3">建议你下一步先补齐</text>
<view class="list">
<text class="li">1接口拉取/保存数据API 协议对齐后端)</text>
<text class="li">2列表/表单:搜索、分页、增删改</text>
<text class="li">3权限按钮/路由级权限控制</text>
</view>
</view>
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">

View File

@@ -1,5 +1,6 @@
<template>
<view class="page">
<AdminLayout currentPage="pickup-verifier">
<view class="page">
<!-- TopBar (navigationStyle: custom 时需要自己做顶部栏) -->
<view class="topbar">
<view class="status-bar" />
@@ -38,6 +39,7 @@
</view>
</scroll-view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">

View File

@@ -1,26 +1,34 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">用户</text>
<text class="SubTitle">user-management</text>
</view>
<AdminLayout :currentPage="currentPage">
<view class="Page">
<view class="Header">
<text class="Title">用户</text>
<text class="SubTitle">user-management</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')
const currentPage = ref('user-list') // 默认
onLoad((options) => {
// options: Record<string, any>
params.value = JSON.stringify(options ?? {})
onLoad((opts: Record<string, string>) => {
const action = opts['action'] || ''
if (action == 'group') currentPage.value = 'user-group'
else if (action == 'tag') currentPage.value = 'user-tag'
else if (action == 'level') currentPage.value = 'user-level'
else if (action == 'config') currentPage.value = 'user-config'
else currentPage.value = 'user-list'
})
</script>

View File

@@ -1,20 +1,23 @@
<template>
<view class="Page">
<view class="Header">
<text class="Title">用户统计</text>
<text class="SubTitle">user-statistics</text>
</view>
<AdminLayout currentPage="user">
<view class="Page">
<view class="Header">
<text class="Title">用户统计</text>
<text class="SubTitle">user-statistics</text>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
<view class="Card">
<text class="Label">页面参数query</text>
<text class="Mono">{{ params }}</text>
</view>
</view>
</AdminLayout>
</template>
<script setup lang="uts">
import { ref } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import AdminLayout from '@/layouts/admin/AdminLayout.uvue'
const params = ref('')