招生
This commit is contained in:
292
src/views/recruit/recruitplanmajor/detaiform.vue
Normal file
292
src/views/recruit/recruitplanmajor/detaiform.vue
Normal file
@@ -0,0 +1,292 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
:title="!dataForm.id ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()"
|
||||
label-width="140px">
|
||||
|
||||
<el-form-item label="招生计划" prop="groupId">
|
||||
<el-select v-model="dataForm.groupId" filterable placeholder="请选择招生计划" size="small" style="width: 100%">
|
||||
<el-option
|
||||
v-for="item in planList"
|
||||
:key="item.id"
|
||||
:label="item.groupName"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="专业代码" prop="zydm">
|
||||
<el-input v-model="dataForm.zydm" placeholder="专业代码"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="专业名称" prop="zymc">
|
||||
<el-input v-model="dataForm.zymc" 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="请选择" size="small" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="item in deptList"
|
||||
:key="item.deptCode"
|
||||
:label="item.deptName"
|
||||
:value="item.deptCode">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="学制" prop="xz">
|
||||
<el-select v-model="dataForm.xz" filterable placeholder="请选择学制" size="small" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="item in majorYears"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="层次" prop="cc">
|
||||
<el-select v-model="dataForm.cc" filterable placeholder="请选择层次" size="small" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="item in ccList"
|
||||
:key="item.label"
|
||||
:label="item.label"
|
||||
:value="item.label">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="中德班" prop="isZd">
|
||||
<el-radio-group v-model="dataForm.isZd">
|
||||
<el-radio label="1">是</el-radio>
|
||||
<el-radio label="0">否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="订单班" prop="isOrder">
|
||||
<el-radio-group v-model="dataForm.isOrder">
|
||||
<el-radio label="1">是</el-radio>
|
||||
<el-radio label="0">否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="联院班" prop="isUnion">
|
||||
<el-radio-group v-model="dataForm.isUnion">
|
||||
<el-radio label="1">是</el-radio>
|
||||
<el-radio label="0">否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="正式专业代码" prop="offcialZydm">
|
||||
<el-select v-model="dataForm.offcialZydm" filterable placeholder="请选择正式专业代码" size="small" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="item in offcialZydmList"
|
||||
:key="item.majorCode"
|
||||
:label="item.majorCodeAndName"
|
||||
:value="item.majorCode">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="市平台代码" prop="cityPlanId">
|
||||
<el-select v-model="dataForm.cityPlanId" filterable placeholder="请选择市平台代码" size="small" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="item in cityPlanIdList"
|
||||
:key="item.id"
|
||||
:label="item.schoolMajorName+' | '+item.educational"
|
||||
:value="item.id"
|
||||
:disabled="isCityDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</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-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-form-item>
|
||||
</el-form>
|
||||
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()" v-if="canSubmit">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {addObj, getObj, putObj,getCityPlan} from '@/api/recruit/recruitplanmajor'
|
||||
import {getDeptList} from "@/api/basic/basicclass";
|
||||
import {getDictByType} from "@/api/contract/contract";
|
||||
import {list} from "@/api/recruit/recruitstudentplangroup";
|
||||
import {getMajorNameList} from "@/api/basic/major";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
visible: false,
|
||||
canSubmit: false,
|
||||
dataForm: {
|
||||
id: "",
|
||||
groupId: "",
|
||||
zydm: "",
|
||||
zymc: "",
|
||||
zygfmc: "",
|
||||
deptCode: "",
|
||||
xz: "",
|
||||
cc: "",
|
||||
isZd: "0",
|
||||
isOrder: "0",
|
||||
remarks: "",
|
||||
offcialZydm: "",
|
||||
isUnion:"0",
|
||||
tuitionFee:0,
|
||||
cityPlanId:null
|
||||
},
|
||||
cityPlanIdList:[],
|
||||
offcialZydmList: [],
|
||||
planList: [],
|
||||
yeNoList: [],
|
||||
deptList: [],
|
||||
ccList: [],
|
||||
majorYears: [],
|
||||
dataRule: {
|
||||
zydm: [
|
||||
{required: true, message: '专业代码不能为空', trigger: 'blur'},
|
||||
{min: 1, max: 6, message: '专业代码长度不大于6个字符', trigger: 'blur'}
|
||||
],
|
||||
tuitionFee: [
|
||||
{required: true, message: '学费不能为空', trigger: 'blur'}
|
||||
],
|
||||
zymc: [
|
||||
{required: true, message: '专业名称不能为空', trigger: 'blur'},
|
||||
{min: 1, max: 200, message: '专业名称长度不大于200个字符', trigger: 'blur'}
|
||||
|
||||
],
|
||||
zygfmc: [
|
||||
{required: true, message: '专业规范名称不能为空', trigger: 'blur'},
|
||||
{min: 1, max: 200, message: '专业规范名称长度不大于200个字符', trigger: 'blur'}
|
||||
],
|
||||
groupId: [
|
||||
{required: true, message: '招生计划不能为空', trigger: 'blur'}
|
||||
],
|
||||
xz: [
|
||||
{required: true, message: '学制不能为空', trigger: 'blur'}
|
||||
],
|
||||
deptCode: [
|
||||
{required: true, message: '学院不能为空', trigger: 'blur'}
|
||||
],
|
||||
cc: [
|
||||
{required: true, message: '层次不能为空', trigger: 'blur'}
|
||||
],
|
||||
isOrder: [
|
||||
{required: true, message: '订单班不能为空', trigger: 'blur'}
|
||||
],
|
||||
isZd: [
|
||||
{required: true, message: '订单班不能为空', trigger: 'blur'}
|
||||
],
|
||||
isUnion: [
|
||||
{required: true, message: '联院班不能为空', trigger: 'blur'}
|
||||
],
|
||||
remarks: [
|
||||
{min: 1, max: 100, message: '备注长度不大于100个字符', trigger: 'blur'}
|
||||
],
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
init(id) {
|
||||
this.dataForm.id = id || null;
|
||||
this.visible = true;
|
||||
this.canSubmit = true;
|
||||
this.initData();
|
||||
this.$nextTick(() => {
|
||||
this.$refs['dataForm'].resetFields()
|
||||
if (this.dataForm.id) {
|
||||
getObj(this.dataForm.id).then(response => {
|
||||
this.dataForm = response.data.data
|
||||
//获取市平台对应年份下的招生计划
|
||||
getCityPlan({id:this.dataForm.id}).then(data =>{
|
||||
this.cityPlanIdList = data.data.data
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 判断市平台招生专业是否占用,占用不可选
|
||||
* @param notBedNo
|
||||
* @returns {boolean}
|
||||
*/
|
||||
isCityDisable(id){
|
||||
var returnFlag = false;
|
||||
this.dataForm.cityPlanIds.forEach(e=>{
|
||||
if(e == id){
|
||||
returnFlag = true;
|
||||
}
|
||||
})
|
||||
return returnFlag;
|
||||
},
|
||||
initData() {
|
||||
//查询二级学院信息
|
||||
getDeptList().then(data => {
|
||||
this.deptList = data.data.data
|
||||
})
|
||||
list().then(data => {
|
||||
this.planList = data.data.data
|
||||
if (!this.dataForm.id) {
|
||||
this.dataForm.groupId = this.planList[0].id;
|
||||
}
|
||||
});
|
||||
getMajorNameList().then(data =>{
|
||||
this.offcialZydmList = data.data.data
|
||||
})
|
||||
//获取数据字典
|
||||
getDictByType("yes_no").then(res => {
|
||||
this.yesNoList = res.data.data
|
||||
})
|
||||
getDictByType("basic_major_years").then(res => {
|
||||
this.majorYears = res.data.data
|
||||
})
|
||||
getDictByType("basic_major_level").then(res => {
|
||||
this.ccList = res.data.data
|
||||
})
|
||||
|
||||
},
|
||||
// 表单提交
|
||||
dataFormSubmit() {
|
||||
if(this.dataForm.cityPlanId !=null){
|
||||
this.cityPlanIdList.forEach(e=>{
|
||||
if(e.id == this.dataForm.cityPlanId){
|
||||
this.dataForm.cityPlanName = e.schoolMajorName;
|
||||
this.dataForm.cityPlanYear = e.educational;
|
||||
}
|
||||
})
|
||||
}
|
||||
this.$refs['dataForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.canSubmit = false;
|
||||
if (this.dataForm.id) {
|
||||
putObj(this.dataForm).then(data => {
|
||||
this.$notify.success('修改成功')
|
||||
this.visible = false
|
||||
this.$emit('refreshDataList')
|
||||
}).catch(() => {
|
||||
this.canSubmit = true;
|
||||
});
|
||||
} else {
|
||||
addObj(this.dataForm).then(data => {
|
||||
this.$notify.success('添加成功')
|
||||
this.visible = false
|
||||
this.$emit('refreshDataList')
|
||||
}).catch(() => {
|
||||
this.canSubmit = true;
|
||||
});
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user