提交 097bd22b authored 作者: 赵世杰's avatar 赵世杰

1

上级 9d4f42d8
...@@ -57,6 +57,15 @@ ...@@ -57,6 +57,15 @@
overflow: auto; overflow: auto;
} }
} }
// .el-overlay-dialog{
// left: 200px;
// }
.is-fullscreen.el-dialog{
.el-dialog__body {
max-height: 100%;
overflow: auto;
}
}
// refine element ui upload // refine element ui upload
.upload-container { .upload-container {
...@@ -108,4 +117,17 @@ ...@@ -108,4 +117,17 @@
} }
.el-upload-list{ .el-upload-list{
overflow: hidden; overflow: hidden;
}
table .el-descriptions__cell{
width: 33%;
.el-descriptions__label{
font-weight: bold;
display: inline-block;
vertical-align: top;
}
.el-descriptions__content{
display: inline-block;
width: calc(100% - 100px);
vertical-align: top;
}
} }
\ No newline at end of file
...@@ -22,17 +22,53 @@ ...@@ -22,17 +22,53 @@
<el-table-column label="创建时间" prop="createTime" align="center"/> <el-table-column label="创建时间" prop="createTime" align="center"/>
<el-table-column label="操作" width="160" align="center"> <el-table-column label="操作" width="160" align="center">
<template #default="{row}"> <template #default="{row}">
<el-button link type="primary" icon="View" @click="look(row)">简历查看</el-button>
<el-button link type="primary" icon="Delete" @click="del(row)">删除</el-button> <el-button link type="primary" icon="Delete" @click="del(row)">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize" @pagination="getList" /> v-model:limit="queryParams.pageSize" @pagination="getList" />
<el-dialog title="简历" v-model="lookShow" width="1000px" append-to-body :close-on-click-modal="false">
<el-descriptions title="基本信息">
<el-descriptions-item label="姓名">{{ lookInfo.userInfo.name }}</el-descriptions-item>
<el-descriptions-item label="性别">{{ lookInfo.userInfo.sex ? '男' : '女' }}</el-descriptions-item>
<el-descriptions-item label="手机号码">{{ lookInfo.userInfo.phoneNumber }}</el-descriptions-item>
<el-descriptions-item label="身份证号">{{ lookInfo.userInfo.idNo }}</el-descriptions-item>
</el-descriptions>
<el-descriptions :title="`求职意向${index + 1}`" v-for="(item,index) in lookInfo.careerObjective">
<el-descriptions-item label="期望职位">{{ item.industryName }}</el-descriptions-item>
<el-descriptions-item label="工作城市">{{ item.province }}{{ item.city }}{{ item.region }}</el-descriptions-item>
<el-descriptions-item label="薪资要求">{{ item.salaryMin }}-{{ item.salaryMax }}</el-descriptions-item>
<el-descriptions-item label="工作性质">{{ item.workType }}</el-descriptions-item>
</el-descriptions>
<el-descriptions :title="`工作经历${index + 1}`" v-for="(item,index) in lookInfo.workExperience">
<el-descriptions-item label="公司名称">{{ item.orgName }}</el-descriptions-item>
<el-descriptions-item label="职位名称">{{ item.job }}</el-descriptions-item>
<el-descriptions-item label="在职时间">{{ item.startTime }} ~ {{ item.endTime }}</el-descriptions-item>
<el-descriptions-item label="所属行业">{{ item.industryName }}</el-descriptions-item>
<el-descriptions-item label="月薪">{{ item.money }}</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item label="工作描述">{{ item.descr }}</el-descriptions-item>
</el-descriptions>
<el-descriptions :title="`教育经历${index + 1}`" v-for="(item,index) in lookInfo.educationalBackground">
<el-descriptions-item label="最高学历">{{ item.qualification }}</el-descriptions-item>
<el-descriptions-item label="学校名称">{{ item.school }}</el-descriptions-item>
<el-descriptions-item label="所学专业">{{ item.major }}</el-descriptions-item>
<el-descriptions-item label="在校时间">{{ item.startTime }} ~ {{ item.endTime }}</el-descriptions-item>
</el-descriptions>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="lookShow = false">关 闭</el-button>
</div>
</template>
</el-dialog>
</div> </div>
</template> </template>
<script setup> <script setup>
import { personList,personDel } from "@/api/personnel"; import { personList,personDel,workExperienceList,personEducational,objectiveIndustry } from "@/api/personnel";
import { ref } from "vue"; import { ref } from "vue";
const { proxy } = getCurrentInstance(); const { proxy } = getCurrentInstance();
const list = ref([]); const list = ref([]);
...@@ -42,6 +78,31 @@ const queryParams = ref({ ...@@ -42,6 +78,31 @@ const queryParams = ref({
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
}) })
const lookShow = ref(false);
const lookInfo = ref({
userInfo: {}, // 基本信息
careerObjective: [], // 求职意向
workExperience: [], // 工作经历
educationalBackground: [], // 教育经历
});
function look(row) {
lookShow.value = true
lookInfo.value = {
userInfo: row,
careerObjective: [],
workExperience: [],
educationalBackground: [],
}
workExperienceList({ personId: row.id }).then(res => {
lookInfo.value.workExperience = res.data.list
})
personEducational({ personId: row.id }).then(res => {
lookInfo.value.educationalBackground = res.data.list
})
objectiveIndustry({ personId: row.id }).then(res => {
lookInfo.value.careerObjective = res.data.list
})
}
/** 查询列表 */ /** 查询列表 */
function getList() { function getList() {
const form = { ...queryParams.value } const form = { ...queryParams.value }
......
<template> <template>
<div class="recruitAdd"> <div class="recruitAdd">
<el-dialog :title="form.id ? '编辑岗位信息' : '岗位发布'" v-model="dialogShow" width="1200px" @open="dialogOpen" @close="dialogClose" :close-on-click-modal="false"> <el-dialog :title="form.id ? form.title : '岗位发布'" v-model="dialogShow" width="1200px" @open="dialogOpen" @close="dialogClose" :close-on-click-modal="false" fullscreen>
<el-form :model="form" :rules="rules" label-width="100px" style="padding-right: 40px;" ref="addRef"> <el-form :model="form" :rules="rules" label-width="100px" style="padding-right: 40px;" ref="addRef">
<el-form-item label="招聘企业" prop="orgId"> <el-form-item label="招聘企业" prop="orgId">
<el-select <el-select
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
placeholder="请选择" placeholder="请选择"
filterable filterable
style="width: 100%" style="width: 100%"
:disabled="form.title == '岗位详情'"
> >
<el-option <el-option
v-for="item in orgList" v-for="item in orgList"
...@@ -18,7 +19,7 @@ ...@@ -18,7 +19,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="职位名称" prop="name"> <el-form-item label="职位名称" prop="name">
<el-input v-model="form.name" placeholder="请输入" /> <el-input v-model="form.name" placeholder="请输入" :disabled="form.title == '岗位详情'"/>
</el-form-item> </el-form-item>
<el-form-item label="职位类型" prop="industry"> <el-form-item label="职位类型" prop="industry">
<el-cascader <el-cascader
...@@ -27,6 +28,7 @@ ...@@ -27,6 +28,7 @@
:show-all-levels="false" :show-all-levels="false"
@change="(e)=>{console.log(e)}" @change="(e)=>{console.log(e)}"
style="width: 100%" style="width: 100%"
:disabled="form.title == '岗位详情'"
:props="{ :props="{
value: 'name', value: 'name',
label: 'name', label: 'name',
...@@ -40,6 +42,7 @@ ...@@ -40,6 +42,7 @@
placeholder="请选择" placeholder="请选择"
filterable filterable
style="width: 100%" style="width: 100%"
:disabled="form.title == '岗位详情'"
> >
<el-option <el-option
v-for="item in recruitAllList" v-for="item in recruitAllList"
...@@ -55,6 +58,7 @@ ...@@ -55,6 +58,7 @@
placeholder="请选择" placeholder="请选择"
filterable filterable
style="width: 100%" style="width: 100%"
:disabled="form.title == '岗位详情'"
> >
<el-option <el-option
v-for="item in qualificationList" v-for="item in qualificationList"
...@@ -70,6 +74,7 @@ ...@@ -70,6 +74,7 @@
placeholder="请选择" placeholder="请选择"
filterable filterable
style="width: 100%" style="width: 100%"
:disabled="form.title == '岗位详情'"
> >
<el-option <el-option
v-for="item in experienceList" v-for="item in experienceList"
...@@ -88,6 +93,7 @@ ...@@ -88,6 +93,7 @@
end-placeholder="结束时间" end-placeholder="结束时间"
v-model="form.time" v-model="form.time"
value-format="YYYYMMDD" value-format="YYYYMMDD"
:disabled="form.title == '岗位详情'"
/> />
</el-form-item> </el-form-item>
<el-form-item label="招聘人数" prop="times"> <el-form-item label="招聘人数" prop="times">
...@@ -99,6 +105,7 @@ ...@@ -99,6 +105,7 @@
:min="1" :min="1"
:controls="false" :controls="false"
style="width: 100%;" style="width: 100%;"
:disabled="form.title == '岗位详情'"
/> />
</el-form-item> </el-form-item>
<el-form-item label="薪资待遇" prop="salaryMin"> <el-form-item label="薪资待遇" prop="salaryMin">
...@@ -110,6 +117,7 @@ ...@@ -110,6 +117,7 @@
filterable filterable
style="width: 100%" style="width: 100%"
@change="salaryMinChange" @change="salaryMinChange"
:disabled="form.title == '岗位详情'"
> >
<el-option <el-option
v-for="item in salaryMinList" v-for="item in salaryMinList"
...@@ -123,6 +131,7 @@ ...@@ -123,6 +131,7 @@
placeholder="请选择" placeholder="请选择"
filterable filterable
style="width: 100%" style="width: 100%"
:disabled="form.title == '岗位详情'"
> >
<el-option <el-option
v-for="item in salaryMaxList" v-for="item in salaryMaxList"
...@@ -136,6 +145,7 @@ ...@@ -136,6 +145,7 @@
placeholder="请选择" placeholder="请选择"
filterable filterable
style="width: 100%" style="width: 100%"
:disabled="form.title == '岗位详情'"
> >
<el-option <el-option
v-for="item in payTimeList" v-for="item in payTimeList"
...@@ -147,7 +157,7 @@ ...@@ -147,7 +157,7 @@
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="绩效奖金" prop="bonus"> <el-form-item label="绩效奖金" prop="bonus">
<el-input v-model="form.bonus" placeholder="请输入"/> <el-input v-model="form.bonus" placeholder="请输入" :disabled="form.title == '岗位详情'"/>
</el-form-item> </el-form-item>
<el-form-item label="地址" prop="area"> <el-form-item label="地址" prop="area">
<el-cascader <el-cascader
...@@ -156,21 +166,21 @@ ...@@ -156,21 +166,21 @@
@change="(e)=>{console.log(e)}" @change="(e)=>{console.log(e)}"
style="width: 100%" style="width: 100%"
:props="{ value: 'label' }" :props="{ value: 'label' }"
:disabled="form.title == '岗位详情'"
/> />
</el-form-item> </el-form-item>
<el-form-item>
</el-form-item>
<el-form-item label="详细地址" prop="address"> <el-form-item label="详细地址" prop="address">
<el-input v-model="form.address" placeholder="请输入" type="textarea" rows="6"/> <el-input v-model="form.address" placeholder="请输入" :disabled="form.title == '岗位详情'"/>
</el-form-item> </el-form-item>
<el-form-item label="职位描述" prop="details"> <el-form-item label="职位描述" prop="details" class="w100">
<el-input type="textarea" v-model="form.details" rows="6" placeholder="请输入" /> <el-input type="textarea" v-model="form.details" rows="15" placeholder="请输入" :disabled="form.title == '岗位详情'"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer" style="text-align: center;width: 100%;display: block;">
<el-button @click="calcel">取 消</el-button> <el-button @click="calcel" v-if="form.title != '岗位详情'">取 消</el-button>
<el-button type="primary" @click="submit">提交</el-button> <el-button type="primary" @click="calcel" v-if="form.title == '岗位详情'">关 闭</el-button>
<el-button type="primary" @click="submit" v-if="form.title != '岗位详情'">提交</el-button>
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
...@@ -281,6 +291,7 @@ function dialogOpen(){ ...@@ -281,6 +291,7 @@ function dialogOpen(){
if (props.detailInfo.id) { if (props.detailInfo.id) {
form.value = { form.value = {
id: props.detailInfo.id, id: props.detailInfo.id,
title: props.detailInfo.title,
orgId: props.detailInfo.orgId, orgId: props.detailInfo.orgId,
name: props.detailInfo.name, name: props.detailInfo.name,
recruitTypeId: props.detailInfo.recruitTypeId, recruitTypeId: props.detailInfo.recruitTypeId,
...@@ -350,7 +361,10 @@ function submit() { ...@@ -350,7 +361,10 @@ function submit() {
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between; justify-content: space-between;
.el-form-item{ .el-form-item{
width: 48%; width: 33%;
}
.el-form-item.w100{
width: 100%;
} }
} }
.el-input-number{ .el-input-number{
......
...@@ -93,11 +93,12 @@ ...@@ -93,11 +93,12 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="创建时间" prop="createTime" align="center" width="160"/> <el-table-column label="创建时间" prop="createTime" align="center" width="160"/>
<el-table-column label="操作" width="230" align="center" class-name="small-padding fixed-width" > <el-table-column label="操作" width="280" align="center" class-name="small-padding fixed-width" >
<template #default="{row}"> <template #default="{row}">
<el-button v-if="row.status == 'up'" link type="primary" icon="Edit" @click="toggleStatus(row)">下架</el-button> <el-button v-if="row.status == 'up'" link type="primary" icon="Edit" @click="toggleStatus(row)">下架</el-button>
<el-button v-if="row.status == 'down'" link type="primary" icon="Edit" @click="toggleStatus(row)">上架</el-button> <el-button v-if="row.status == 'down'" link type="primary" icon="Edit" @click="toggleStatus(row)">上架</el-button>
<el-button v-if="row.status == 'down'" link type="primary" icon="Edit" @click="visibleOpenpay = true; detailInfo = row">编辑</el-button> <el-button v-if="row.status == 'down'" link type="primary" icon="Edit" @click="visibleOpenpay = true; detailInfo = {...row,title: '编辑岗位信息'}">编辑</el-button>
<el-button link type="primary" icon="View" @click="visibleOpenpay = true; detailInfo = {...row,title: '岗位详情'}">详情</el-button>
<el-button v-if="row.status == 'down'" link type="primary" icon="Delete" @click="del(row)">删除</el-button> <el-button v-if="row.status == 'down'" link type="primary" icon="Delete" @click="del(row)">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
......
...@@ -16,7 +16,11 @@ ...@@ -16,7 +16,11 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table v-loading="loading" :data="list" show-overflow-tooltip> <el-table v-loading="loading" :data="list" show-overflow-tooltip>
<el-table-column label="报名时间" prop="updateTime" /> <el-table-column label="报名时间" prop="rtTime">
<template #default="{row}">
{{ row.rtTime || row.createTime}}
</template>
</el-table-column>
<el-table-column label="报名企业" prop="orgName" /> <el-table-column label="报名企业" prop="orgName" />
<el-table-column label="报名职位" prop="name" /> <el-table-column label="报名职位" prop="name" />
<el-table-column label="姓名"> <el-table-column label="姓名">
...@@ -66,6 +70,7 @@ ...@@ -66,6 +70,7 @@
<el-descriptions-item label="在职时间">{{ item.startTime }} ~ {{ item.endTime }}</el-descriptions-item> <el-descriptions-item label="在职时间">{{ item.startTime }} ~ {{ item.endTime }}</el-descriptions-item>
<el-descriptions-item label="所属行业">{{ item.industryName }}</el-descriptions-item> <el-descriptions-item label="所属行业">{{ item.industryName }}</el-descriptions-item>
<el-descriptions-item label="月薪">{{ item.money }}</el-descriptions-item> <el-descriptions-item label="月薪">{{ item.money }}</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item label="工作描述">{{ item.descr }}</el-descriptions-item> <el-descriptions-item label="工作描述">{{ item.descr }}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-descriptions :title="`教育经历${index + 1}`" v-for="(item,index) in lookInfo.educationalBackground"> <el-descriptions :title="`教育经历${index + 1}`" v-for="(item,index) in lookInfo.educationalBackground">
...@@ -96,7 +101,6 @@ const lookInfo = ref({ ...@@ -96,7 +101,6 @@ const lookInfo = ref({
careerObjective: [], // 求职意向 careerObjective: [], // 求职意向
workExperience: [], // 工作经历 workExperience: [], // 工作经历
educationalBackground: [], // 教育经历 educationalBackground: [], // 教育经历
}); });
const lookShow = ref(false); const lookShow = ref(false);
const queryParams = ref({ const queryParams = ref({
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论