提交 9d4f42d8 authored 作者: 赵世杰's avatar 赵世杰

1

上级 f6fe7994
......@@ -21,4 +21,25 @@ export function signRecordList(query) {
method: 'get',
params: query
})
}
export function objectiveIndustry(query) {
return request({
url: '/objective/l',
method: 'get',
params: query
})
}
export function personEducational(query) {
return request({
url: '/personEducational/l',
method: 'get',
params: query
})
}
export function workExperienceList(query) {
return request({
url: '/workExperience/l',
method: 'get',
params: query
})
}
\ No newline at end of file
......@@ -53,7 +53,7 @@
position: relative;
margin: 0 auto;
.el-dialog__body {
max-height: 450px;
max-height: 600px;
overflow: auto;
}
}
......
......@@ -77,7 +77,7 @@ export const constantRoutes = [
path: '',
component: () => import('@/views/personnel/index'),
name: '',
meta: { title: '用户注册', icon: 'dashboard' }
meta: { title: '注册用户', icon: 'dashboard' }
},
]
},
......@@ -94,19 +94,19 @@ export const constantRoutes = [
},
]
},
{
path: '/industry',
component: Layout,
redirect: '/industry',
children: [
{
path: '',
component: () => import('@/views/industry/index'),
name: '',
meta: { title: '职位类型管理', icon: 'dashboard' }
},
]
},
// {
// path: '/industry',
// component: Layout,
// redirect: '/industry',
// children: [
// {
// path: '',
// component: () => import('@/views/industry/index'),
// name: '',
// meta: { title: '职位类型管理', icon: 'dashboard' }
// },
// ]
// },
{
path: '/account',
component: Layout,
......
<template>
<div class="app-container">
<div class="app-container enterprise">
<el-form :model="queryParams" ref="queryRef" :inline="true">
<el-form-item label="企业名称">
<el-input placeholder="请输入" v-model="queryParams.name" />
......@@ -56,7 +56,7 @@
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize" @pagination="getList" />
<!-- 添加或修改账号问答框 -->
<el-dialog title="新增企业" v-model="open" width="440px" append-to-body>
<el-dialog title="新增企业" v-model="open" width="480px" append-to-body :close-on-click-modal="false">
<el-form label-width="100px" style="padding-right: 15px;" ref="addRef" :model="openForm" :rules="rules">
<el-form-item label="企业名称" prop="name">
<el-input v-model="openForm.name" placeholder="请输入"/>
......@@ -93,8 +93,8 @@
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="submit">提 交</el-button>
<el-button @click="open = false">取 消</el-button>
<el-button type="primary" @click="submit">提 交</el-button>
</div>
</template>
</el-dialog>
......@@ -189,9 +189,4 @@ function del(row) {
}).catch(() => {});
}
getList();
</script>
<style lang="scss" scoped>
.el-dialog .el-dialog__body {
max-height: 650px;
}
</style>
\ No newline at end of file
</script>
\ No newline at end of file
<template>
<div class="recruitAdd">
<el-dialog :title="form.id ? '编辑岗位信息' : '岗位发布'" v-model="dialogShow" width="500px" @open="dialogOpen" @close="dialogClose">
<el-dialog :title="form.id ? '编辑岗位信息' : '岗位发布'" v-model="dialogShow" width="1200px" @open="dialogOpen" @close="dialogClose" :close-on-click-modal="false">
<el-form :model="form" :rules="rules" label-width="100px" style="padding-right: 40px;" ref="addRef">
<el-form-item label="招聘企业" prop="orgId">
<el-select
......@@ -147,15 +147,7 @@
</div>
</el-form-item>
<el-form-item label="绩效奖金" prop="bonus">
<el-input-number
v-model="form.bonus"
:step="0.01"
placeholder="请输入"
step-strictly
:min="0"
:controls="false"
style="width: 100%;"
/>
<el-input v-model="form.bonus" placeholder="请输入"/>
</el-form-item>
<el-form-item label="地址" prop="area">
<el-cascader
......@@ -166,11 +158,13 @@
:props="{ value: 'label' }"
/>
</el-form-item>
<el-form-item>
</el-form-item>
<el-form-item label="详细地址" prop="address">
<el-input v-model="form.address" placeholder="请输入" type="textarea" rows="3"/>
<el-input v-model="form.address" placeholder="请输入" type="textarea" rows="6"/>
</el-form-item>
<el-form-item label="职位描述" prop="details">
<el-input type="textarea" v-model="form.details" rows="3" placeholder="请输入" />
<el-input type="textarea" v-model="form.details" rows="6" placeholder="请输入" />
</el-form-item>
</el-form>
<template #footer>
......@@ -205,7 +199,6 @@ const rules = ref({
time: [{ required: true, message: "请选择招聘时间", trigger: "blur" }],
times: [{ required: true, message: "请输入招聘人数", trigger: "blur" }],
salaryMin: [{ required: true, message: "请输入最低工资", trigger: "blur" }],
bonus: [{ required: true, message: "请输入绩效奖金", trigger: "blur" }],
area: [{ required: true, message: "请选择地址", trigger: "blur" }],
address: [{ required: true, message: "请输入详细地址", trigger: "blur" }],
industryId: [{ required: true, message: "请选择职位类型", trigger: "blur" }],
......@@ -352,6 +345,14 @@ function submit() {
<style lang="scss">
.recruitAdd{
.el-form{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
.el-form-item{
width: 48%;
}
}
.el-input-number{
width: 100%;
.el-input__wrapper{
......
......@@ -39,29 +39,88 @@
{{ row.person && row.person.idNo}}
</template>
</el-table-column>
<!-- <el-table-column label="操作" width="160" align="center">
<el-table-column label="操作" width="160" align="center">
<template #default="{row}">
<el-button link type="primary" icon="Delete" @click="del(row)">删除</el-button>
<el-button link type="primary" icon="View" @click="look(row)">简历查看</el-button>
</template>
</el-table-column> -->
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
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 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>
</template>
<script setup>
import { signRecordList,personDel } from "@/api/personnel";
import { signRecordList,workExperienceList,personEducational,objectiveIndustry } from "@/api/personnel";
import { ref } from "vue";
const { proxy } = getCurrentInstance();
const list = ref([]);
const loading = ref(false);
const total = ref(0);
const lookInfo = ref({
userInfo: {}, // 基本信息
careerObjective: [], // 求职意向
workExperience: [], // 工作经历
educationalBackground: [], // 教育经历
});
const lookShow = ref(false);
const queryParams = ref({
pageNum: 1,
pageSize: 10,
})
function look(row) {
lookShow.value = true
lookInfo.value = {
userInfo: row.person,
careerObjective: [],
workExperience: [],
educationalBackground: [],
}
workExperienceList({ personId: row.person.id }).then(res => {
lookInfo.value.workExperience = res.data.list
})
personEducational({ personId: row.person.id }).then(res => {
lookInfo.value.educationalBackground = res.data.list
})
objectiveIndustry({ personId: row.person.id }).then(res => {
lookInfo.value.careerObjective = res.data.list
})
}
/** 查询列表 */
function getList() {
const form = { ...queryParams.value }
......
......@@ -30,8 +30,8 @@ export default defineConfig(({ mode, command }) => {
open: true,
proxy: {
'/jfb-recruit': {
target: 'http://192.168.0.6:8000',
// target: 'https://jyzp.365jft.com/jfb-recruit',
// target: 'http://192.168.0.6:8000',
target: 'https://jyzp.365jft.com/jfb-recruit',
changeOrigin: true,
rewrite: (p) => p.replace(/^\/jfb-recruit/, '')
},
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论