fix: 添加教师简介字段

This commit is contained in:
lwh 2023-05-09 11:56:49 +08:00
parent 7412aacf0e
commit 10559e8462
8 changed files with 134 additions and 335 deletions

View File

@ -25,6 +25,11 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label-width="labelWidth" label="录取总数" prop="school_category_total">
<el-input-number v-model="formData.school_category_total" controls-position="right" :min="1"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label-width="labelWidth" label="排序" prop="school_category_sort">
<el-input-number v-model="formData.school_category_sort" controls-position="right" :min="1"></el-input-number>

View File

@ -27,6 +27,11 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label-width="labelWidth" label="录取总数" prop="school_category_total">
<el-input-number v-model="formData.school_category_total" controls-position="right" :min="1"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label-width="labelWidth" label="排序" prop="school_category_sort">
<el-input-number v-model='formData.school_category_sort' controls-position='right'></el-input-number>

View File

@ -27,6 +27,11 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label-width="labelWidth" label="录取总数" prop="school_category_total">
<el-input-number v-model="formData.school_category_total" controls-position="right" :min="1"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label-width="labelWidth" label="排序" prop="school_category_sort">
<el-input-number v-model='formData.school_category_sort' controls-position='right' :min="1"></el-input-number>

View File

@ -71,6 +71,7 @@
<template v-else>暂无图片</template>
</template>
</el-table-column>
<el-table-column prop="school_category_total" width="100" label="录取总数" :show-overflow-tooltip="true" align="center"> </el-table-column>
<el-table-column sortable prop="school_category_sort" width="200" label="排序" sort>
<template #default="scope">
<el-input-number v-model='scope.row.school_category_sort' controls-position="right" :min="1"

View File

@ -1,77 +1,32 @@
<template>
<el-dialog
v-model="dialogVisible"
title="添加教师"
width="900px"
@closed="closeDialog"
@open="openDialog"
>
<el-dialog v-model="dialogVisible" title="添加教师" width="900px" @closed="closeDialog" @open="openDialog">
<el-form ref="formRef" :model="formData" :rules="rules">
<el-row>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师名称"
prop="teacher_name"
>
<el-input
v-model="formData.teacher_name"
type="text"
placeholder="请输入教师名称"
></el-input>
<el-form-item :label-width="labelWidth" label="教师名称" prop="teacher_name">
<el-input v-model="formData.teacher_name" type="text" placeholder="请输入教师名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师职位"
prop="teacher_position"
>
<el-input
v-model="formData.teacher_position"
type="text"
placeholder="请输入教师职位"
></el-input>
<el-form-item :label-width="labelWidth" label="教师职位" prop="teacher_position">
<el-input v-model="formData.teacher_position" type="text" placeholder="请输入教师职位"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师图片"
prop="teacher_img"
>
<UploadImage
ref="uploadRef"
v-model="formData.teacher_img"
:data="uoloadData"
:limit="1"
:fileSize="5"
:drag="true"
:isShowTip="false"
/>
<el-form-item :label-width="labelWidth" label="教师图片" prop="teacher_img">
<UploadImage ref="uploadRef" v-model="formData.teacher_img" :data="uoloadData" :limit="1" :fileSize="5"
:drag="true" :isShowTip="false" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
:label-width="labelWidth"
label="授课科目"
prop="subject_guid"
>
<el-cascader
class="w100"
filterable
:options="dataList"
:props="{
checkStrictly: false,
value: 'subject_guid',
label: 'subject_name',
emitPath: false
}"
placeholder="请选择授课科目"
clearable
v-model="formData.subject_guid"
>
<el-form-item :label-width="labelWidth" label="授课科目" prop="subject_guid">
<el-cascader class="w100" filterable :options="dataList" :props="{
checkStrictly: false,
value: 'subject_guid',
label: 'subject_name',
emitPath: false
}" placeholder="请选择授课科目" clearable v-model="formData.subject_guid">
<template #default="{ node, data }">
<span>{{ data.subject_name }}</span>
<span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
@ -81,42 +36,25 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师简介"
prop="teacher_intro"
>
<RichText
v-model="formData.teacher_intro"
:min-height="196"
></RichText>
<el-form-item :label-width="labelWidth" label="教师简介" prop="teacher_intro">
<el-input rows="5" v-model="formData.teacher_intro" type="textarea" placeholder="请输入教师简介"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item :label-width="labelWidth" label="教师详情" prop="teacher_intro">
<RichText v-model="formData.teacher_content" :min-height="196"></RichText>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
:label-width="labelWidth"
label="教师排序"
prop="teacher_order"
>
<el-input-number
v-model="formData.teacher_order"
controls-position="right"
></el-input-number>
<el-form-item :label-width="labelWidth" label="教师排序" prop="teacher_order">
<el-input-number v-model="formData.teacher_order" controls-position="right"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="首页是否展示" prop="teacher_status">
<el-select
v-model="formData.teacher_status"
clearable
placeholder="请选择"
>
<el-option
v-for="item in show_status"
:key="item.dictionary_guid"
:label="item.dictionary_name"
:value="item.dictionary_value"
></el-option>
<el-select v-model="formData.teacher_status" clearable placeholder="请选择">
<el-option v-for="item in show_status" :key="item.dictionary_guid" :label="item.dictionary_name"
:value="item.dictionary_value"></el-option>
</el-select>
</el-form-item>
</el-col>
@ -125,9 +63,7 @@
<template #footer>
<span class="dialog-footer">
<el-button type="primary" @click="handleAddClick(formRef)"
>添加</el-button
>
<el-button type="primary" @click="handleAddClick(formRef)">添加</el-button>
<el-button @click="handleResetClick(formRef)">重置</el-button>
</span>
</template>

