修改bug

This commit is contained in:
Vce 2024-05-22 18:34:36 +08:00
parent b813f2b40e
commit c642a35eae
9 changed files with 148 additions and 95 deletions

View File

@ -84,12 +84,14 @@ export const delPaperApi = data => post('exam/paper/delete', data) //查询题
export const getExamTrainRecordApi = data => post('exam/trainRecord/page', data) //查询题目及选项 export const getExamTrainRecordApi = data => post('exam/trainRecord/page', data) //查询题目及选项
// 通知管理 // 通知管理
export const addConfigApi = data => post('exam/config/add', data) //添加
export const queryBySnConfigApi = data => post('exam/config/queryBySn', data) //通过id查询考试通知配置信息
export const editConfigApi = data => post('exam/config/edit', data) //通过id查询考试通知配置信息 export const editConfigApi = data => post('exam/config/edit', data) //通过id查询考试通知配置信息
export const getNoticePageApi = data => post('exam/notice/page', data) //分页查询通知记录 export const getNoticePageApi = data => post('exam/notice/page', data) //分页查询通知记录
export const delNoticeApi = data => post('exam/notice/delete', data) //删除通知记录 export const delNoticeApi = data => post('exam/notice/delete', data) //删除通知记录
// 通知配置管理
export const queryBySnConfigApi = data => post('exam/config/queryBySn', data) //通过id查询考试通知配置信息
export const addConfigApi = data => post('exam/config/add', data) //添加
// 积分管理 // 积分管理
export const pageExamPointConfigApi = data => post('exam/examPointConfig/page', data) //分页查询 export const pageExamPointConfigApi = data => post('exam/examPointConfig/page', data) //分页查询

View File

