This commit is contained in:
陈红丽 2024-07-11 16:37:48 +08:00
parent 86bb338bd6
commit ffa6c9a5d9
3 changed files with 21 additions and 11 deletions

View File

@ -85,11 +85,12 @@
<el-table ref="tableElRef" v-bind="getBindValues" v-loading="getLoading" @selection-change="handleSelectionChange"> <el-table ref="tableElRef" v-bind="getBindValues" v-loading="getLoading" @selection-change="handleSelectionChange">
<template v-for="item in getTableColumns" :key="item.prop"> <template v-for="item in getTableColumns" :key="item.prop">
<el-table-column <el-table-column
align="center"
v-if="item.type === 'index' || item.type === 'selection'" v-if="item.type === 'index' || item.type === 'selection'"
:type="item.type" :type="item.type"
:width="item.width" :width="item.width"
/> />
<el-table-column v-else :prop="item.prop" v-bind="item" show-overflow-tooltip> <el-table-column v-else :prop="item.prop" v-bind="item" show-overflow-tooltip align="center">
<template #default="scope" v-if="item.render"> <template #default="scope" v-if="item.render">
<Render :column="item" :row="scope.row" :render="item.render" :index="scope.$index" /> <Render :column="item" :row="scope.row" :render="item.render" :index="scope.$index" />
</template> </template>

View File

@ -6,11 +6,19 @@ export const columns = [
type: 'selection', type: 'selection',
}, },
{ {
label: '职级名称', label: '参数名称',
prop: 'name', prop: 'name',
}, },
{ {
label: '职级状态', label: '参数编码',
prop: 'code',
},
{
label: '参数值',
prop: 'value',
},
{
label: '参数状态',
prop: 'status', prop: 'status',
render(record) { render(record) {
return h( return h(

View File

@ -34,7 +34,8 @@
<el-option v-for="(item, index) in optionData.roleList" :key="index" :label="item.name" :value="item.id" /> <el-option v-for="(item, index) in optionData.roleList" :key="index" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="部门" prop="deptId" class="flex-1"> <el-form-item label="部门" prop="deptId" class="flex-1"
:rules="{ required: true, message: '请选择部门', trigger: 'change' }">
<el-tree-select <el-tree-select
v-model="formData.deptId" v-model="formData.deptId"
:data="optionData.deptList" :data="optionData.deptList"
@ -44,12 +45,12 @@
</el-form-item> </el-form-item>
</div> </div>
<div class="flex"> <div class="flex">
<el-form-item label="职级" prop="levelId" class="flex-1"> <el-form-item label="职级" prop="levelId" class="flex-1" :rules="{ required: true, message: '请选择职级', trigger: 'change' }">
<el-select v-model="formData.levelId" class="flex-1" clearable placeholder="请选择职级"> <el-select v-model="formData.levelId" class="flex-1" clearable placeholder="请选择职级">
<el-option v-for="(item, index) in optionData.levelList" :key="index" :label="item.name" :value="item.id" /> <el-option v-for="(item, index) in optionData.levelList" :key="index" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="岗位" prop="positionId" class="flex-1"> <el-form-item label="岗位" prop="positionId" class="flex-1" :rules="{ required: true, message: '请选择岗位', trigger: 'change' }">
<el-select v-model="formData.positionId" class="flex-1" clearable placeholder="请选择岗位"> <el-select v-model="formData.positionId" class="flex-1" clearable placeholder="请选择岗位">
<el-option v-for="(item, index) in optionData.positionList" :key="index" :label="item.name" :value="item.id" /> <el-option v-for="(item, index) in optionData.positionList" :key="index" :label="item.name" :value="item.id" />
</el-select> </el-select>
@ -61,16 +62,16 @@
<el-input v-model="formData.mobile" placeholder="请输入手机号码" clearable /> <el-input v-model="formData.mobile" placeholder="请输入手机号码" clearable />
</el-form-item> </el-form-item>
<el-form-item label="邮箱地址" prop="email" class="flex-1" <el-form-item label="邮箱地址" prop="email" class="flex-1"
:rules="{ type: 'email', message: '请输入正确邮箱地址', trigger: 'blur'}"> :rules="[{ required: true, message: '请输入邮箱地址', trigger: 'blur' },{ type: 'email', message: '请输入正确邮箱地址', trigger: 'blur'}]">
<el-input v-model="formData.email" placeholder="请输入邮箱地址" clearable /> <el-input v-model="formData.email" placeholder="请输入邮箱地址" clearable />
</el-form-item> </el-form-item>
</div> </div>
<div class="flex"> <div class="flex">
<el-form-item label="所属区域" class="flex-1"> <el-form-item label="所属区域" class="flex-1" prop="city" :rules="{ required: true, message: '请选择所属区域', trigger: 'change' }">
<chinaArea style="width: 100%" :type="4" v-model="formData.city"></chinaArea> <chinaArea style="width: 100%" :type="4" v-model="formData.city"></chinaArea>
</el-form-item> </el-form-item>
<el-form-item label="详细地址" class="flex-1"> <el-form-item label="详细地址" class="flex-1" prop="address" :rules="{ required: true, message: '请输入详细地址', trigger: 'blur' }">
<el-input v-model="formData.address" placeholder="请输入详细地址" clearable /> <el-input v-model="formData.address" placeholder="请输入详细地址" clearable />
</el-form-item> </el-form-item>
</div> </div>
@ -81,7 +82,7 @@
<el-radio :value="2">禁用</el-radio> <el-radio :value="2">禁用</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="排序" prop="sort" class="flex-1"> <el-form-item label="排序" prop="sort" class="flex-1" :rules="{ required: true, message: '请输入排序', trigger: 'blur' }">
<el-input-number v-model="formData.sort" :max="9999" /> <el-input-number v-model="formData.sort" :max="9999" />
</el-form-item> </el-form-item>
</div> </div>
@ -95,7 +96,7 @@
<el-input v-model="formData.note" type="textarea" placeholder="请输入备注" clearable /> <el-input v-model="formData.note" type="textarea" placeholder="请输入备注" clearable />
</el-form-item> </el-form-item>
</div> </div>
<el-form-item label="头像" prop="images"> <el-form-item label="头像" prop="avatar" :rules="{ required: true, message: '请输上传头像', trigger: 'blur' }">
<BasicUpload :action="`${uploadUrl}/api/upload/uploadFile`" :list="formData.avatar?[{name:formData.avatarName,url:formData.avatar}]:[]" :headers="uploadHeaders" <BasicUpload :action="`${uploadUrl}/api/upload/uploadFile`" :list="formData.avatar?[{name:formData.avatarName,url:formData.avatar}]:[]" :headers="uploadHeaders"
:data="{ name: 'user' }" :limit="1" @upload-change="uploadChange" @delete="handleDelete"/> :data="{ name: 'user' }" :limit="1" @upload-change="uploadChange" @delete="handleDelete"/>
</el-form-item> </el-form-item>