diff --git a/src/common/apis/approval/index.ts b/src/common/apis/approval/index.ts index 617fd99..98e814c 100644 --- a/src/common/apis/approval/index.ts +++ b/src/common/apis/approval/index.ts @@ -1,5 +1,5 @@ import { request } from '@/http/axios' -import { SubmitApprovalRequestData, SubmitApprovalResponseData, SearchApiReturnApprovalQuery, ApiResponsePageData, ReturnApprovalEntity } from './type' +import { SubmitApprovalRequestData, SubmitApprovalResponseData, SearchApiReturnApprovalQuery, ApiResponsePageData, ReturnApprovalEntity, HandleApprovalRequestData } from './type' export const getApprovalListApi = (params: SearchApiReturnApprovalQuery) => { return request>({ @@ -9,6 +9,8 @@ export const getApprovalListApi = (params: SearchApiReturnApprovalQuery) => { }) } + + export const submitApprovalApi = (data: SubmitApprovalRequestData) => { return request({ url: 'approval/submit', @@ -16,3 +18,11 @@ export const submitApprovalApi = (data: SubmitApprovalRequestData) => { data }) } + +export const handleApprovalApi = (data: HandleApprovalRequestData) => { + return request>({ + url: 'approval/handle', + method: 'post', + data + }) +} diff --git a/src/common/apis/approval/type.ts b/src/common/apis/approval/type.ts index bcc20c0..42c19fe 100644 --- a/src/common/apis/approval/type.ts +++ b/src/common/apis/approval/type.ts @@ -5,6 +5,16 @@ export interface SubmitApprovalRequestData { returnRemark: string } +export interface HandleApprovalRequestData { + /** 审批ID */ + approvalId: number + /** 审批状态 */ + status: number + returnAmount: number + auditImages: string + auditRemark: string +} + export interface SearchApiReturnApprovalQuery { pageNum: number pageSize: number diff --git a/src/pages/approval/handle.vue b/src/pages/approval/handle.vue new file mode 100644 index 0000000..c6f6b88 --- /dev/null +++ b/src/pages/approval/handle.vue @@ -0,0 +1,261 @@ + + + + + \ No newline at end of file diff --git a/src/pages/approval/list.vue b/src/pages/approval/list.vue index e46fd22..87b2bed 100644 --- a/src/pages/approval/list.vue +++ b/src/pages/approval/list.vue @@ -1,46 +1,20 @@ \ No newline at end of file diff --git a/src/pinia/stores/approval.ts b/src/pinia/stores/approval.ts new file mode 100644 index 0000000..164652b --- /dev/null +++ b/src/pinia/stores/approval.ts @@ -0,0 +1,25 @@ +import { defineStore } from 'pinia' +import { ref } from 'vue' +import type { ReturnApprovalEntity } from '@/common/apis/approval/type' + +export interface ApprovalDetail extends ReturnApprovalEntity { + goodsName: string + coverImg: string +} + +export const useApprovalStore = defineStore('approval', () => { + const currentApproval = ref(null) + + const setCurrentApproval = (approval: ApprovalDetail) => { + currentApproval.value = approval + } + + return { + currentApproval, + setCurrentApproval + } +}) + +export function useApprovalStoreOutside() { + return useApprovalStore() +} \ No newline at end of file diff --git a/src/router/index.ts b/src/router/index.ts index 1572027..62b9a4e 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -34,6 +34,11 @@ export const routes: RouteRecordRaw[] = [ component: () => import('@/pages/approval/submit.vue'), meta: { requiresAuth: true } }, + { + path: '/approval/handle/:approvalId', + component: () => import('@/pages/approval/handle.vue'), + meta: { requiresAuth: true } + }, { path: '/order-success', name: 'OrderSuccess', @@ -151,6 +156,11 @@ export const routes: RouteRecordRaw[] = [ component: () => import('@/pages/approval/submit.vue'), meta: { requiresAuth: true } }, + { + path: '/approval/handle/:approvalId', + component: () => import('@/pages/approval/handle.vue'), + meta: { requiresAuth: true } + }, { path: '/order-success', name: 'OrderSuccess',