4 changed files with 169 additions and 27 deletions
@ -0,0 +1,113 @@ |
|||||
|
<template> |
||||
|
<a-modal v-model:open="visible" :title="title" @ok="handleOk" width="50%" @cancel="closeModal"> |
||||
|
<a-form :model="form" layout="vertical" ref="formRef" :rules="rules"> |
||||
|
<a-row :gutter="[16, 16]"> |
||||
|
<a-col :span="24"> |
||||
|
<a-form-item label="审核结果" name="auditResult"> |
||||
|
<a-select |
||||
|
v-model:value="form.auditResult" |
||||
|
:options="auditResultOptions" |
||||
|
placeholder="请选择" |
||||
|
/> |
||||
|
</a-form-item> |
||||
|
</a-col> |
||||
|
</a-row> |
||||
|
<a-row :gutter="[16, 16]"> |
||||
|
<a-col :span="24"> |
||||
|
<a-form-item label="审核意见" name="auditOpinion"> |
||||
|
<a-textarea v-model:value="form.auditOpinion" :rows="4" placeholder="请输入" /> |
||||
|
</a-form-item> |
||||
|
</a-col> |
||||
|
</a-row> |
||||
|
<a-row :gutter="[16, 16]"> |
||||
|
<a-col :span="24"> |
||||
|
<a-form-item label="是否结案" name="isCloseCase" v-if="form.auditResult == '通过'"> |
||||
|
<a-radio-group v-model:value="form.isCloseCase"> |
||||
|
<a-radio value="是">是</a-radio> |
||||
|
<a-radio value="否">否</a-radio> |
||||
|
</a-radio-group> |
||||
|
</a-form-item> |
||||
|
</a-col> |
||||
|
</a-row> |
||||
|
</a-form> |
||||
|
</a-modal> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { reactive, ref } from 'vue'; |
||||
|
import { message } from 'ant-design-vue'; |
||||
|
import { getInfo, batchReviewOrder } from './api'; |
||||
|
export default { |
||||
|
setup(props, { emit }) { |
||||
|
const title = ref('批量审核'); |
||||
|
const visible = ref(false); |
||||
|
const form = reactive({ |
||||
|
auditResult: null, |
||||
|
auditOpinion: '', |
||||
|
isCloseCase: null, |
||||
|
ids: null, |
||||
|
}); |
||||
|
//下拉框 |
||||
|
const auditResultOptions = [ |
||||
|
{ |
||||
|
value: '通过', |
||||
|
}, |
||||
|
{ |
||||
|
value: '退回', |
||||
|
}, |
||||
|
]; |
||||
|
const showModal = async (ids) => { |
||||
|
visible.value = true; |
||||
|
form.ids = ids; |
||||
|
}; |
||||
|
|
||||
|
const handleOk = () => { |
||||
|
formRef.value.validate().then((valid) => { |
||||
|
if (valid) { |
||||
|
const params = {}; |
||||
|
for (let i in form) { |
||||
|
params[i] = form[i]; |
||||
|
} |
||||
|
if (params.auditResult == '退回') { |
||||
|
delete params.isCloseCase; |
||||
|
} |
||||
|
batchReviewOrder(params).then((_) => { |
||||
|
message.success('操作成功'); |
||||
|
emit('success'); |
||||
|
closeModal(); |
||||
|
}); |
||||
|
} |
||||
|
}); |
||||
|
}; |
||||
|
const closeModal = () => { |
||||
|
formRef.value.resetFields(); |
||||
|
visible.value = false; |
||||
|
}; |
||||
|
const formRef = ref(); |
||||
|
const rules = { |
||||
|
auditResult: [{ required: true, message: '请选择' }], |
||||
|
auditOpinion: [{ required: true, message: '请输入' }], |
||||
|
isCloseCase: [{ required:true, message: '请选择' }], |
||||
|
}; |
||||
|
return { |
||||
|
visible, |
||||
|
title, |
||||
|
form, |
||||
|
auditResultOptions, |
||||
|
showModal, |
||||
|
handleOk, |
||||
|
closeModal, |
||||
|
formRef, |
||||
|
rules, |
||||
|
}; |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style scoped> |
||||
|
/* 可选样式调整 */ |
||||
|
.ant-modal-body { |
||||
|
max-width: 600px; |
||||
|
margin: 0 auto; |
||||
|
} |
||||
|
</style> |
Loading…
Reference in new issue