学生信息详情保存
This commit is contained in:
@@ -109,6 +109,17 @@ export const putObj = (obj: any) => {
|
||||
data: obj,
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 更新
|
||||
* @param obj
|
||||
*/
|
||||
export const editObj = (obj: any) => {
|
||||
return request({
|
||||
url: '/basic/basicstudentinfo/edit',
|
||||
method: 'post',
|
||||
data: obj,
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 编辑学生毕业登记
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -299,6 +299,35 @@
|
||||
</span>
|
||||
</template>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 证书导出弹窗 -->
|
||||
<el-dialog title="证书导出" v-model="exportCertificateDialogVisible" :close-on-click-modal="false" draggable width="450px">
|
||||
<el-form :model="exportCertificateForm" label-width="80px">
|
||||
<el-form-item label="班级" required>
|
||||
<el-select v-model="exportCertificateForm.classCode" placeholder="请选择班级" filterable style="width: 100%">
|
||||
<el-option v-for="item in classList" :key="item.classCode" :label="item.classNo" :value="item.classCode" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="导出类型">
|
||||
<el-select v-model="exportCertificateForm.exportType" placeholder="请选择导出类型" clearable style="width: 100%">
|
||||
<el-option label="全部" :value="null" />
|
||||
<el-option v-for="item in majorLevelList" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
<el-button @click="exportCertificateDialogVisible = false">取 消</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="handleExportCertificateConfirm"
|
||||
:loading="exportCertificateLoading"
|
||||
:disabled="!exportCertificateForm.classCode">
|
||||
确认导出
|
||||
</el-button>
|
||||
</span>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -392,6 +421,14 @@ const workYearList = ref<any[]>([]);
|
||||
const applyInternshipForm = reactive({
|
||||
year: '',
|
||||
});
|
||||
// 证书导出相关
|
||||
const exportCertificateDialogVisible = ref(false);
|
||||
const exportCertificateLoading = ref(false);
|
||||
const majorLevelList = ref<any[]>([]);
|
||||
const exportCertificateForm = reactive({
|
||||
classCode: '',
|
||||
exportType: '' as string | null,
|
||||
});
|
||||
|
||||
// 表格列配置
|
||||
const tableColumns = [
|
||||
@@ -817,14 +854,45 @@ const handleExportStudentCard = async () => {
|
||||
|
||||
// 证书导出
|
||||
const handleExportCertificate = async () => {
|
||||
// 获取导出类型字典
|
||||
if (majorLevelList.value.length === 0) {
|
||||
try {
|
||||
const res = await getDicts('major_level');
|
||||
if (res.data && Array.isArray(res.data)) {
|
||||
majorLevelList.value = res.data.map((item: any) => ({
|
||||
label: item.label || item.dictLabel || item.name,
|
||||
value: item.value || item.dictValue || item.code,
|
||||
}));
|
||||
}
|
||||
} catch (err) {
|
||||
majorLevelList.value = [];
|
||||
}
|
||||
}
|
||||
// 重置表单
|
||||
exportCertificateForm.classCode = searchForm.classCode || '';
|
||||
exportCertificateForm.exportType = null;
|
||||
exportCertificateDialogVisible.value = true;
|
||||
};
|
||||
|
||||
// 确认证书导出
|
||||
const handleExportCertificateConfirm = async () => {
|
||||
if (!exportCertificateForm.classCode) {
|
||||
useMessage().warning('请选择班级');
|
||||
return;
|
||||
}
|
||||
|
||||
exportCertificateLoading.value = true;
|
||||
try {
|
||||
await makeExportSkillLevelTask({
|
||||
deptCode: searchForm.deptCode,
|
||||
classCode: searchForm.classCode,
|
||||
classCode: exportCertificateForm.classCode,
|
||||
exportType: exportCertificateForm.exportType || null,
|
||||
});
|
||||
useMessage().success('导出任务已创建,请在文件管理中下载');
|
||||
exportCertificateDialogVisible.value = false;
|
||||
} catch (err: any) {
|
||||
useMessage().error(err.msg || '创建导出任务失败');
|
||||
} finally {
|
||||
exportCertificateLoading.value = false;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user