- 资源管理:列表筛选 + 新增/编辑弹窗 + 移动端预览 + 版本历史,已接入后端 RESTful 接口 - 分类与标签:左侧分类树(支持新增子分类/编辑/删除)+ 右侧标签云管理 - 审核管理:待审核/已通过/已驳回/审核记录四个 tab,驳回原因弹窗已接入审核接口 - 开发环境 API 地址切换为同事本地后台
44 lines
1.5 KiB
Vue
44 lines
1.5 KiB
Vue
<template>
|
|
<BasicModal v-bind="$attrs" @register="registerModal" title="填写驳回原因" :width="520" :minHeight="300" @ok="handleSubmit">
|
|
<a-form layout="vertical">
|
|
<a-form-item label="驳回原因" required>
|
|
<a-textarea v-model:value="reason" :rows="5" placeholder="请填写驳回原因,将通知内容编辑人员修改..." />
|
|
</a-form-item>
|
|
</a-form>
|
|
</BasicModal>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import { ref } from 'vue';
|
|
import { BasicModal, useModalInner } from '/@/components/Modal';
|
|
import { useMessage } from '/@/hooks/web/useMessage';
|
|
import { rejectApi } from '../check.api';
|
|
|
|
const emit = defineEmits(['success', 'register']);
|
|
const { createMessage } = useMessage();
|
|
const reason = ref('');
|
|
const record = ref<any>({});
|
|
const submitting = ref(false);
|
|
|
|
const [registerModal, { closeModal, setModalProps }] = useModalInner(async (data) => {
|
|
record.value = data?.record || {};
|
|
reason.value = '';
|
|
});
|
|
|
|
async function handleSubmit() {
|
|
if (!reason.value.trim()) {
|
|
createMessage.warning('请填写驳回原因');
|
|
return;
|
|
}
|
|
setModalProps({ confirmLoading: true });
|
|
try {
|
|
await rejectApi({ id: record.value.id, reason: reason.value });
|
|
createMessage.success('已驳回,通知已发送');
|
|
emit('success');
|
|
closeModal();
|
|
} finally {
|
|
setModalProps({ confirmLoading: false });
|
|
}
|
|
}
|
|
</script>
|