View File

@ -1,61 +1,27 @@
<template>
<el-dialog
v-model="props.modelValue"
title="教师详情"
width="900px"
@closed="closeDialog"
@open="openDialog"
>
<el-dialog v-model="props.modelValue" title="教师详情" width="900px" @closed="closeDialog" @open="openDialog">
<el-form ref="formRef" :model="formData" :disabled="true">
<el-row>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师名称"
prop="teacher_name"
>
<el-input
v-model="formData.teacher_name"
type="text"
placeholder="请输入教师名称"
></el-input>
<el-form-item :label-width="labelWidth" label="教师名称" prop="teacher_name">
<el-input v-model="formData.teacher_name" type="text" placeholder="请输入教师名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师职位"
prop="teacher_position"
>
<el-input
v-model="formData.teacher_position"
type="text"
placeholder="请输入教师职位"
></el-input>
<el-form-item :label-width="labelWidth" label="教师职位" prop="teacher_position">
<el-input v-model="formData.teacher_position" type="text" placeholder="请输入教师职位"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="授课科目"
prop="subject_guid"
>
<el-cascader
class="w100"
filterable
:options="dataList"
:props="{
checkStrictly: true,
value: 'subject_guid',
label: 'subject_name',
emitPath: false
}"
placeholder="请选择授课科目"
clearable
v-model="formData.subject_guid"
>
<el-form-item :label-width="labelWidth" label="授课科目" prop="subject_guid">
<el-cascader class="w100" filterable :options="dataList" :props="{
checkStrictly: true,
value: 'subject_guid',
label: 'subject_name',
emitPath: false
}" placeholder="请选择授课科目" clearable v-model="formData.subject_guid">
<template #default="{ node, data }">
<span>{{ data.subject_name }}</span>
<span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
@ -65,44 +31,24 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
:label-width="labelWidth"
label="教师图片"
prop="teacher_img"
>
<UploadImage
ref="uploadRef"
v-model="formData.teacher_img"
:data="uoloadData"
:limit="1"
:fileSize="5"
:drag="true"
:isShowTip="false"
/>
<el-form-item :label-width="labelWidth" label="教师图片" prop="teacher_img">
<UploadImage ref="uploadRef" v-model="formData.teacher_img" :data="uoloadData" :limit="1" :fileSize="5"
:drag="true" :isShowTip="false" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师简介"
prop="teacher_intro"
>
<RichText
v-model="formData.teacher_intro"
:min-height="196"
></RichText>
<el-form-item :label-width="labelWidth" label="教师简介" prop="teacher_intro">
<el-input rows="5" v-model="formData.teacher_intro" type="textarea" placeholder="请输入教师简介"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item :label-width="labelWidth" label="教师详情" prop="teacher_intro">
<RichText v-model="formData.teacher_content" :min-height="196"></RichText>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
:label-width="labelWidth"
label="教师排序"
prop="teacher_order"
>
<el-input-number
v-model="formData.teacher_order"
controls-position="right"
></el-input-number>
<el-form-item :label-width="labelWidth" label="教师排序" prop="teacher_order">
<el-input-number v-model="formData.teacher_order" controls-position="right"></el-input-number>
</el-form-item>
</el-col>
<!-- <el-col :span="12">

View File