@ -61,19 +61,19 @@
<div class="dialogContainer"> <div class="dialogContainer">
<!-- <div class="dialogLeft"> --> <!-- <div class="dialogLeft"> -->
<el-form :model="examForm" ref="examForm" :rules="examRules" label-width="100px" class="demo-ruleForm"> <el-form :model="examForm" ref="examForm" :rules="examRules" label-width="100px" class="demo-ruleForm">
<el-form-item label="考试科目" prop="subjectType" required> <el-form-item label="考试科目" prop="subjectType" >
<el-select v-model="examForm.subjectType" placeholder="请选择"> <el-select v-model="examForm.subjectType" placeholder="请选择">
<el-option :label="item.name" :value="item.id" v-for="(item,i) in examSubjectList" :key="i"></el-option> <el-option :label="item.name" :value="item.id" v-for="(item,i) in examSubjectList" :key="i"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="试卷名称" prop="subjectName" required> <el-form-item label="试卷名称" prop="subjectName" >
<el-input v-model="examForm.subjectName"></el-input> <el-input v-model="examForm.subjectName"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="考试时间" prop="examTime" required> <el-form-item label="考试时间" prop="examTime" >
<el-input-number :min="0" :controls="false" :precision="0" style="width: 190px" v-model="examForm.examTime"></el-input-number> <el-input-number :min="0" :controls="false" :precision="0" style="width: 190px" v-model="examForm.examTime"></el-input-number>
<span style="margin-left: 10px;color:#a6a7b2;">分钟</span> <span style="margin-left: 10px;color:#a6a7b2;">分钟</span>
</el-form-item> </el-form-item>
<el-form-item label="及格分数线" prop="examPass" required> <el-form-item label="及格分数线" prop="passScore" >
<el-input-number :min="0" :max="100" :controls="false" :precision="0" style="width: 190px" v-model="examForm.passScore"></el-input-number> <el-input-number :min="0" :max="100" :controls="false" :precision="0" style="width: 190px" v-model="examForm.passScore"></el-input-number>
<span style="margin-left: 10px;color:#a6a7b2;"></span> <span style="margin-left: 10px;color:#a6a7b2;"></span>
</el-form-item> </el-form-item>
@ -83,7 +83,7 @@
<el-form-item label="备注" prop="desc"> <el-form-item label="备注" prop="desc">
<el-input type="textarea" rows="3" :show-word-limit="true" v-model="examForm.desc"></el-input> <el-input type="textarea" rows="3" :show-word-limit="true" v-model="examForm.desc"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="抽题模式" prop="examMode" required> <el-form-item label="抽题模式" prop="examMode" >
<el-radio-group v-model="examForm.examMode" @input="handleDialog"> <el-radio-group v-model="examForm.examMode" @input="handleDialog">
<div style="display:flex"> <div style="display:flex">
<div @click="dialogVisible2 = true"> <div @click="dialogVisible2 = true">
@ -404,42 +404,15 @@ export default {
emActiveTab: 'examRecord', emActiveTab: 'examRecord',
examManageInfo:{examTotalScore:'100',passScore: 60,questionCount: '100', examPeriod: '2024-05-12 00:00:00-2024-06-01 00:00:00', joinCount: '100',noJoinCount: '2'}, examManageInfo:{examTotalScore:'100',passScore: 60,questionCount: '100', examPeriod: '2024-05-12 00:00:00-2024-06-01 00:00:00', joinCount: '100',noJoinCount: '2'},
isExamManage: false, // isExamManage: false, //
examInfoList: [ examInfoList: [], //
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
{examineeName: '123',idCard: '123456789123456789',questionName:'123123123123123123123123',questionType:'单选题',answer:'123123123123123123123123123123123'},
], //
activeTab: '1', // Tab activeTab: '1', // Tab
examDetailInfo:{}, // examDetailInfo:{}, //
level1CompanyData: [ // level1CompanyData: [],
{ label: "一级 1", children: [ { label: "二级 1-1", children: [ { label: "三级 1-1-1", }, ], }, ], },
{ label: "一级 1", children: [ { label: "二级 1-1", children: [ { label: "三级 1-1-1", }, ], }, ], },
{ label: "一级 1", children: [ { label: "二级 1-1", children: [ { label: "三级 1-1-1", }, ], }, ], },
],
defaultProps: { // defaultProps: { //
children: "children", children: "children",
label: "workerName", label: "workerName",
}, },
questionList: [ // questionList: [],
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionInfo: 'sldkjalskfj;lsdjfsl;dkfj;sldfkslkdfjslkdfjsldkfjslkdfjsl', questionStatus: '1' },
{ questionStatus: '0' }
],
subjectName: '', // subjectName: '', //
questionName: '', // questionName: '', //
data: generateData(), data: generateData(),
@ -881,8 +854,6 @@ export default {
}, },
/// ///
submitBtn() { submitBtn() {
console.log("=====================================")
console.log(this.examForm,this.examAddDetail.questions)
// if(this.studyCycle.length > 0){ // if(this.studyCycle.length > 0){
// console.log('==========studyCycle-submitBtn==========',this.studyCycle) // console.log('==========studyCycle-submitBtn==========',this.studyCycle)
// this.addCourseForm.beginTime = this.studyCycle[0] // this.addCourseForm.beginTime = this.studyCycle[0]
@ -893,10 +864,7 @@ export default {
// this.addCourseForm.projectSn = this.$store.state.projectSn; // this.addCourseForm.projectSn = this.$store.state.projectSn;
// this.examForm.projectSn = this.projectSn // this.examForm.projectSn = this.projectSn
this.$refs.examForm.validate((valid) => { this.$refs.examForm.validate((valid) => {
console.log(valid);
if (valid) { if (valid) {
console.log(this.title,this.examAddDetail.questions.map(item => item.id).join(','),this.examAddDetail.questions.filter(item => item.type == 1).length,this.examForm.examMode);
let examInfo = { let examInfo = {
checkQuestionType:this.examForm.examMode, checkQuestionType:this.examForm.examMode,
name:this.examForm.subjectName, name:this.examForm.subjectName,

View File

@ -44,7 +44,7 @@
<el-dialog :modal-append-to-body="false" @close="close" :title="title" :visible.sync="dialogShow" width="667px"> <el-dialog :modal-append-to-body="false" @close="close" :title="title" :visible.sync="dialogShow" width="667px">
<div class="dialog_content"> <div class="dialog_content">
<el-form size="medium" ref="addEditForm" :model="addEditForm" :rules="addEditRules" label-width="120px" class="dialogFormBox"> <el-form size="medium" ref="addEditForm" :model="addEditForm" :rules="addEditRules" label-width="120px" class="dialogFormBox">
<el-form-item label="手册名称" prop="name"> <el-form-item label="制度名称" prop="name">
<el-input v-model="addEditForm.name" placeholder="请输入"></el-input> <el-input v-model="addEditForm.name" placeholder="请输入"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="公开状态" prop="isEnable"> <el-form-item label="公开状态" prop="isEnable">

View File

@ -285,7 +285,7 @@ export default {
}, },
editBefore(item,title){ editBefore(item,title){
this.title = title this.title = title
this.addCourseForm = item this.addCourseForm = JSON.parse(JSON.stringify(item))
this.coverFileList = JSON.parse(item.coverImg) this.coverFileList = JSON.parse(item.coverImg)
this.materialFileList = JSON.parse(item.fileUrl) this.materialFileList = JSON.parse(item.fileUrl)
this.dialogVisible = true this.dialogVisible = true
@ -494,7 +494,7 @@ export default {
display: flex; display: flex;
justify-content: center; justify-content: center;
width: 100%; width: 100%;
height: 680px; height: 600px;
/deep/ .el-dialog__body { /deep/ .el-dialog__body {
padding: 0 20px; padding: 0 20px;
} }

View File

@ -2,17 +2,19 @@
<div class="fullHeight"> <div class="fullHeight">
<div class="searchBox whiteBlock"> <div class="searchBox whiteBlock">
<el-form :inline="true" :model="noticeForm" label-width="100px" class="demo-form-inline"> <el-form :inline="true" :model="noticeForm" label-width="100px" class="demo-form-inline">
<el-form-item prop="noticeSwitch"> <el-form-item prop="enable">
<div style="padding: 0 0px 0 0;display: flex;align-items: center"> <div style="padding: 0 0px 0 0;display: flex;align-items: center">
<span style="padding: 0 10px 0 0;">是否开启通知提醒</span> <span style="padding: 0 10px 0 0;">是否开启通知提醒</span>
<el-switch v-model="noticeForm.enable" :disabled="isDisabled2" @change="disabledFn2" active-color="green" inactive-color="black" :active-value="1" :inactive-value="0"></el-switch> <!-- <el-switch v-model="noticeForm.enable" :disabled="isDisabled2" @change="disabledFn2" active-color="green" inactive-color="black" :active-value="1" :inactive-value="0"></el-switch> -->
<el-switch v-model="noticeForm.enable" :disabled="isDisabled2" active-color="green" inactive-color="black" :active-value="1" :inactive-value="0"></el-switch>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="培训前" prop="examTimeNumber" :rules="[ <el-form-item label="培训前" prop="examNum" :rules="[
{ type: 'number', message: '必须为数字值', trigger: 'change'}] "> { type: 'number', message: '必须为数字值', trigger: 'change'}] ">
<div style="width: 80px"> <div style="width: 80px">
<el-input v-model.number="noticeForm.examNum" size="medium" :disabled="isDisabled" @blur="disabledFn" autocomplete="off"></el-input> <!-- <el-input v-model.number="noticeForm.examNum" size="medium" :disabled="isDisabled" @blur="disabledFn" autocomplete="off"></el-input> -->
<el-input v-model.number="noticeForm.examNum" size="medium" :disabled="isDisabled" autocomplete="off"></el-input>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item></el-form-item> <el-form-item></el-form-item>
@ -45,13 +47,14 @@
</template> </template>
<script> <script>
import { import {
addConfigApi,queryBySnConfigApi,editConfigApi,getNoticePageApi,delNoticeApi addConfigApi,queryBySnConfigApi,editConfigApi,getNoticePageApi,delNoticeApi,
} from '@/assets/js/api/examSystem/examSystem' } from '@/assets/js/api/examSystem/examSystem'
export default { export default {
mounted() {}, mounted() {},
created() { created() {
this.projectSn = this.$store.state.projectSn
this.getConfig() this.getConfig()
console.log('👇') console.log('👇')
this.getNoticePage() this.getNoticePage()
@ -77,8 +80,9 @@ export default {
noticeForm:{ noticeForm:{
enable: '', enable: '',
examNum: '', examNum: '',
examType: '' examType: 2
}, },
projectSn: '',
} }
}, },
methods: { methods: {
@ -89,8 +93,16 @@ export default {
sn: this.$store.state.projectSn, sn: this.$store.state.projectSn,
}).then((res) => { }).then((res) => {
if (res.success) { if (res.success) {
console.log(res,'config-result'); if(res.result === null){
this.noticeForm = res.result addConfigApi({enable:0,examNum:0,examType:2,projectSn:this.projectSn}).then((res) => {
if(res.success){
this.getConfig()
}
})
}else{
console.log(res,'config-result');
this.noticeForm = res.result
}
} }
}) })
}, },
@ -143,11 +155,11 @@ export default {
}, },
disabledFn2(){ disabledFn2(){
this.submitNoticeForm() this.submitNoticeForm()
this.isDisabled2 = true
}, },
submitNoticeForm(noticeForm) { submitNoticeForm(noticeForm) {
// this.$refs[this.noticeForm].validate((valid) => { // this.$refs[this.noticeForm].validate((valid) => {
// if (valid) { // if (valid) {
console.log(7788)
editConfigApi({ editConfigApi({
id:this.noticeForm.id, id:this.noticeForm.id,
enable:this.noticeForm.enable, enable:this.noticeForm.enable,
@ -158,6 +170,9 @@ export default {
if (result.success) { if (result.success) {
console.log('信息编辑成功', result); console.log('信息编辑成功', result);
this.$message.success(result.message); this.$message.success(result.message);
this.isDisabled = true
this.isDisabled2 = true
} }
}) })
// } else { // } else {
@ -198,4 +213,11 @@ export default {
justify-content: center; justify-content: center;
align-item: center; align-item: center;
} }
/deep/.el-table__empty-text{
height: 400px;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
}
</style> </style>

View File

@ -12,7 +12,7 @@
</el-form> </el-form>
</div> </div>
<div class="table_wrap whiteBlock" style="height:667px"> <div class="table_wrap whiteBlock" style="height:677px">
<!-- <vue-scroll> --> <!-- <vue-scroll> -->
<el-table class="tables" :data="ruleList" max-height="667px"> <el-table class="tables" :data="ruleList" max-height="667px">
@ -48,7 +48,7 @@
<el-table-column align="center" prop="point" label="分数"> <el-table-column align="center" prop="point" label="分数">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="!scope.row.isEdit">{{scope.row.point}}</span> <span v-if="!scope.row.isEdit">{{scope.row.point}}</span>
<el-input-number :min="0" :precision="0" :controls="false" <el-input-number :min="0" :max="100" :precision="0" :controls="false"
v-model="scope.row.point" placeholder="请输入" v-model="scope.row.point" placeholder="请输入"
v-if="scope.row.isEdit"></el-input-number> v-if="scope.row.isEdit"></el-input-number>
</template> </template>
@ -133,6 +133,19 @@ export default {
}, },
// //
editSuccess(index, row) { editSuccess(index, row) {
if(!row.dictData){
this.$message.error('请选择规则类型')
return
}
if(!row.type){
this.$message.error('请选择规则符号')
return
}
if(!row.type){
this.$message.error('请输入分数')
return
}
this.$set(row, 'isEdit', false) this.$set(row, 'isEdit', false)
console.log(row,"========================") console.log(row,"========================")
if(row.isAdd){ if(row.isAdd){

View File

@ -225,9 +225,9 @@
ref="questionForm" ref="questionForm"
label-width="110px" label-width="110px"
size="medium" size="medium"
:rules="questionFormRules"
:model="questionForm" :model="questionForm"
style="width: 75%;margin: 0 auto;" style="width: 75%;margin: 0 auto;"
:rules="questionFormRules"
> >
<el-form-item label="试题内容" prop="content"> <el-form-item label="试题内容" prop="content">
<el-input <el-input
@ -235,10 +235,11 @@
placeholder="请输入" placeholder="请输入"
type="textarea" type="textarea"
:rows="2" :rows="2"
@input="handleInputArea()"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="科目类型" prop="subjectId"> <el-form-item label="科目类型" prop="subjectId">
<el-select v-model="subjectId" placeholder="请选择"> <el-select v-model="questionForm.subjectId" placeholder="请选择">
<el-option v-for="item in subjectNameList" :key="item.id" :label="item.name" :value="item.id"></el-option> <el-option v-for="item in subjectNameList" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select> </el-select>
@ -545,47 +546,47 @@ export default {
{ {
required: true, required: true,
message: "请输入", message: "请输入",
trigger: "change", trigger: "blur",
}, },
], ],
subjectId: [ subjectId: [
{ {
required: true, required: true,
message: "请选择", message: "请选择",
trigger: "change", trigger: "blur",
}, },
], ],
type: [ type: [
{ {
required: true, required: true,
message: "请选择", message: "请选择",
trigger: "change", trigger: "blur",
}, },
], ],
level: [ level: [
{ {
required: true, required: true,
message: "请选择", message: "请选择",
trigger: "change", trigger: "blur",
}, },
], ],
isApplication: [ isApplication: [
{ {
required: true, required: true,
message: "请选择", message: "请选择",
trigger: "change", trigger: "blur",
}, },
], ],
score: [ score: [
{ {
required: true, required: true,
message: "请输入", message: "请输入",
trigger: "change", trigger: "blur",
}, },
], ],
}, },
questionForm: { questionForm: {
content: "", content: '',
type: 1, type: 1,
level: 1, level: 1,
isApplication: 1, isApplication: 1,
@ -644,6 +645,9 @@ export default {
} }
}, },
methods: { methods: {
handleInputArea(){
this.$forceUpdate()
},
getExamSubjectList() { // getExamSubjectList() { //
let data = { let data = {
sn: this.projectSn, sn: this.projectSn,
@ -754,7 +758,7 @@ export default {
console.log(this.questionArr.length == 0,'length') console.log(this.questionArr.length == 0,'length')
console.log(findIndex != -1,'index') console.log(findIndex != -1,'index')
console.log(someFlag,'isflag') console.log(someFlag,'isflag')
this.$message.error("请添加试题并完整填写以及选中答案"); this.$message.warning("请添加试题并完整填写以及选中答案");
return; return;
} }
@ -840,6 +844,7 @@ export default {
options:this.questionForm.type == 1 ? option : multiOptions, options:this.questionForm.type == 1 ? option : multiOptions,
score:this.questionForm.score, score:this.questionForm.score,
subjectId:this.subjectId, subjectId:this.subjectId,
projectSn: this.projectSn,
}).then(result => { }).then(result => {
if (result.success) { if (result.success) {
console.log('信息添加成功', result); console.log('信息添加成功', result);
@ -1175,6 +1180,13 @@ export default {
margin-right: 10px; margin-right: 10px;
} }
} }
/deep/.el-table__empty-text{
width: 100%;
height: 500px;
display: flex;
justify-content: center;
align-items: center;
}
} }
} }
// / // /
@ -1207,6 +1219,10 @@ export default {
padding-top: 10px; padding-top: 10px;
} }
} }
/deep/.el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content{
// width: 100%;
background-color: #1111;
}
.move-tree-content { .move-tree-content {
padding-top: 10px; padding-top: 10px;
background: #f7f7f7; background: #f7f7f7;
@ -1250,8 +1266,8 @@ export default {
// color: #5181F6; // color: #5181F6;
.activeRadio{ .activeRadio{
// /deep/ .el-radio__input.is-checked .el-radio__inner{ // /deep/ .el-radio__input.is-checked .el-radio__inner{
// border-color: #409eff; // border-color: #409eff;
// background: #409eff; // background: #409eff;
// } // }
} }
} }
@ -1268,6 +1284,14 @@ export default {
} }
} }
/deep/ el-tree__empty-text{ /deep/ el-tree__empty-text{
margin-top: 30%; margin-top: 500px;
}
.left-tree{
// display: flex;
// justify-content: center;
// align-items: center;
// white-space: nowrap;
// word-wrap: none;
} }
</style> </style>

View File

@ -16,7 +16,7 @@
<el-table-column></el-table-column> <el-table-column></el-table-column>
<el-table-column width="240" label="操作" align="center"> <el-table-column width="240" label="操作" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" style="color:#5886f6" icon="el-icon-edit" @click="editBefore(scope.row,'编辑课程')" > <el-button size="mini" type="text" style="color:#5886f6" icon="el-icon-edit" @click="editBefore(scope.row)" >
<span style="color:black">编辑</span> <span style="color:black">编辑</span>
</el-button> </el-button>
<el-button size="mini" type="text" style="color:#ec4b52" class="delete-btn" icon="el-icon-delete" @click.native.stop="deleteBefore(scope.row) "> <el-button size="mini" type="text" style="color:#ec4b52" class="delete-btn" icon="el-icon-delete" @click.native.stop="deleteBefore(scope.row) ">
@ -164,7 +164,8 @@ export default {
editBefore(value) { editBefore(value) {
this.title = '编辑科目类型' this.title = '编辑科目类型'
console.log('当前点击的行', value) console.log('当前点击的行', value)
this.subjectInfo = value // this.subjectInfo = value
this.subjectInfo = JSON.parse(JSON.stringify(value))
// this.subjectInfo.id = value.id // this.subjectInfo.id = value.id
// this.subjectInfo.name = value.name // this.subjectInfo.name = value.name
// this.subjectInfo.parentId = value.id // this.subjectInfo.parentId = value.id

View File

@ -5,11 +5,11 @@
<div class="searchBox whiteBlock justify-between"> <div class="searchBox whiteBlock justify-between">
<el-form :inline="true" size="medium" class="demo-form-inline"> <el-form :inline="true" size="medium" class="demo-form-inline">
<el-form-item label="培训有效期限"> <el-form-item label="培训有效期限">
<el-date-picker v-model="starEndTime" type="daterange" range-separator="至" start-placeholder="开始日期" value-format="yyyy-MM-dd hh:mm:ss" <el-date-picker v-model="starEndTime" type="datetimerange" range-separator="至" start-placeholder="开始日期" value-format="yyyy-MM-dd HH:mm:ss"
end-placeholder="结束日期"> end-placeholder="结束日期" :default-time="['00:00:00','00:00:00']">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="教育类型"> <el-form-item label="科目名称">
<el-select v-model="subjectId" placeholder="请选择" clearable> <el-select v-model="subjectId" placeholder="请选择" clearable>
<el-option v-for="item in subjectNameList" :key="item.id" :label="item.name" <el-option v-for="item in subjectNameList" :key="item.id" :label="item.name"
:value="item.id"></el-option> :value="item.id"></el-option>
@ -26,7 +26,7 @@
</el-form> </el-form>
</div> </div>
<!-- table --> <!-- table -->
<div class="table_wrap whiteBlock" style="height: 667px"> <div class="table_wrap whiteBlock" style="height: 677px">
<el-table class="tables" :data="listData" height="200"> <el-table class="tables" :data="listData" height="200">
<el-table-column type="index" width="80" label="序号" align="center"></el-table-column> <el-table-column type="index" width="80" label="序号" align="center"></el-table-column>
<el-table-column align="center" prop="name" label="培训计划名称"></el-table-column> <el-table-column align="center" prop="name" label="培训计划名称"></el-table-column>
@ -77,12 +77,12 @@
<div class="dialogContainer" v-show="active == 1"> <div class="dialogContainer" v-show="active == 1">
<el-form :model="addCourseForm" ref="examForm" label-width="100px" class="demo-addCourseForm"> <el-form :model="addCourseForm" ref="examForm" label-width="100px" class="demo-addCourseForm">
<div class="item-flex"> <div class="item-flex">
<el-form-item label="培训计划名称" prop="name"> <el-form-item label="培训计划名称" prop="name" required>
<el-input v-model="addCourseForm.name" placeholder="请输入教育主题" maxlength="50" show-word-limit></el-input> <el-input v-model="addCourseForm.name" placeholder="请输入教育主题" maxlength="50" ></el-input>
</el-form-item> </el-form-item>
</div> </div>
<div class="item-flex"> <div class="item-flex">
<el-form-item label="科目类型" prop="subjectId"> <el-form-item label="科目类型" prop="subjectId" required>
<el-select v-model="addCourseForm.subjectId" placeholder="请选择科目类型"> <el-select v-model="addCourseForm.subjectId" placeholder="请选择科目类型">
<el-option :label="item.name" :value="item.id" v-for="(item, i) in subjectNameList" <el-option :label="item.name" :value="item.id" v-for="(item, i) in subjectNameList"
:key="i"></el-option> :key="i"></el-option>
@ -106,18 +106,18 @@
</el-form-item> </el-form-item>
</div> </div>
<div class="item-flex"> <div class="item-flex">
<el-form-item label="教育主题" prop="title"> <el-form-item label="教育主题" prop="title" required>
<el-input v-model="addCourseForm.title" placeholder="请输入教育主题" maxlength="50" show-word-limit></el-input> <el-input v-model="addCourseForm.title" placeholder="请输入教育主题" maxlength="50" ></el-input>
</el-form-item> </el-form-item>
</div> </div>
<div class="item-flex"> <div class="item-flex">
<el-form-item label="培训开始时间" prop="trainBeginTime"> <el-form-item label="培训开始时间" prop="trainBeginTime" required>
<el-date-picker v-model="addCourseForm.trainBeginTime" type="datetime" placeholder="选择日期时间" value-format="yyyy-MM-dd hh:mm:ss" default-time="12:00:00"></el-date-picker> <el-date-picker v-model="addCourseForm.trainBeginTime" type="datetime" placeholder="选择日期时间" value-format="yyyy-MM-dd HH:mm:ss" default-time="00:00:00"></el-date-picker>
</el-form-item> </el-form-item>
</div> </div>
<div class="item-flex"> <div class="item-flex">
<el-form-item label="培训结束时间" prop="trainEndTime"> <el-form-item label="培训结束时间" prop="trainEndTime" required>
<el-date-picker v-model="addCourseForm.trainEndTime" type="datetime" placeholder="选择日期时间" value-format="yyyy-MM-dd hh:mm:ss" default-time="12:00:00"></el-date-picker> <el-date-picker v-model="addCourseForm.trainEndTime" type="datetime" placeholder="选择日期时间" value-format="yyyy-MM-dd HH:mm:ss" default-time="00:00:00"></el-date-picker>
</el-form-item> </el-form-item>
</div> </div>
</el-form> </el-form>
@ -130,17 +130,17 @@
<el-button type="primary" size="medium" @click="addlocal"> 添加作业人员</el-button> <el-button type="primary" size="medium" @click="addlocal"> 添加作业人员</el-button>
</div> </div>
<el-table class="tables" :data="selectWorkerList" style="min-height:425px"> <el-table class="tables" :data="selectWorkerList" style="min-height:425px">
<el-table-column type="selection" align="center" width="55"></el-table-column> <!-- <el-table-column type="selection" align="center" width="55"></el-table-column> -->
<el-table-column type="index" label="序号" align="center"></el-table-column> <el-table-column type="index" label="序号" align="center"></el-table-column>
<el-table-column align="center" prop="workerName" label="姓名"></el-table-column> <el-table-column align="center" prop="workerName" label="姓名"></el-table-column>
<el-table-column align="center" prop="idCard" label="身份证"></el-table-column> <el-table-column align="center" prop="idCard" label="身份证"></el-table-column>
<el-table-column align="center" prop="teamName" label="所在班组"></el-table-column> <el-table-column align="center" prop="teamName" label="所在班组"></el-table-column>
<el-table-column align="center" prop="typeName" label="工种"></el-table-column> <el-table-column align="center" prop="typeName" label="工种"></el-table-column>
<el-table-column align="center" prop="jobTypeName" label="作业类别"> <!-- <el-table-column align="center" prop="jobTypeName" label="作业类别">
<template slot-scope="scope"> <template slot-scope="scope">
<div>{{ scope.row.jobTypeName ? scope.row.jobTypeName : '-' }}</div> <div>{{ scope.row.jobTypeName ? scope.row.jobTypeName : '-' }}</div>
</template> </template>
</el-table-column> </el-table-column> -->
<el-table-column align="center" prop="enterDate" label="进场日期"></el-table-column> <el-table-column align="center" prop="enterDate" label="进场日期"></el-table-column>
<el-table-column label="操作" align="center"> <el-table-column label="操作" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
@ -202,12 +202,11 @@
<el-table class="tables" ref="multipleTable" :data="workerList" style="min-height:425px"> <el-table class="tables" ref="multipleTable" :data="workerList" style="min-height:425px">
<el-table-column type="selection" align="center" width="55"></el-table-column> <el-table-column type="selection" align="center" width="55"></el-table-column>
<el-table-column type="index" label="序号" align="center"> <el-table-column type="index" label="序号" align="center"></el-table-column>
</el-table-column>
<el-table-column align="center" prop="workerName" label="姓名"></el-table-column> <el-table-column align="center" prop="workerName" label="姓名"></el-table-column>
<el-table-column align="center" prop="idCard" label="身份证"></el-table-column> <el-table-column align="center" prop="idCard" label="身份证"></el-table-column>
<el-table-column align="center" prop="enterpriseName" label="合作单位"></el-table-column> <el-table-column align="center" prop="enterpriseName" label="企业"></el-table-column>
<el-table-column align="center" prop="departmentName" label="队伍"></el-table-column> <el-table-column align="center" prop="departmentName" label="部门"></el-table-column>
<el-table-column align="center" prop="teamName" label="班组"></el-table-column> <el-table-column align="center" prop="teamName" label="班组"></el-table-column>
<el-table-column align="center" prop="typeName" label="工种"></el-table-column> <el-table-column align="center" prop="typeName" label="工种"></el-table-column>
<el-table-column align="center" prop="age" label="年龄"></el-table-column> <el-table-column align="center" prop="age" label="年龄"></el-table-column>
@ -228,8 +227,8 @@
</el-dialog> </el-dialog>
</div> </div>
</div> </div>
<div style="height: 100%" v-else> <div style="height: 100%;z-index:999;" v-else>
<el-page-header <el-page-header style="z-index:999;"
@back="goBack" @back="goBack"
:content="dialogTitle" :content="dialogTitle"
class="backText" class="backText"
@ -449,6 +448,7 @@ export default {
pageNo: this.worker.pageNo, pageNo: this.worker.pageNo,
// pageSize: this.worker.pageSize, // pageSize: this.worker.pageSize,
pageSize: 999999, pageSize: 999999,
// presence: 1,
} }
getWorkerInfoListApi(data).then((res) => { getWorkerInfoListApi(data).then((res) => {
if (res.code == 200) { if (res.code == 200) {
@ -483,6 +483,26 @@ export default {
// return // return
// }; // };
// this.active++; // this.active++;
if(!this.addCourseForm.name){
this.$message.error('请输入培训计划名称')
return
}
if(!this.addCourseForm.subjectId){
this.$message.error('请选择科目类型')
return
}
if(!this.addCourseForm.title){
this.$message.error('请输入教育主题')
return
}
if(!this.addCourseForm.trainBeginTime){
this.$message.error('请选择培训开始时间')
return
}
if(!this.addCourseForm.trainEndTime){
this.$message.error('请选择培训结束时间')
return
}
if(this.active == 1) { if(this.active == 1) {
this.active++; this.active++;
}; };
@ -637,7 +657,10 @@ export default {
console.log(this.addCourseForm) console.log(this.addCourseForm)
console.log(this.selectWorkerList); console.log(this.selectWorkerList);
// this.examForm.projectSn = this.projectSn // this.examForm.projectSn = this.projectSn
if(this.selectWorkerList.length === 0){
this.$message.error('请添加作业人员')
return
}
this.$refs.examForm.validate((valid) => { this.$refs.examForm.validate((valid) => {
if (valid) { if (valid) {
if (this.title == '新增') { if (this.title == '新增') {