diff --git a/src/api/smoke.js b/src/api/smoke.js index 505478f..43a2bc9 100644 --- a/src/api/smoke.js +++ b/src/api/smoke.js @@ -132,3 +132,19 @@ export function updateRewardGoal(id, data) { return request.request({ url: `/reward-goals/${id}`, method: 'PUT', data, baseUrl: BASE_URL_V2 }) } +// 监督人机制(Phase 3) +export function createSupervisorInvite(days = 7) { + return request.request({ url: '/supervisor/invites', method: 'POST', data: { days }, baseUrl: BASE_URL_V2 }) +} + +export function bindSupervisorInvite(token) { + return request.request({ url: '/supervisor/bind', method: 'POST', data: { token }, baseUrl: BASE_URL_V2 }) +} + +export function getSupervisorOverview() { + return request.request({ url: '/supervisor/overview', method: 'GET', baseUrl: BASE_URL_V2 }) +} + +export function getSupervisorStatus() { + return request.request({ url: '/supervisor/status', method: 'GET', baseUrl: BASE_URL_V2 }) +} diff --git a/src/pages.json b/src/pages.json index dcb5a56..736b1b3 100644 --- a/src/pages.json +++ b/src/pages.json @@ -96,6 +96,20 @@ "navigationStyle": "default", "navigationBarTitleText": "梦想清单" } + }, + { + "path": "pages/supervisor/index", + "style": { + "navigationBarTitleText": "监督人", + "navigationStyle": "default" + } + }, + { + "path": "pages/supervisor/bind", + "style": { + "navigationBarTitleText": "绑定监督", + "navigationStyle": "default" + } } ], "globalStyle": { diff --git a/src/pages/profile/index.vue b/src/pages/profile/index.vue index eca32c1..4a7d720 100644 --- a/src/pages/profile/index.vue +++ b/src/pages/profile/index.vue @@ -59,6 +59,19 @@ + + + + + + 监督人 + 邀请朋友监督你,或查看你监督的人 + + + + + + @@ -286,6 +299,10 @@ function goNSTI() { uni.navigateTo({ url: '/pages/nsti/index' }) } +function goSupervisor() { + uni.navigateTo({ url: '/pages/supervisor/index' }) +} + function clearCache() { uni.showModal({ title: '清除缓存', diff --git a/src/pages/supervisor/bind.vue b/src/pages/supervisor/bind.vue new file mode 100644 index 0000000..76359df --- /dev/null +++ b/src/pages/supervisor/bind.vue @@ -0,0 +1,121 @@ + + + + + + diff --git a/src/pages/supervisor/index.vue b/src/pages/supervisor/index.vue new file mode 100644 index 0000000..1cb40f3 --- /dev/null +++ b/src/pages/supervisor/index.vue @@ -0,0 +1,438 @@ + + + + + +