@ -1,77 +1,32 @@
<template>
<el-dialog
v-model="props.modelValue"
title="编辑教师"
width="900px"
@closed="closeDialog"
@open="openDialog"
>
<el-dialog v-model="props.modelValue" title="编辑教师" width="900px" @closed="closeDialog" @open="openDialog">
<el-form ref="formRef" :model="formData" :rules="rules">
<el-row>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师名称"
prop="teacher_name"
>
<el-input
v-model="formData.teacher_name"
type="text"
placeholder="请输入教师名称"
></el-input>
<el-form-item :label-width="labelWidth" label="教师名称" prop="teacher_name">
<el-input v-model="formData.teacher_name" type="text" placeholder="请输入教师名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师职位"
prop="teacher_position"
>
<el-input
v-model="formData.teacher_position"
type="text"
placeholder="请输入教师职位"
></el-input>
<el-form-item :label-width="labelWidth" label="教师职位" prop="teacher_position">
<el-input v-model="formData.teacher_position" type="text" placeholder="请输入教师职位"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师图片"
prop="teacher_img"
>
<UploadImage
ref="uploadRef"
v-model="formData.teacher_img"
:data="uoloadData"
:limit="1"
:fileSize="5"
:drag="true"
:isShowTip="false"
/>
<el-form-item :label-width="labelWidth" label="教师图片" prop="teacher_img">
<UploadImage ref="uploadRef" v-model="formData.teacher_img" :data="uoloadData" :limit="1" :fileSize="5"
:drag="true" :isShowTip="false" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
:label-width="labelWidth"
label="授课科目"
prop="subject_guid"
>
<el-cascader
class="w100"
filterable
:options="dataList"
:props="{
checkStrictly: true,
value: 'subject_guid',
label: 'subject_name',
emitPath: false
}"
placeholder="请选择授课科目"
clearable
v-model="formData.subject_guid"
>
<el-form-item :label-width="labelWidth" label="授课科目" prop="subject_guid">
<el-cascader class="w100" filterable :options="dataList" :props="{
checkStrictly: true,
value: 'subject_guid',
label: 'subject_name',
emitPath: false
}" placeholder="请选择授课科目" clearable v-model="formData.subject_guid">
<template #default="{ node, data }">
<span>{{ data.subject_name }}</span>
<span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
@ -81,27 +36,18 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
:label-width="labelWidth"
label="教师简介"
prop="teacher_intro"
>
<RichText
v-model="formData.teacher_intro"
:min-height="196"
></RichText>
<el-form-item :label-width="labelWidth" label="教师简介" prop="teacher_intro">
<el-input rows="5" v-model="formData.teacher_intro" type="textarea" placeholder="请输入教师简介"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item :label-width="labelWidth" label="教师详情" prop="teacher_intro">
<RichText v-model="formData.teacher_content" :min-height="196"></RichText>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
:label-width="labelWidth"
label="教师排序"
prop="teacher_order"
>
<el-input-number
v-model="formData.teacher_order"
controls-position="right"
></el-input-number>
<el-form-item :label-width="labelWidth" label="教师排序" prop="teacher_order">
<el-input-number v-model="formData.teacher_order" controls-position="right"></el-input-number>
</el-form-item>
</el-col>
<!-- <el-col :span="12">
@ -124,9 +70,7 @@
</el-form>
<template #footer>
<span class="dialog-footer">
<el-button type="primary" @click="handleEditClick(formRef)"
>编辑</el-button
>
<el-button type="primary" @click="handleEditClick(formRef)">编辑</el-button>
<el-button @click="handleResetClick(formRef)">重置</el-button>
</span>
</template>

View File

