feat(web-admin): register /m/crm/quote static routes.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
wuzilongandCursor committed 2026-10-15 15:53:02 +08:00
1 parent 9af0425b98
commit f0680544a1
7 files changed
+123

No files matched your search

@@ -195,6 +195,42 @@ export const staticRoutes: AppRouteRecordRaw[] = [
component: () => import('@views/m/crm/product/detail.vue'),
meta: { title: '产品详情', isHideTab: true, isMpWebview: true }
},
{
path: '/m/crm/quote',
name: 'MpCrmQuoteList',
component: () => import('@views/m/crm/quote/index.vue'),
meta: { title: '报价单管理', isHideTab: true, isMpWebview: true }
},
{
path: '/m/crm/quote/approval',
name: 'MpCrmQuoteApproval',
component: () => import('@views/m/crm/quote/approval.vue'),
meta: { title: '报价单审批', isHideTab: true, isMpWebview: true }
},
{
path: '/m/crm/quote/new',
name: 'MpCrmQuoteNew',
component: () => import('@views/m/crm/quote/form.vue'),
meta: { title: '新增报价单', isHideTab: true, isMpWebview: true }
},
{
path: '/m/crm/quote/:id/edit',
name: 'MpCrmQuoteEdit',
component: () => import('@views/m/crm/quote/form.vue'),
meta: { title: '编辑报价单', isHideTab: true, isMpWebview: true }
},
{
path: '/m/crm/quote/:id/versions',
name: 'MpCrmQuoteVersions',
component: () => import('@views/m/crm/quote/versions.vue'),
meta: { title: '版本历史', isHideTab: true, isMpWebview: true }
},
{
path: '/m/crm/quote/:id',
name: 'MpCrmQuoteDetail',
component: () => import('@views/m/crm/quote/detail.vue'),
meta: { title: '报价单详情', isHideTab: true, isMpWebview: true }
},
{
path: '/:pathMatch(.*)*',
name: 'Exception404CatchAll',
+2
View File
@@ -1,6 +1,8 @@
export const MP_WEBVIEW_PATH_PREFIX = '/m/'
export const MP_PLAN_LIST_PATH = '/m/pl/plan'
export const MP_CRM_PRODUCT_LIST_PATH = '/m/crm/product'
export const MP_CRM_QUOTE_LIST_PATH = '/m/crm/quote'
export const MP_CRM_QUOTE_APPROVAL_PATH = '/m/crm/quote/approval'
export const MINI_WORKBENCH_PATH = '/pages/workbench/workbench'
/** H5 iframe / uni 壳页约定:内嵌页请求返回工作台 */
export const MP_WEBVIEW_GO_WORKBENCH = 'MP_WEBVIEW_GO_WORKBENCH'
@@ -0,0 +1,17 @@
<template>
<MpWebviewShell>
<header class="mp-wv-header">
<div class="mp-wv-header__row">
<h1 class="mp-wv-header__title">{{ title }}</h1>
</div>
</header>
</MpWebviewShell>
</template>
<script setup lang="ts">
import { computed } from 'vue'
import { useRoute } from 'vue-router'
import MpWebviewShell from '@/layouts/MpWebviewShell.vue'
import '@/styles/mp-webview.scss'
const route = useRoute()
const title = computed(() => String(route.meta.title || ''))
</script>
@@ -0,0 +1,17 @@
<template>
<MpWebviewShell>
<header class="mp-wv-header">
<div class="mp-wv-header__row">
<h1 class="mp-wv-header__title">{{ title }}</h1>
</div>
</header>
</MpWebviewShell>
</template>
<script setup lang="ts">
import { computed } from 'vue'
import { useRoute } from 'vue-router'
import MpWebviewShell from '@/layouts/MpWebviewShell.vue'
import '@/styles/mp-webview.scss'
const route = useRoute()
const title = computed(() => String(route.meta.title || ''))
</script>
+17
View File
@@ -0,0 +1,17 @@
<template>
<MpWebviewShell>
<header class="mp-wv-header">
<div class="mp-wv-header__row">
<h1 class="mp-wv-header__title">{{ title }}</h1>
</div>
</header>
</MpWebviewShell>
</template>
<script setup lang="ts">
import { computed } from 'vue'
import { useRoute } from 'vue-router'
import MpWebviewShell from '@/layouts/MpWebviewShell.vue'
import '@/styles/mp-webview.scss'
const route = useRoute()
const title = computed(() => String(route.meta.title || ''))
</script>
+17
View File
@@ -0,0 +1,17 @@
<template>
<MpWebviewShell>
<header class="mp-wv-header">
<div class="mp-wv-header__row">
<h1 class="mp-wv-header__title">{{ title }}</h1>
</div>
</header>
</MpWebviewShell>
</template>
<script setup lang="ts">
import { computed } from 'vue'
import { useRoute } from 'vue-router'
import MpWebviewShell from '@/layouts/MpWebviewShell.vue'
import '@/styles/mp-webview.scss'
const route = useRoute()
const title = computed(() => String(route.meta.title || ''))
</script>
@@ -0,0 +1,17 @@
<template>
<MpWebviewShell>
<header class="mp-wv-header">
<div class="mp-wv-header__row">
<h1 class="mp-wv-header__title">{{ title }}</h1>
</div>
</header>
</MpWebviewShell>
</template>
<script setup lang="ts">
import { computed } from 'vue'
import { useRoute } from 'vue-router'
import MpWebviewShell from '@/layouts/MpWebviewShell.vue'
import '@/styles/mp-webview.scss'
const route = useRoute()
const title = computed(() => String(route.meta.title || ''))
</script>