diff --git a/mobile-h5/pages.json b/mobile-h5/pages.json
index f039838f..0af1f22a 100644
--- a/mobile-h5/pages.json
+++ b/mobile-h5/pages.json
@@ -56,6 +56,54 @@
"navigationBarTextStyle": "black"
}
},
+ {
+ "path": "pages/oa/webview/index",
+ "style": {
+ "navigationBarTitleText": "审批详情",
+ "navigationBarBackgroundColor": "#ecfdf5",
+ "navigationBarTextStyle": "black"
+ }
+ },
+ {
+ "path": "pages/oa/drafts/index",
+ "style": {
+ "navigationBarTitleText": "草稿箱",
+ "navigationBarBackgroundColor": "#ecfdf5",
+ "navigationBarTextStyle": "black"
+ }
+ },
+ {
+ "path": "pages/oa/pending/index",
+ "style": {
+ "navigationBarTitleText": "待办中心",
+ "navigationBarBackgroundColor": "#ecfdf5",
+ "navigationBarTextStyle": "black"
+ }
+ },
+ {
+ "path": "pages/oa/done/index",
+ "style": {
+ "navigationBarTitleText": "已办中心",
+ "navigationBarBackgroundColor": "#ecfdf5",
+ "navigationBarTextStyle": "black"
+ }
+ },
+ {
+ "path": "pages/oa/mine/index",
+ "style": {
+ "navigationBarTitleText": "我发起的",
+ "navigationBarBackgroundColor": "#ecfdf5",
+ "navigationBarTextStyle": "black"
+ }
+ },
+ {
+ "path": "pages/oa/cc/index",
+ "style": {
+ "navigationBarTitleText": "抄送我的",
+ "navigationBarBackgroundColor": "#ecfdf5",
+ "navigationBarTextStyle": "black"
+ }
+ },
{
"path": "pages/demo/list",
"style": {
diff --git a/mobile-h5/pages/oa/cc/index.vue b/mobile-h5/pages/oa/cc/index.vue
new file mode 100644
index 00000000..74336f4b
--- /dev/null
+++ b/mobile-h5/pages/oa/cc/index.vue
@@ -0,0 +1,12 @@
+
+
+ {{ title }}
+
+
+
diff --git a/mobile-h5/pages/oa/done/index.vue b/mobile-h5/pages/oa/done/index.vue
new file mode 100644
index 00000000..a387c15f
--- /dev/null
+++ b/mobile-h5/pages/oa/done/index.vue
@@ -0,0 +1,12 @@
+
+
+ {{ title }}
+
+
+
diff --git a/mobile-h5/pages/oa/drafts/index.vue b/mobile-h5/pages/oa/drafts/index.vue
new file mode 100644
index 00000000..3fbc8a3c
--- /dev/null
+++ b/mobile-h5/pages/oa/drafts/index.vue
@@ -0,0 +1,12 @@
+
+
+ {{ title }}
+
+
+
diff --git a/mobile-h5/pages/oa/mine/index.vue b/mobile-h5/pages/oa/mine/index.vue
new file mode 100644
index 00000000..14e474f1
--- /dev/null
+++ b/mobile-h5/pages/oa/mine/index.vue
@@ -0,0 +1,12 @@
+
+
+ {{ title }}
+
+
+
diff --git a/mobile-h5/pages/oa/pending/index.vue b/mobile-h5/pages/oa/pending/index.vue
new file mode 100644
index 00000000..29f4439c
--- /dev/null
+++ b/mobile-h5/pages/oa/pending/index.vue
@@ -0,0 +1,12 @@
+
+
+ {{ title }}
+
+
+
diff --git a/mobile-h5/pages/oa/webview/index.vue b/mobile-h5/pages/oa/webview/index.vue
new file mode 100644
index 00000000..30ccd5b1
--- /dev/null
+++ b/mobile-h5/pages/oa/webview/index.vue
@@ -0,0 +1,131 @@
+
+
+
+
+
+
diff --git a/mobile-h5/utils/oa-h5.js b/mobile-h5/utils/oa-h5.js
index ce3fb136..8f317521 100644
--- a/mobile-h5/utils/oa-h5.js
+++ b/mobile-h5/utils/oa-h5.js
@@ -38,6 +38,17 @@ export function buildOaStartUrl({ appId, draftId } = {}) {
return withQuery('/oa-start', params)
}
+/** 审批详情页 URL(须带 token;mode 为 view | approve) */
+export function buildOaDetailUrl({ instanceId, taskId, mode } = {}) {
+ const token = getToken()
+ const params = {}
+ if (instanceId) params.instanceId = instanceId
+ if (taskId) params.taskId = taskId
+ if (mode) params.mode = mode // view | approve
+ if (token) params.token = token
+ return withQuery('/oa-detail', params)
+}
+
const TITLE_KEY = 'oa_start_nav_title'
/** 跳转前缓存流程名(勿把中文放进 navigateTo / web-view URL,微信易白屏) */
@@ -60,3 +71,26 @@ export function takeOaStartTitle() {
return ''
}
}
+
+const DETAIL_TITLE_KEY = 'oa_detail_nav_title'
+
+/** 跳转前缓存详情标题(勿把中文放进 navigateTo / web-view URL) */
+export function stashOaDetailTitle(name) {
+ const t = String(name || '').trim()
+ try {
+ if (t) uni.setStorageSync(DETAIL_TITLE_KEY, t)
+ else uni.removeStorageSync(DETAIL_TITLE_KEY)
+ } catch (_) {
+ /* ignore */
+ }
+}
+
+export function takeOaDetailTitle() {
+ try {
+ const t = String(uni.getStorageSync(DETAIL_TITLE_KEY) || '').trim()
+ uni.removeStorageSync(DETAIL_TITLE_KEY)
+ return t
+ } catch (_) {
+ return ''
+ }
+}