@ -7,7 +7,7 @@
<!-- 搜索 -->
<el-form inline :model="params">
<el-form-item label="授教科目">
<el-cascader class="w100" :options="dataList"
<el-cascader class="w100" :options="dataList"
:props="{ checkStrictly: false, value: 'subject_guid', label: 'subject_name', emitPath: false }"
placeholder="请选择授教科目" clearable v-model="params.subject_guid">
<template #default="{ node, data }">
@ -23,16 +23,10 @@
</el-select>
</el-form-item>
<el-form-item label="教师名称">
<el-input
v-model="params.teacher_name"
placeholder="请输入教师名称"
></el-input>
<el-input v-model="params.teacher_name" placeholder="请输入教师名称"></el-input>
</el-form-item>
<el-form-item label="教师职位">
<el-input
v-model="params.teacher_position"
placeholder="请输入教师职位"
></el-input>
<el-input v-model="params.teacher_position" placeholder="请输入教师职位"></el-input>
</el-form-item>
@ -51,27 +45,15 @@
</el-col>
<!-- 导入 -->
<el-upload
class="upload-demo"
:action="importExcel"
:headers="headers"
:on-success="handleExcelSuccess"
:on-progress="uploadLoading"
:on-error="closeUploadLoading"
style="margin-left: 10px"
:show-file-list="false"
>
<el-upload class="upload-demo" :action="importExcel" :headers="headers" :on-success="handleExcelSuccess"
:on-progress="uploadLoading" :on-error="closeUploadLoading" style="margin-left: 10px" :show-file-list="false">
<el-button type="primary">导入</el-button>
</el-upload>
<!-- 下载导入模板 -->
<el-button icon="ElIconDownload" @click="downloadTemplate()"
>下载导入模板</el-button
>
<el-button icon="ElIconDownload" @click="downloadTemplate()">下载导入模板</el-button>
<!-- 导出 -->
<el-button icon="ElIconDocument" @click="exportExcel(params)"
>导出</el-button
>
<el-button icon="ElIconDocument" @click="exportExcel(params)">导出</el-button>
<!-- 下拉操作 -->
<el-dropdown v-if="selectionData.length">
@ -88,53 +70,31 @@
</el-dropdown>
</el-space>
<!-- 数据表格 -->
<DataTable
ref="tableRef"
style="width: 100%"
:onSelectionChange="data => (selectionData = data)"
:column="column"
:params="params"
v-loading="loading"
:request="params => tableDataInit(params)"
>
<DataTable ref="tableRef" style="width: 100%" :onSelectionChange="data => (selectionData = data)" :column="column"
:params="params" v-loading="loading" :request="params => tableDataInit(params)">
<!-- 排序 -->
<template #teacher_order="scope">
<el-input-number :disabled="loading" v-model='scope.row.teacher_order' controls-position="right"
@change="handleEditOrder(scope.row)"
:min="1"></el-input-number>
@change="handleEditOrder(scope.row)" :min="1"></el-input-number>
</template>
<template #subject_name="scope">
<el-tag class="mx-1" size="large">{{ scope.row.subject_name }}</el-tag>
</template>
<template #teacher_img="scope">
<el-image
v-if="scope.row.teacher_img"
:src="scope.row.teacher_img.split(',')[0]"
lazy
:preview-src-list="scope.row.teacher_img.split(',')"
:preview-teleported="true"
:hide-on-click-modal="true"
fit="contain"
class="el-avatar"
></el-image>
<el-image v-if="scope.row.teacher_img" :src="scope.row.teacher_img.split(',')[0]" lazy
:preview-src-list="scope.row.teacher_img.split(',')" :preview-teleported="true" :hide-on-click-modal="true"
fit="contain" class="el-avatar"></el-image>
<template v-else>暂无图片</template>
</template>
<!-- 首页是否展示 -->
<template #teacher_status='scope'>
<el-switch
:disabled="scope.row.enrol_aq_answer_status_bool"
v-model="scope.row.teacher_status"
class="mt-2"
inline-prompt
:inactive-value=1
:active-value=2
style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"
@click="handleEditShow(scope.row)"
/>
<!-- <dict-tag :options='show_status' :value='scope.row.teacher_status' /> -->
</template>
<!-- 首页是否展示 -->
<template #teacher_status='scope'>
<el-switch :disabled="scope.row.enrol_aq_answer_status_bool" v-model="scope.row.teacher_status" class="mt-2"
inline-prompt :inactive-value=1 :active-value=2
style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949" @click="handleEditShow(scope.row)" />
<!-- <dict-tag :options='show_status' :value='scope.row.teacher_status' /> -->
</template>
<template #chaoz="scope">
<el-space>
<el-button size="small" @click="handleUpdate(scope.row)">
@ -160,21 +120,12 @@
</DataTable>
<!-- 添加教师 -->
<AddTeacherDialog
v-model="addTeacherDialogVisible"
:done="() => tableRef.reload()"
></AddTeacherDialog>
<AddTeacherDialog v-model="addTeacherDialogVisible" :done="() => tableRef.reload()"></AddTeacherDialog>
<!-- 编辑教师 -->
<EditTeacherDialog
v-model="EditTeacherDialogVisible"
:data="EditTeacherDialogRow"
:done="() => tableRef.reload()"
></EditTeacherDialog>
<EditTeacherDialog v-model="EditTeacherDialogVisible" :data="EditTeacherDialogRow" :done="() => tableRef.reload()">
</EditTeacherDialog>
<!-- 教师详情 -->
<DetailTeacherDialog
v-model="DetailTeacherDialogVisible"
:data="DetailTeacherDialogRow"
></DetailTeacherDialog>
<DetailTeacherDialog v-model="DetailTeacherDialogVisible" :data="DetailTeacherDialogRow"></DetailTeacherDialog>
</template>
<script setup>
import { ArrowDown } from '@element-plus/icons-vue';
@ -230,9 +181,9 @@ getSubjectListFun()
//
const dataList = ref();
const params = reactive({
teacher_name:'',
teacher_position:'',
subject_guid:'',
teacher_name: '',
teacher_position: '',
subject_guid: '',
});
const column = [
@ -255,6 +206,12 @@ const column = [
label: '教师职位',
width: '150'
},
{
prop: 'teacher_intro',
label: '教师简介',
width: '200',
showOverflowTooltip: true
},
{
prop: 'teacher_img',
label: '教师图片',