|
|
@@ -1,165 +1,162 @@
|
|
|
-
|
|
|
<style scoped>
|
|
|
.user-panel {
|
|
|
margin: 10px auto;
|
|
|
}
|
|
|
+.td_tit1 {
|
|
|
+ font-size:22px;
|
|
|
+ color: #000;
|
|
|
+ height: 50px;
|
|
|
+}
|
|
|
+.td_tit2 {
|
|
|
+ font-size:16px;
|
|
|
+ height: 40px;
|
|
|
+}
|
|
|
+.td_tit3 {
|
|
|
+ width: 70px;
|
|
|
+ height: 30px;
|
|
|
+}
|
|
|
+.td_con {
|
|
|
+ min-width:100px;
|
|
|
+ color: #000;
|
|
|
+}
|
|
|
+.divider {
|
|
|
+ border-top:1px dashed #cccccc;
|
|
|
+ height: 1px;
|
|
|
+ overflow:hidden;
|
|
|
+}
|
|
|
</style>
|
|
|
<template>
|
|
|
- <el-dialog
|
|
|
- :visible.sync="showDialog"
|
|
|
- :title="title"
|
|
|
- :modal-append-to-body="false"
|
|
|
- style="text-align: left"
|
|
|
- @close="closeDialog"
|
|
|
- :close-on-click-modal="false"
|
|
|
- >
|
|
|
- <div class="user-panel" v-loading="loading">
|
|
|
- <el-form
|
|
|
- ref="form"
|
|
|
- :model="formModel"
|
|
|
- :rules="ruleValidate"
|
|
|
- :label-width="'100px'"
|
|
|
- >
|
|
|
- <el-form-item label="" prop="id">
|
|
|
- <el-input
|
|
|
- v-model="formModel.id"
|
|
|
- placeholder="请输入"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="" prop="createBy">
|
|
|
- <el-input
|
|
|
- v-model="formModel.createBy"
|
|
|
- placeholder="请输入"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="" prop="createTime">
|
|
|
- <el-input
|
|
|
- v-model="formModel.createTime"
|
|
|
- placeholder="请输入"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="" prop="updateBy">
|
|
|
- <el-input
|
|
|
- v-model="formModel.updateBy"
|
|
|
- placeholder="请输入"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="" prop="updateTime">
|
|
|
- <el-input
|
|
|
- v-model="formModel.updateTime"
|
|
|
- placeholder="请输入"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="删除标示" prop="delFlag">
|
|
|
- <el-input
|
|
|
- v-model="formModel.delFlag"
|
|
|
- placeholder="请输入删除标示"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="用户ID " prop="jobUserId">
|
|
|
- <el-input
|
|
|
- v-model="formModel.jobUserId"
|
|
|
- placeholder="请输入用户ID "
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="性别" prop="sex">
|
|
|
- <el-input
|
|
|
- v-model="formModel.sex"
|
|
|
- placeholder="请输入性别"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="职位分类" prop="positionCategoryId">
|
|
|
- <el-input
|
|
|
- v-model="formModel.positionCategoryId"
|
|
|
- placeholder="请输入职位分类"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="工作经验" prop="workExp">
|
|
|
- <el-input
|
|
|
- v-model="formModel.workExp"
|
|
|
- placeholder="请输入工作经验"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="学历" prop="education">
|
|
|
- <el-input
|
|
|
- v-model="formModel.education"
|
|
|
- placeholder="请输入学历"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="期望工资" prop="dreamMoney">
|
|
|
- <el-input
|
|
|
- v-model="formModel.dreamMoney"
|
|
|
- placeholder="请输入期望工资"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="期望工作地点" prop="dreamAdd">
|
|
|
- <el-input
|
|
|
- v-model="formModel.dreamAdd"
|
|
|
- placeholder="请输入期望工作地点"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="出生年月" prop="birthday">
|
|
|
- <el-input
|
|
|
- v-model="formModel.birthday"
|
|
|
- placeholder="请输入出生年月"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="个人介绍" prop="introduction">
|
|
|
- <el-input
|
|
|
- v-model="formModel.introduction"
|
|
|
- placeholder="请输入个人介绍"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="简历状态(开启,审核,等" prop="status">
|
|
|
- <el-input
|
|
|
- v-model="formModel.status"
|
|
|
- placeholder="请输入简历状态(开启,审核,等"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="审批状态(字典:简历审批状态" prop="approveStatus">
|
|
|
- <el-input
|
|
|
- v-model="formModel.approveStatus"
|
|
|
- placeholder="请输入审批状态(字典:简历审批状态"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="工作状态(字典:工作在职状态" prop="jobStatus">
|
|
|
- <el-input
|
|
|
- v-model="formModel.jobStatus"
|
|
|
- placeholder="请输入工作状态(字典:工作在职状态"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="附件" prop="resumeUrls">
|
|
|
- <el-input
|
|
|
- v-model="formModel.resumeUrls"
|
|
|
- placeholder="请输入附件"
|
|
|
- style="width: 300px"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <el-dialog :visible.sync="showDialog" :title="title" :modal-append-to-body="false" style="text-align: left" @close="closeDialog" :close-on-click-modal="false">
|
|
|
+ <div class="user-panel">
|
|
|
+ <table style="width:100%;" border="0" cellpadding="0" cellspacing="0">
|
|
|
+ <tr>
|
|
|
+ <td rowspan="19" style="width:160px;" valign="top">
|
|
|
+ <el-avatar :size="125" shape="circle" :src="formModel.userPhoto+'?x-oss-process=image/resize,m_fill,w_64,h_64'"></el-avatar>
|
|
|
+ </td>
|
|
|
+ <td colspan="6" class="td_tit1">{{formModel.userName}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">联系方式:</td>
|
|
|
+ <td class="td_con">{{formModel.userTel}}</td>
|
|
|
+ <td class="td_tit3">性别:</td>
|
|
|
+ <td class="td_con">{{formModel.sexName}}</td>
|
|
|
+ <td class="td_tit3">求职状态:</td>
|
|
|
+ <td class="td_con">{{formModel.jobStatusName}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">身份证号:</td>
|
|
|
+ <td class="td_con">{{formModel.userIdCard}}</td>
|
|
|
+ <td class="td_tit3">年龄:</td>
|
|
|
+ <td class="td_con">{{formModel.userAge}}岁</td>
|
|
|
+ <td class="td_tit3">期望职位:</td>
|
|
|
+ <td class="td_con">{{formModel.positionCategoryName}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">出生年月:</td>
|
|
|
+ <td class="td_con">{{formModel.birthday}}</td>
|
|
|
+ <td class="td_tit3">学历:</td>
|
|
|
+ <td class="td_con">{{formModel.educationName}}</td>
|
|
|
+ <td class="td_tit3">期望地点:</td>
|
|
|
+ <td class="td_con">{{formModel.dreamAdd}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">常驻地址:</td>
|
|
|
+ <td class="td_con">{{formModel.userAddress}}</td>
|
|
|
+ <td class="td_tit3">工作经验:</td>
|
|
|
+ <td class="td_con">{{formModel.workExpName}}</td>
|
|
|
+ <td class="td_tit3">期望薪资:</td>
|
|
|
+ <td class="td_con">{{formModel.dreamMoneyName}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" style="height:60px">
|
|
|
+ <el-button size="medium" type="primary" @click="handleEdit(row)">下载简历</el-button>
|
|
|
+ <el-button size="medium" type="danger" @click="handleDelete(row)">立即沟通</el-button>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="divider"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_tit1">个人介绍</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_con">{{formModel.introduction}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="divider"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_tit1">工作经历</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_con">
|
|
|
+ <table v-for="item in formModel.workList" :key="item.id" style="width:100%;" border="0" cellpadding="0" cellspacing="0">
|
|
|
+ <tr>
|
|
|
+ <td colspan="2" class="td_tit2">{{item.companyName}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">工作时间:</td>
|
|
|
+ <td class="td_con">{{item.startTime}}-{{item.endTime}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">在职职位:</td>
|
|
|
+ <td class="td_con">{{item.job}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">工作职责:</td>
|
|
|
+ <td class="td_con">{{item.content}}</td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="divider"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_tit1">教育经历</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_con">
|
|
|
+ <table v-for="item in formModel.educateList" :key="item.id" style="width:100%;" border="0" cellpadding="0" cellspacing="0">
|
|
|
+ <tr>
|
|
|
+ <td colspan="2" class="td_tit2">{{item.schoolName}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">在校时间:</td>
|
|
|
+ <td class="td_con">{{item.startTime}}-{{item.endTime}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">学历:</td>
|
|
|
+ <td class="td_con">{{item.education}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="td_tit3">专业:</td>
|
|
|
+ <td class="td_con">{{item.major}}</td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="divider"></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_tit1">人员就业轨迹</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td colspan="6" class="td_con">
|
|
|
+ <div>
|
|
|
+ <el-timeline :reverse="true">
|
|
|
+ <el-timeline-item v-for="(workStep, index) in formModel.workStepList" :key="index" :timestamp="workStep.date">
|
|
|
+ {{workStep.text}}
|
|
|
+ </el-timeline-item>
|
|
|
+ </el-timeline>
|
|
|
+ </div>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="closeDialog">取 消</el-button>
|
|
|
- <el-button type="primary" @click="handleSubmit" :loading="submitting"
|
|
|
- >确 定</el-button
|
|
|
- >
|
|
|
+ <el-button @click="closeDialog">关 闭</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
</template>
|
|
|
@@ -172,133 +169,28 @@ export default {
|
|
|
data() {
|
|
|
return {
|
|
|
formModel: {},
|
|
|
- ruleValidate: {
|
|
|
- id: [{ required: true, message: "不能为空", trigger: "blur" }],
|
|
|
- createBy: [{ required: true, message: "不能为空", trigger: "blur" }],
|
|
|
- createTime: [{ required: true, message: "不能为空", trigger: "blur" }],
|
|
|
- updateBy: [{ required: true, message: "不能为空", trigger: "blur" }],
|
|
|
- updateTime: [{ required: true, message: "不能为空", trigger: "blur" }],
|
|
|
- delFlag: [
|
|
|
- { required: true, message: "删除标示不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- jobUserId: [
|
|
|
- { required: true, message: "用户ID 不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- sex: [{ required: true, message: "性别不能为空", trigger: "blur" }],
|
|
|
- positionCategoryId: [
|
|
|
- { required: true, message: "职位分类不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- workExp: [
|
|
|
- { required: true, message: "工作经验不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- education: [
|
|
|
- { required: true, message: "学历不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- dreamMoney: [
|
|
|
- { required: true, message: "期望工资不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- dreamAdd: [
|
|
|
- { required: true, message: "期望工作地点不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- birthday: [
|
|
|
- { required: true, message: "出生年月不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- introduction: [
|
|
|
- { required: true, message: "个人介绍不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- status: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: "简历状态(开启,审核,等不能为空",
|
|
|
- trigger: "blur",
|
|
|
- },
|
|
|
- ],
|
|
|
- approveStatus: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: "审批状态(字典:简历审批状态不能为空",
|
|
|
- trigger: "blur",
|
|
|
- },
|
|
|
- ],
|
|
|
- jobStatus: [
|
|
|
- {
|
|
|
- required: true,
|
|
|
- message: "工作状态(字典:工作在职状态不能为空",
|
|
|
- trigger: "blur",
|
|
|
- },
|
|
|
- ],
|
|
|
- resumeUrls: [
|
|
|
- { required: true, message: "附件不能为空", trigger: "blur" },
|
|
|
- ],
|
|
|
- },
|
|
|
showDialog: true,
|
|
|
- loading: false,
|
|
|
- submitting: false,
|
|
|
};
|
|
|
},
|
|
|
methods: {
|
|
|
closeDialog() {
|
|
|
this.$emit("close", false);
|
|
|
},
|
|
|
- handleSubmit() {
|
|
|
- var self = this;
|
|
|
-
|
|
|
- this.$refs["form"].validate((valid) => {
|
|
|
- if (valid) {
|
|
|
- (function () {
|
|
|
- var id = self.formModel.id;
|
|
|
-
|
|
|
- if (id == null || id.length == 0) {
|
|
|
- return resumeApi.add(self.formModel);
|
|
|
- } else {
|
|
|
- return resumeApi.update(self.formModel);
|
|
|
- }
|
|
|
- })().then(function (response) {
|
|
|
- var jsonData = response.data;
|
|
|
-
|
|
|
- if (jsonData.result) {
|
|
|
- self.$message({
|
|
|
- message: "保存成功!",
|
|
|
- type: "success",
|
|
|
- });
|
|
|
-
|
|
|
- self.$emit("close", true);
|
|
|
- } else {
|
|
|
- self.$message({
|
|
|
- message: jsonData.message + "",
|
|
|
- type: "warning",
|
|
|
- });
|
|
|
-
|
|
|
- self.$emit("close", false);
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- },
|
|
|
},
|
|
|
mounted: function () {
|
|
|
var self = this;
|
|
|
|
|
|
- (function () {
|
|
|
- if (self.businessKey.length == 0) {
|
|
|
- return resumeApi.create();
|
|
|
- } else {
|
|
|
- return resumeApi.edit(self.businessKey);
|
|
|
- }
|
|
|
- })()
|
|
|
- .then((response) => {
|
|
|
- var jsonData = response.data;
|
|
|
- self.loading = false;
|
|
|
+ resumeApi.detail(self.businessKey).then(response=>{
|
|
|
+ var jsonData = response.data;
|
|
|
|
|
|
- if (jsonData.result) {
|
|
|
- self.formModel = jsonData.data;
|
|
|
- } else {
|
|
|
- self.$message.error(jsonData.message + "");
|
|
|
- }
|
|
|
- })
|
|
|
- .catch((error) => {
|
|
|
- self.$message.error(error + "");
|
|
|
- });
|
|
|
+ if(jsonData.result){
|
|
|
+ self.formModel = jsonData.data;
|
|
|
+ console.log(self.formModel);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ self.$message.error(jsonData.message + "");
|
|
|
+ }
|
|
|
+ });
|
|
|
},
|
|
|
};
|
|
|
</script>
|