diff --git a/src/service/api/myTasks.ts b/src/service/api/myTasks.ts index e79551a..53649c2 100644 --- a/src/service/api/myTasks.ts +++ b/src/service/api/myTasks.ts @@ -47,3 +47,20 @@ export function myTasksAddItemApi(change_id:number,data: any) { data, }); } + +// 驳回变更 +export function rejectApi(data: {change_id:number,opinion:string}) { + return request({ + url: `/api/approvals/reject`, + method: 'post', + data, + }); +} +// 同意变更 +export function agreeApi(data: {change_id:number,opinion:string}) { + return request({ + url: `/api/approvals/agree`, + method: 'post', + data, + }); +} diff --git a/src/views/details/approval/index.vue b/src/views/details/approval/index.vue index 069a40d..998b966 100644 --- a/src/views/details/approval/index.vue +++ b/src/views/details/approval/index.vue @@ -9,12 +9,28 @@ import { AiError, aiTypeJudge } from "@/service/api/ai"; import { systemConfigApi } from '@/service/api/system'; import { getChangeDetailApi } from '@/service/api/change'; import previewComponent from '@/components/previewFile/index.vue' +import { rejectApi,agreeApi } from '@/service/api/myTasks'; const themeStore = useThemeStore(); const { routerPushByKey } = useRouterPush(); const route = useRoute(); const loading = ref(false); +// 驳回弹框 +const rejectModal = ref(false); +// 驳回原因 +const rejectReason = ref(''); +// 驳回loading +const rejectSaving = ref(false); +// 驳回快捷 +const rejectQuick = ref([ + "变更前后对比不完整", + "缺少支撑材料或核算数据", + "风险分析不充分,请补充识别", + "连带变更未识别完整", + "变更等级判定依据不足", + "所需材料清单不全", +]); // 审批意见 const comment = ref(''); // 返回键 @@ -266,12 +282,6 @@ const openPreview = (file:any) => { previewModal.value = true; } -// 催办 -const handleReminder = (m: any) => { - window.$message?.info('还差接口') - window.$message?.success(`已催办 ${m.user_name}(系统消息 + 企业微信 + 短信),连续 2 次未响应将上报部门负责人`) -} - // 匹配评分依据 const matchBasis = (items:any,score: number) => { return items.find((item:any) => item.score === score)?.label || ''; @@ -376,6 +386,34 @@ const getConfig = async () => { loading.value = false; } +// 打开驳回弹框 +const openReject = () => { + rejectReason.value = ''; + rejectModal.value = true; +} +// 驳回保存 +const rejectSave = async () => { + if (!rejectReason.value) { + return window.$message?.warning('请输入驳回意见'); + } + rejectSaving.value = true; + const {error} = await rejectApi({change_id:currentId.value,opinion:rejectReason.value}); + if(!error){ + rejectModal.value = false; + window.$message?.success('驳回成功'); + } + rejectSaving.value = false; +} +// 同意保存 +const agreeSave = async () => { + loading.value = true; + const {error} = await agreeApi({change_id:currentId.value,opinion:comment.value}); + if(!error){ + window.$message?.success('同意成功'); + } + loading.value = false; +} + onMounted(() => { if(route.query){ if(route.query.key){ @@ -408,7 +446,7 @@ onMounted(() => { 编号:{{ currentInfo?.change_no }} {
- AI辅助 + AI辅助
- 拒绝 - 同意 + 驳回 + 同意
@@ -977,6 +1015,39 @@ onMounted(() => { + + + + + + diff --git a/src/views/docs/archives/index.vue b/src/views/docs/archives/index.vue index 47dcef1..d44dbb5 100644 --- a/src/views/docs/archives/index.vue +++ b/src/views/docs/archives/index.vue @@ -659,6 +659,7 @@ onMounted(() => {