|
@@ -6,56 +6,118 @@
|
|
|
</section>
|
|
|
<section class="job-type-til">
|
|
|
<div class="left">已收到简历状态</div>
|
|
|
- <div class="refresh"><i class="el-icon-refresh"></i>刷新</div>
|
|
|
+ <div class="refresh" @click="handlegetApplyList">
|
|
|
+ <i class="el-icon-refresh"></i>刷新
|
|
|
+ </div>
|
|
|
</section>
|
|
|
<dl class="job-type">
|
|
|
<!-- <dt>职位:</dt> -->
|
|
|
<dd>
|
|
|
- <span class="active">全部</span>
|
|
|
- <span>未查看</span>
|
|
|
- <span>已查看</span>
|
|
|
- <span>已邀请面试</span>
|
|
|
- <span>已接受面试</span>
|
|
|
- <span>面试通过</span>
|
|
|
- <span>不合适</span>
|
|
|
- <span>已拒绝面试</span>
|
|
|
- <span>已入职</span>
|
|
|
- <span>已拒绝入职</span>
|
|
|
- <span>未参加面试</span>
|
|
|
+ <span
|
|
|
+ :class="{ active: filterIndex == '-1' }"
|
|
|
+ @click="filterData({ dictLabel: '', dictValue: '-1' })"
|
|
|
+ >全部</span
|
|
|
+ >
|
|
|
+ <span
|
|
|
+ :class="{ active: item.dictValue == filterIndex }"
|
|
|
+ @click="filterData(item)"
|
|
|
+ v-for="item in deliveryStatus"
|
|
|
+ :key="item.index"
|
|
|
+ >{{ item.dictLabel }}</span
|
|
|
+ >
|
|
|
</dd>
|
|
|
</dl>
|
|
|
<section class="job-list applys-list">
|
|
|
- <div class="job-item">
|
|
|
+ <div class="job-item" v-for="item in applyList" :key="item.id">
|
|
|
<div class="left">
|
|
|
- <div class="name">酒店服务员<span class="">2K-3K</span></div>
|
|
|
- <div class="position">Travrl-X<span>(贵阳)</span></div>
|
|
|
+ <div class="name">
|
|
|
+ {{ item.postName
|
|
|
+ }}<span class=""
|
|
|
+ >{{ item.postLowestSalary }}K-{{ item.postHighestSalary }}K</span
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ <div class="position">
|
|
|
+ {{ item.memberName }}<span>{{ item.memberCityName }}</span>
|
|
|
+ </div>
|
|
|
<div class="resume">使用简历:<span>在线简历</span></div>
|
|
|
</div>
|
|
|
<div class="right">
|
|
|
- <div class="edit" @click="edit">修改</div>
|
|
|
+ <div class="edit">
|
|
|
+ <span v-if="item.interviewMethod == 0 && item.interviewTime"
|
|
|
+ >发起视频面试</span
|
|
|
+ >
|
|
|
+ <span v-if="item.status == 30" @click="edit(item)"
|
|
|
+ >更新面试结果</span
|
|
|
+ >
|
|
|
+ </div>
|
|
|
<div class="bottom">
|
|
|
- <span class="time">2020.10.02 14:08:21</span>
|
|
|
- <span class="status">面试通过</span>
|
|
|
+ <span class="time"> {{ item.createTime }}</span>
|
|
|
+ <span class="status"> {{ item.status | verifyStatusFilter }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <el-pagination
|
|
|
+ :hide-on-single-page="true"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page.sync="queryParams.pageNum"
|
|
|
+ :page-size="queryParams.pageSize"
|
|
|
+ layout="prev, pager, next, jumper"
|
|
|
+ :total="total"
|
|
|
+ >
|
|
|
+ </el-pagination>
|
|
|
</section>
|
|
|
<el-dialog title="更新面试结果" :visible.sync="dialogVisible" width="30%">
|
|
|
<el-form :model="form">
|
|
|
<el-form-item label="岗位" :label-width="formLabelWidth">
|
|
|
- 酒店服务员
|
|
|
+ {{ form.postName }}
|
|
|
<!-- <el-input v-model="form.name" autocomplete="off"></el-input> -->
|
|
|
</el-form-item>
|
|
|
<el-form-item label="面试结果" :label-width="formLabelWidth">
|
|
|
- <el-select v-model="form.region" placeholder="请选面试结果">
|
|
|
- <el-option label="未参加面试" value="shanghai"></el-option>
|
|
|
- <el-option label="未通过" value="beijing"></el-option>
|
|
|
- <el-option label="通过" value="beijing"></el-option>
|
|
|
+ <el-select v-model="form.status" placeholder="请选面试结果">
|
|
|
+ <el-option
|
|
|
+ v-for="item in results"
|
|
|
+ :key="item.label"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ ></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="邀请入职时间" :label-width="formLabelWidth">
|
|
|
+ <!-- <el-form-item
|
|
|
+ v-if="form.status == 20"
|
|
|
+ label="邀请面试时间"
|
|
|
+ :label-width="formLabelWidth"
|
|
|
+ >
|
|
|
<el-date-picker
|
|
|
- v-model="form.time"
|
|
|
+ v-model="form.interviewTime"
|
|
|
+ type="datetime"
|
|
|
+ placeholder="选择日期"
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ v-if="form.status == 20"
|
|
|
+ label="邀请面试方式"
|
|
|
+ :label-width="formLabelWidth"
|
|
|
+ >
|
|
|
+ <el-select v-model="form.interviewMethod" placeholder="面试方式">
|
|
|
+ <el-option label="现场面试" value="1"></el-option>
|
|
|
+ <el-option label="视频面试" value="0"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ v-if="form.status == 20"
|
|
|
+ label="邀请面试地点"
|
|
|
+ :label-width="formLabelWidth"
|
|
|
+ >
|
|
|
+ <el-input v-model="form.interviewArea" autocomplete="off"></el-input>
|
|
|
+ </el-form-item> -->
|
|
|
+ <el-form-item
|
|
|
+ v-if="form.status == 50"
|
|
|
+ label="邀请入职时间"
|
|
|
+ :label-width="formLabelWidth"
|
|
|
+ >
|
|
|
+ <el-date-picker
|
|
|
+ v-model="form.hiredate"
|
|
|
type="datetime"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
@@ -71,6 +133,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import { getApplyList, getDicData } from "@/utils/api";
|
|
|
export default {
|
|
|
name: "",
|
|
|
components: {},
|
|
@@ -79,16 +142,107 @@ export default {
|
|
|
dialogVisible: false,
|
|
|
queryParams: {
|
|
|
pageNum: 1,
|
|
|
- pageSize: 10,
|
|
|
+ pageSize: 3,
|
|
|
+ postName: "",
|
|
|
},
|
|
|
- jobList: [{}],
|
|
|
+ total: 10,
|
|
|
+ applyList: [],
|
|
|
form: {},
|
|
|
formLabelWidth: "120px",
|
|
|
+ results: [
|
|
|
+ // { label: "未查看", value: 0 },
|
|
|
+ // { label: "已查看", value: 10 },
|
|
|
+ // { label: "邀请面试", value: 20 },
|
|
|
+ // { label: "已接受面试", value: 30 },
|
|
|
+ { label: "已拒绝面试", value: 40 },
|
|
|
+ { label: "面试通过", value: 50 },
|
|
|
+ { label: "不合适", value: 60 },
|
|
|
+ { label: "未参加面试", value: 70 },
|
|
|
+ { label: "已拒绝入职", value: 80 },
|
|
|
+ // { label: "已入职", value: 90 },
|
|
|
+ ],
|
|
|
+ deliveryStatus: [],
|
|
|
+ filterIndex: "-1",
|
|
|
};
|
|
|
},
|
|
|
- created() {},
|
|
|
+ filters: {
|
|
|
+ verifyStatusFilter(value) {
|
|
|
+ if (value == 0) {
|
|
|
+ return "未查看";
|
|
|
+ } else if (value == 10) {
|
|
|
+ return "已查看";
|
|
|
+ } else if (value == 20) {
|
|
|
+ return "已邀请面试";
|
|
|
+ } else if (value == 30) {
|
|
|
+ return "已接受面试";
|
|
|
+ } else if (value == 40) {
|
|
|
+ return "已拒绝面试";
|
|
|
+ } else if (value == 50) {
|
|
|
+ return "面试通过";
|
|
|
+ } else if (value == 60) {
|
|
|
+ return "不合适";
|
|
|
+ } else if (value == 70) {
|
|
|
+ return "未参加面试";
|
|
|
+ } else if (value == 80) {
|
|
|
+ return "已拒绝入职";
|
|
|
+ } else if (value == 90) {
|
|
|
+ return "已入职";
|
|
|
+ } else {
|
|
|
+ return "未知";
|
|
|
+ }
|
|
|
+ },
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ form: {
|
|
|
+ handler(val) {
|
|
|
+ console.log("form.status: " + val.status);
|
|
|
+ },
|
|
|
+ deep: true, //true 深度监听
|
|
|
+ },
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.handlegetApplyList();
|
|
|
+ this.getInterviewMethod();
|
|
|
+ this.getDeliveryStatus();
|
|
|
+ },
|
|
|
methods: {
|
|
|
- edit() {
|
|
|
+ getInterviewMethod() {
|
|
|
+ getDicData("interview_method").then((res) => {
|
|
|
+ console.log("interview_method", res.data);
|
|
|
+ // this.jobForm.educations = res.data;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ getDeliveryStatus() {
|
|
|
+ getDicData("delivery_status").then((res) => {
|
|
|
+ this.deliveryStatus = res.data;
|
|
|
+ console.log("delivery_status", res.data);
|
|
|
+ // this.jobForm.educations = res.data;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ handlegetApplyList() {
|
|
|
+ getApplyList({
|
|
|
+ pageNum: this.queryParams.pageNum,
|
|
|
+ pageSize: this.queryParams.pageSize,
|
|
|
+ postName: this.queryParams.postName,
|
|
|
+ })
|
|
|
+ .then((res) => {
|
|
|
+ console.log("getComPostList", res);
|
|
|
+ this.applyList = res.data.rows;
|
|
|
+ this.total = res.total;
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ this.$message.error(err.msg);
|
|
|
+ // console.log("register err", err);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ filterData(item) {
|
|
|
+ this.filterIndex = item.dictValue;
|
|
|
+ this.queryParams.postName = item.dictLabel;
|
|
|
+ this.handlegetApplyList();
|
|
|
+ },
|
|
|
+ edit(item) {
|
|
|
+ this.form = item;
|
|
|
+ console.log("this.form", this.form);
|
|
|
this.dialogVisible = true;
|
|
|
},
|
|
|
submit() {
|
|
@@ -101,6 +255,10 @@ export default {
|
|
|
console.log("err", err);
|
|
|
});
|
|
|
},
|
|
|
+ handleCurrentChange(val) {
|
|
|
+ this.handlegetApplyList();
|
|
|
+ console.log(`当前页: ${val}`);
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
@@ -164,12 +322,18 @@ export default {
|
|
|
}
|
|
|
.right {
|
|
|
.edit {
|
|
|
+ min-height: 12px;
|
|
|
font-size: 12px;
|
|
|
font-weight: 400;
|
|
|
color: #4aad78;
|
|
|
line-height: 17px;
|
|
|
margin-bottom: 27px;
|
|
|
- cursor: pointer;
|
|
|
+ span {
|
|
|
+ cursor: pointer;
|
|
|
+ & + span {
|
|
|
+ margin-left: 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
.bottom {
|
|
|
font-size: 12px;
|