提交 d098c80b authored 作者: matian's avatar matian

修改bug

上级 b4673484
......@@ -173,7 +173,14 @@ defineExpose({ refetch, tableRef })
<!-- 主体 -->
<div class="table-list-bd">
<slot name="body" v-bind="{ data: dataList }">
<el-table :data="dataList" v-loading="loading" v-bind="$attrs" style="height: 100%" ref="tableRef">
<el-table
:data="dataList"
v-loading="loading"
v-bind="$attrs"
style="height: 100%"
ref="tableRef"
:header-cell-style="{ background: '#EFEFEF' }"
>
<el-table-column v-bind="item" v-for="item in columns" :key="item.prop">
<template #default="scope" v-if="item.slots || item.computed">
<slot :name="item.slots" v-bind="scope" v-if="item.slots"></slot>
......@@ -213,6 +220,7 @@ defineExpose({ refetch, tableRef })
// flex-direction: column;
// box-sizing: border-box;
// }
.table-list-hd {
display: flex;
margin-bottom: 10px;
......
......@@ -42,6 +42,9 @@ const submitForm = async (formEl: FormInstance | undefined) => {
if (!formEl) return
await formEl.validate(valid => {
if (valid) {
ruleForm.education = store
.getMapValuesByKey('teacher_level')
.filter(item => item.value === ruleForm.education)[0].label
const params = Object.assign({}, ruleForm)
createTeacher(params).then(() => {
ElMessage.success('创建讲师成功')
......@@ -56,28 +59,28 @@ const submitForm = async (formEl: FormInstance | undefined) => {
<AppCard title="添加讲师">
<el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" label-width="120px" class="demo-ruleForm">
<el-row>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="讲师姓名:" prop="name">
<el-input v-model="ruleForm.name" style="width: 250px" placeholder="请输入讲师姓名" />
<el-input v-model="ruleForm.name" style="width: 300px" placeholder="请输入讲师姓名" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="讲师职位:" prop="title">
<el-input v-model="ruleForm.title" style="width: 250px" placeholder="请输入讲师职位" />
<el-input v-model="ruleForm.title" style="width: 300px" placeholder="请输入讲师职位" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="讲师学历:" prop="education">
<el-select v-model="ruleForm.education" clearable style="width: 250px" placeholder="请选择讲师学历">
<el-select v-model="ruleForm.education" clearable style="width: 300px" placeholder="请选择讲师学历">
<el-option v-for="(item, index) in levelList" :key="index" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="讲师任职机构:" prop="office">
<el-input v-model="ruleForm.office" style="width: 250px" placeholder="请输入讲师任职机构" />
<el-input v-model="ruleForm.office" style="width: 300px" placeholder="请输入讲师任职机构" />
</el-form-item>
</el-col>
</el-row>
......
......@@ -4,9 +4,13 @@ import { ElMessage } from 'element-plus'
import type { FormRules, FormInstance } from 'element-plus'
import VEditor from '@/components/tinymce/Index.vue'
import AppUpload from '@/components/base/AppUpload.vue'
import { useMapStore } from '@/stores/map'
const store = useMapStore()
const router = useRouter()
const route = useRoute()
const appList = ref()
const levelList = store.getMapValuesByKey('teacher_level')
const id = route.query.id as string
const title = route.query.title as string
......@@ -61,6 +65,9 @@ const handleUpdate = async (formEl: FormInstance | undefined) => {
if (!formEl) return
await formEl.validate(valid => {
if (valid) {
ruleForm.education = store
.getMapValuesByKey('teacher_level')
.filter(item => item.value === ruleForm.education)[0].label
const params = Object.assign({}, ruleForm)
updateTeacher(params).then(() => {
ElMessage.success('创建讲师成功')
......@@ -82,7 +89,12 @@ onMounted(() => {
<el-row>
<el-col :span="8">
<el-form-item label="讲师图片:" prop="avatar">
<img v-if="isEdit === '1' && ruleForm.avatar !== ''" :src="ruleForm.avatar" class="avatar_box1" />
<el-image
v-if="isEdit === '1' && ruleForm.avatar !== ''"
:src="ruleForm.avatar"
class="avatar_box1"
fit="contain"
/>
<div class="avatar_box" v-else-if="isEdit === '1' && ruleForm.avatar === ''">暂无讲师图片</div>
<AppUpload v-model="ruleForm.avatar" v-else />
</el-form-item>
......@@ -95,7 +107,15 @@ onMounted(() => {
<el-input v-model="ruleForm.title" :disabled="isEdit === '1'" />
</el-form-item>
<el-form-item label="讲师学历:" prop="education">
<el-input v-model="ruleForm.education" :disabled="isEdit === '1'" />
<el-select
v-model="ruleForm.education"
clearable
style="width: 250px"
placeholder="请选择讲师学历"
:disabled="isEdit === '1'"
>
<el-option v-for="(item, index) in levelList" :key="index" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="讲师任职机构:" prop="office">
<el-input v-model="ruleForm.office" :disabled="isEdit === '1'" />
......@@ -143,6 +163,7 @@ onMounted(() => {
border: 1px dashed #ccc;
}
.avatar_box1 {
width: 150px;
max-width: 150px;
height: 200px;
}
</style>
......@@ -29,7 +29,11 @@ const listOptions = $computed(() => {
{ label: '讲师姓名', prop: 'name', align: 'center' },
{ label: '讲师任职机构', prop: 'office', align: 'center' },
{ label: '讲师职位', prop: 'title', align: 'center' },
{ label: '讲师学历', prop: 'education', align: 'center' },
{
label: '讲师学历',
prop: 'education',
align: 'center'
},
{ label: '创建时间', prop: 'created_time', align: 'center' },
{ label: '操作', slots: 'table-operate', width: 230, align: 'center' }
]
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论