This commit is contained in:
guochunsi
2026-01-16 14:01:01 +08:00
parent 80a86a2140
commit 7d4da543cb
10 changed files with 225 additions and 196 deletions

View File

@@ -26,9 +26,6 @@
<el-form-item label="专业名称" prop="majorName">
<el-input v-model="dataForm.majorName" placeholder="专业名称"></el-input>
</el-form-item>
<!-- <el-form-item label="专业规范名称" prop="zygfmc">-->
<!-- <el-input v-model="dataForm.zygfmc" placeholder="专业规范名称"></el-input>-->
<!-- </el-form-item>-->
<el-form-item label="所属学院" prop="deptCode">
<el-select v-model="dataForm.deptCode" filterable placeholder="请选择">
<el-option
@@ -98,12 +95,10 @@
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="排序" prop="sort">
<el-input-number :min="0" :max="999" v-model="dataForm.sort" placeholder="排序"
style="width: 100%"></el-input-number>
<el-input-number :min="0" :max="999" v-model="dataForm.sort" placeholder="排序"></el-input-number>
</el-form-item>
<el-form-item label="备注" prop="remarks">
<el-input type="textarea" :rows="3" placeholder="请输入备注信息" v-model="dataForm.remarks"
style="width: 100%;margin-top: 10px"></el-input>
<el-input type="textarea" :rows="3" placeholder="请输入备注信息" v-model="dataForm.remarks"></el-input>
</el-form-item>
</el-form>

View File

@@ -58,7 +58,7 @@
<!-- 操作按钮 -->
<div class="mb15">
<el-button
v-if="permissions.recruit_recruitplanmajor_add"
v-auth="'recruit_recruitplanmajor_add'"
type="primary"
icon="FolderAdd"
@click="addOrUpdateHandle"
@@ -85,7 +85,6 @@
</el-table-column>
<el-table-column prop="majorCode" label="专业序号" align="center" show-overflow-tooltip />
<el-table-column prop="majorName" label="专业名称" align="center" show-overflow-tooltip />
<!-- <el-table-column prop="zygfmc" label="专业规范名称" align="center" show-overflow-tooltip /> -->
<el-table-column prop="deptCode" label="学院" align="center" show-overflow-tooltip>
<template #default="scope">
{{ getDeptName(scope.row.deptCode) }}
@@ -93,21 +92,12 @@
</el-table-column>
<el-table-column prop="learnYear" label="学制" align="center" width="80" show-overflow-tooltip />
<el-table-column prop="majorLevel" label="层次" align="center" show-overflow-tooltip />
<el-table-column prop="isOrder" label="订单班" align="center" width="80" show-overflow-tooltip>
<el-table-column prop="isOrder" label="订单班|中德班|联院班" align="center" width="180" show-overflow-tooltip>
<template #default="scope">
{{ getYesNoLabel(scope.row.isOrder) }}
</template>
</el-table-column>
<el-table-column prop="isZd" label="中德班" align="center" width="80" show-overflow-tooltip>
<template #default="scope">
{{ getYesNoLabel(scope.row.isZd) }}
</template>
</el-table-column>
<el-table-column prop="isUnion" label="联院班" align="center" width="80" show-overflow-tooltip>
<template #default="scope">
{{ getYesNoLabel(scope.row.isUnion) }}
{{ getYesNoLabel(scope.row.isOrder) }}{{ getYesNoLabel(scope.row.isZd) }}{{ getYesNoLabel(scope.row.isUnion) }}
</template>
</el-table-column>
<el-table-column prop="sm" label="色盲不可录" align="center" width="120">
<template #default="scope">
<el-switch
@@ -134,7 +124,7 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-if="permissions.recruit_recruitplanmajor_edit"
v-auth="'recruit_recruitplanmajor_edit'"
type="primary"
link
icon="EditPen"
@@ -143,8 +133,8 @@
修改
</el-button>
<el-button
v-if="permissions.recruit_recruitplanmajor_del"
type="danger"
v-auth="'recruit_recruitplanmajor_del'"
type="primary"
link
icon="Delete"
@click="deleteHandle(scope.row.id)"
@@ -169,32 +159,17 @@
</template>
<script setup lang="ts" name="recruitplanmajor">
import { ref, reactive, computed, onMounted, nextTick, defineAsyncComponent } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { ref, reactive, onMounted, nextTick, defineAsyncComponent } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
import { getList } from '/@/api/recruit/recruitstudentplangroup'
import { fetchList, putObj, delObj,editQuickField } from '/@/api/recruit/recruitstudentplan'
import { fetchList, delObj, editQuickField } from '/@/api/recruit/recruitstudentplan'
import { getDeptList } from '/@/api/basic/basicclass'
import { getMajorNameList } from '/@/api/basic/major'
const TableForm = defineAsyncComponent(() => import('./detaiform.vue'))
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()
@@ -283,7 +258,7 @@ const init = async () => {
getDataList()
} catch (error) {
console.error('初始化失败', error)
message.error('初始化失败')
}
}

View File

@@ -1,13 +1,13 @@
<template>
<el-dialog title="招生计划专业调整" append-to-body width="90%" :close-on-click-modal="false" v-model="visible">
<el-form :model="dataForm" ref="dataFormRef" label-width="140px">
<el-dialog title="招生计划专业调整" append-to-body width="70%" :close-on-click-modal="false" v-model="visible">
<el-form :model="dataForm" ref="dataFormRef" class="mb4">
<el-form-item label="招生计划名称" prop="groupName">
<el-input v-model="dataForm.groupName" placeholder="招生计划名称" disabled></el-input>
<el-input v-model="dataForm.groupName" placeholder="招生计划名称" disabled style="width: 200px"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activiName" @tab-click="handleChange">
<el-tab-pane v-for="item in deptList" :key="item.deptCode" :label="item.deptName" :name="item.deptCode">
<div style="margin-top: 20px">
<div>
<el-table :data="dataList" border stripe v-loading="dataListLoading">
<el-table-column prop="majorName" header-align="center" align="center" label="专业">
<template #default="scope">
@@ -27,32 +27,6 @@
</template>
</el-table-column>
<!-- <el-table-column-->
<!-- prop="needStudentNum"-->
<!-- header-align="center"-->
<!-- align="center"-->
<!-- label="控制数"-->
<!-- width="180px"-->
<!-- >-->
<!-- <template #default="scope">-->
<!-- <el-input-number style="width: 80%" v-model="scope.row.needStudentNum" :min="0" :max="999"-->
<!-- @change="updateMajor(scope.row)"></el-input-number>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- prop="needStudentOverNum"-->
<!-- header-align="center"-->
<!-- align="center"-->
<!-- label="预留"-->
<!-- width="180px"-->
<!-- >-->
<!-- <template #default="scope">-->
<!-- <el-input-number style="width: 80%" v-model="scope.row.needStudentOverNum" :min="0" :max="999"-->
<!-- @change="updateMajor(scope.row)"></el-input-number>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column prop="scoreLine" header-align="center" align="center" label="录取线" width="180px">
<template #default="scope">
<el-input-number
@@ -69,8 +43,8 @@
<el-select
v-model="scope.row.degreeOfEducation"
placeholder="请选择生源"
style="width: 100%; text-align: center"
multiple
style="display: flex;justify-content: center;align-items: center;"
@change="updateMajor(scope.row,'degreeOfEducation')"
>
<el-option v-for="item in degreeOfEducationList" :key="item.value" :label="item.label" :value="item.value"> </el-option>