flat: 企业审核
This commit is contained in:
@@ -1,42 +1,42 @@
|
||||
import request from '@/router/axios';
|
||||
|
||||
export const getList =
|
||||
(current, size, params) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/station/list',
|
||||
method: 'get',
|
||||
params: {
|
||||
...params,
|
||||
current,
|
||||
size,
|
||||
}
|
||||
})
|
||||
}
|
||||
(current, size, params) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/station/list',
|
||||
method: 'get',
|
||||
params: {
|
||||
...params,
|
||||
current,
|
||||
size,
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export const getDetail =
|
||||
(id) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/station/detail',
|
||||
method: 'get',
|
||||
params: {id}
|
||||
})
|
||||
}
|
||||
(id) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/station/detail',
|
||||
method: 'get',
|
||||
params: {id}
|
||||
})
|
||||
}
|
||||
|
||||
export const add =
|
||||
(row) => {
|
||||
return request(
|
||||
{url: '/api/jobslink-api/tenant/station/save', method: 'post', data: row})
|
||||
}
|
||||
(row) => {
|
||||
return request(
|
||||
{url: '/api/jobslink-api/tenant/station/save', method: 'post', data: row})
|
||||
}
|
||||
|
||||
export const update =
|
||||
(row) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/station/update',
|
||||
method: 'post',
|
||||
data: row
|
||||
})
|
||||
}
|
||||
export const getStation = () =>{
|
||||
(row) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/station/update',
|
||||
method: 'post',
|
||||
data: row
|
||||
})
|
||||
}
|
||||
export const getStation = () => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/station/find',
|
||||
method: 'get',
|
||||
@@ -54,7 +54,7 @@ export const StationDic =
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
// 工作站下拉
|
||||
// 工作站下拉
|
||||
export const StationFind =
|
||||
() => {
|
||||
return request({
|
||||
@@ -63,7 +63,7 @@ export const StationFind =
|
||||
})
|
||||
}
|
||||
|
||||
// 新增工作站
|
||||
// 新增工作站
|
||||
export const StationSave =
|
||||
(params) => {
|
||||
return request({
|
||||
@@ -72,7 +72,7 @@ export const StationSave =
|
||||
data: params
|
||||
})
|
||||
}
|
||||
// 新增工作站账号
|
||||
// 新增工作站账号
|
||||
export const stationSubmit =
|
||||
(params) => {
|
||||
return request({
|
||||
@@ -82,7 +82,7 @@ export const stationSubmit =
|
||||
})
|
||||
}
|
||||
|
||||
// 查看工作站账号
|
||||
// 查看工作站账号
|
||||
export const tuserDetail =
|
||||
(params) => {
|
||||
return request({
|
||||
@@ -92,7 +92,7 @@ export const tuserDetail =
|
||||
})
|
||||
}
|
||||
|
||||
// 修改站点信息
|
||||
// 修改站点信息
|
||||
export const stationModify =
|
||||
(params) => {
|
||||
return request({
|
||||
@@ -102,25 +102,30 @@ export const stationModify =
|
||||
})
|
||||
}
|
||||
|
||||
export const getEnterpriseList = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/company/allInviteCompany',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
export const getEnterpriseList = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/company/allInviteCompany',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
|
||||
export const saveEnterpriseItem = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/invite/save',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
export const getInvitationCodeList = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/invite/list',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
export const saveEnterpriseItem = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/invite/save',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
export const getInvitationCodeList = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/invite/list',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
|
||||
export const getInvitationStatusUpdate = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/invite/update',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
export const getInvitationStatusUpdate = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/invite/update',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
export const getInviteApproval = (params) => request({
|
||||
url: '/api/jobslink-api/tenant/invite/approval',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<basic-container>
|
||||
<avue-crud
|
||||
ref="crud"
|
||||
:table-loading="loading"
|
||||
@date-change="dateChange"
|
||||
@current-change="currentChange"
|
||||
@size-change="sizeChange"
|
||||
@@ -13,6 +14,7 @@
|
||||
@search-change="searchChange"
|
||||
@refresh-change="refreshChange"
|
||||
@search-reset="searchReset"
|
||||
@selection-change="selectionChange"
|
||||
>
|
||||
<template slot="menuLeft">
|
||||
<el-button
|
||||
@@ -20,7 +22,14 @@
|
||||
@click.stop="distributionCodeDialog = true; isEdit = false; inviteCodeForm = {}"
|
||||
type="primary"
|
||||
v-show="vaildData(permission.manage_station_inviteCode_edituser, false)"
|
||||
>新增用户</el-button>
|
||||
>新增用户
|
||||
</el-button>
|
||||
<el-button
|
||||
size="small"
|
||||
@click.stop="handleCheck"
|
||||
type="primary"
|
||||
>审核
|
||||
</el-button>
|
||||
</template>
|
||||
<template slot="menu" slot-scope="{row}">
|
||||
<el-button type="text" @click="rowUpdate(row)">编辑</el-button>
|
||||
@@ -43,9 +52,11 @@
|
||||
:visible.sync="distributionCodeDialog"
|
||||
append-to-body
|
||||
width="30%">
|
||||
<el-form :model="inviteCodeForm" :rules="inviteCodeRules" filterable ref="inviteCode" label-width="100px" class="demo-ruleForm">
|
||||
<el-form :model="inviteCodeForm" :rules="inviteCodeRules" filterable ref="inviteCode" label-width="100px"
|
||||
class="demo-ruleForm">
|
||||
<el-form-item label="企业名称:" prop="companyId">
|
||||
<el-select v-model="inviteCodeForm.inviteCompanyId" :disabled="isEdit" filterable placeholder="请选择企业" style="width: 260px" >
|
||||
<el-select v-model="inviteCodeForm.inviteCompanyId" :disabled="isEdit" filterable placeholder="请选择企业"
|
||||
style="width: 260px">
|
||||
<el-option
|
||||
v-for="item in enterpriseList"
|
||||
:key="item.id"
|
||||
@@ -54,17 +65,18 @@
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="绑定用户:" prop="realName" >
|
||||
<el-input style="width: 260px" v-model="inviteCodeForm.realName" placeholder="请输入姓名" ></el-input>
|
||||
<el-form-item label="绑定用户:" prop="realName">
|
||||
<el-input style="width: 260px" v-model="inviteCodeForm.realName" placeholder="请输入姓名"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="身份证:" prop="idNumber" >
|
||||
<el-input style="width: 260px" v-model="inviteCodeForm.idNumber" placeholder="请输入身份证" ></el-input>
|
||||
<el-form-item label="身份证:" prop="idNumber">
|
||||
<el-input style="width: 260px" v-model="inviteCodeForm.idNumber" placeholder="请输入身份证"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号:" prop="phone" >
|
||||
<el-input style="width: 260px" v-model="inviteCodeForm.phone" placeholder="请输入手机号" ></el-input>
|
||||
<el-form-item label="手机号:" prop="phone">
|
||||
<el-input style="width: 260px" v-model="inviteCodeForm.phone" placeholder="请输入手机号"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注:" prop="remarks" >
|
||||
<el-input type="textarea" style="width: 260px" v-model="inviteCodeForm.remarks" placeholder="请输入备注" ></el-input>
|
||||
<el-form-item label="备注:" prop="remarks">
|
||||
<el-input type="textarea" style="width: 260px" v-model="inviteCodeForm.remarks"
|
||||
placeholder="请输入备注"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
@@ -75,98 +87,126 @@
|
||||
</basic-container>
|
||||
</template>
|
||||
<script>
|
||||
import { mapGetters } from "vuex";
|
||||
import { check18IdCardNo, isExcel, isMobile } from "@/util/validate";
|
||||
import { deepClone } from "@/util/util";
|
||||
import {mapGetters} from "vuex";
|
||||
import {check18IdCardNo, isExcel, isMobile} from "@/util/validate";
|
||||
import {deepClone} from "@/util/util";
|
||||
import {
|
||||
getEnterpriseList,
|
||||
saveEnterpriseItem,
|
||||
getInvitationCodeList,
|
||||
getInvitationStatusUpdate
|
||||
getInvitationStatusUpdate,
|
||||
getInviteApproval
|
||||
} from "@/api/manage/station";
|
||||
import { Message } from "element-ui";
|
||||
import {Message} from "element-ui";
|
||||
import lodash from "lodash";
|
||||
import {recruitStatus} from "@/common/dic";
|
||||
import {Auditing} from "@/api/manage/mission";
|
||||
|
||||
const inviteCodeRules = {
|
||||
stationId: [
|
||||
{ required: true, message: '请选择企业', trigger: 'blur' }
|
||||
{required: true, message: '请选择企业', trigger: 'blur'}
|
||||
],
|
||||
realName: [
|
||||
{ required: true, message: '请输入名称', trigger: 'blur'}
|
||||
{required: true, message: '请输入名称', trigger: 'blur'}
|
||||
],
|
||||
phone: [
|
||||
{ required: true, message: '请输入手机号', trigger: 'blur', pattern: /^1[3-9]{1}\d{9}/}
|
||||
{required: true, message: '请输入手机号', trigger: 'blur', pattern: /^1[3-9]{1}\d{9}/}
|
||||
],
|
||||
idNumber: [
|
||||
{ required: true, message: '请输入身份证', trigger: 'blur', pattern: /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}[\dX]$/}
|
||||
{
|
||||
required: true,
|
||||
message: '请输入身份证',
|
||||
trigger: 'blur',
|
||||
pattern: /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}[\dX]$/
|
||||
}
|
||||
],
|
||||
}
|
||||
const curdOptions = {
|
||||
dateBtn: false,
|
||||
addBtn: false,
|
||||
tip: false,
|
||||
editBtn: false,
|
||||
delBtn: false,
|
||||
height: "auto",
|
||||
border: true,
|
||||
searchMenuSpan: 48,
|
||||
selection: true,
|
||||
index: true,
|
||||
indexLabel: "序号",
|
||||
column: [{
|
||||
label: '机构名称',
|
||||
prop: 'companyName',
|
||||
search: true,
|
||||
},{
|
||||
}, {
|
||||
label: '企业名称',
|
||||
prop: 'comname',
|
||||
search: true,
|
||||
},{
|
||||
}, {
|
||||
label: '绑定用户',
|
||||
prop: 'realName',
|
||||
// search: true,
|
||||
},
|
||||
// {
|
||||
// label: '邀请码',
|
||||
// prop: 'inviteCode',
|
||||
// search: true,
|
||||
// },
|
||||
// {
|
||||
// label: '邀请码',
|
||||
// prop: 'inviteCode',
|
||||
// search: true,
|
||||
// },
|
||||
|
||||
{
|
||||
label: '手机号',
|
||||
prop: 'phone',
|
||||
search: true,
|
||||
},{
|
||||
label: '身份证',
|
||||
prop: 'idNumber',
|
||||
search: true,
|
||||
formatter:(_,value,label) => value
|
||||
},
|
||||
// {
|
||||
// label: '备注',
|
||||
// prop: 'remarks',
|
||||
// },
|
||||
{
|
||||
label: '启用状态',
|
||||
prop: 'isEnabled',
|
||||
slot: true,
|
||||
width: 100
|
||||
}]
|
||||
{
|
||||
label: '手机号',
|
||||
prop: 'phone',
|
||||
search: true,
|
||||
}, {
|
||||
label: '身份证',
|
||||
prop: 'idNumber',
|
||||
search: true,
|
||||
formatter: (_, value, label) => value
|
||||
},
|
||||
// {
|
||||
// label: '备注',
|
||||
// prop: 'remarks',
|
||||
// },
|
||||
{
|
||||
label: '启用状态',
|
||||
prop: 'isEnabled',
|
||||
slot: true,
|
||||
width: 100
|
||||
}, {
|
||||
label: '审核状态',
|
||||
prop: 'reviewStatus',
|
||||
width: 100,
|
||||
type: 'select',
|
||||
dicData: recruitStatus,
|
||||
display: false,
|
||||
}]
|
||||
}
|
||||
const page = {
|
||||
pageSize: 10,
|
||||
currentPage: 1,
|
||||
total: 0,
|
||||
}
|
||||
const message = lodash.throttle(
|
||||
function (options) {
|
||||
Message(options);
|
||||
},
|
||||
3000,
|
||||
{trailing: false}
|
||||
);
|
||||
export default {
|
||||
name: "manage_station_inviteCode",
|
||||
data(){
|
||||
data() {
|
||||
return {
|
||||
distributionCodeDialog: false,
|
||||
inviteCodeRules: Object.assign({}, inviteCodeRules),
|
||||
enterpriseList: [], // 企业列表
|
||||
inviteCodeForm: {},
|
||||
inviteCodeList:[],
|
||||
inviteCodeList: [],
|
||||
selectionList: [],
|
||||
option: Object.assign({}, curdOptions),
|
||||
page: Object.assign({}, page),
|
||||
searchData: {},
|
||||
isEdit: false,
|
||||
loading: false,
|
||||
}
|
||||
},
|
||||
activated() {
|
||||
@@ -175,7 +215,73 @@ export default {
|
||||
computed: {
|
||||
...mapGetters(["permission"]),
|
||||
},
|
||||
methods:{
|
||||
methods: {
|
||||
handleCheck() {
|
||||
let self = this
|
||||
if (this.selectionList.length < 1) {
|
||||
message({
|
||||
type: "warning",
|
||||
message: "请至少选择一条数据",
|
||||
});
|
||||
return;
|
||||
}
|
||||
let idList = this.selectionList.filter((item) => item.reviewStatus === 0).map((v) => v.id)
|
||||
if (idList.length == 0) {
|
||||
this.$message.error("只能提交【审核中】的任务");
|
||||
} else {
|
||||
let h = this.$createElement;
|
||||
this.$prompt(
|
||||
h("p", {style: "color: #F56C6C"}, "一旦驳回无法进行后续操作"),
|
||||
"请核对招聘信息后再进行审核通过",
|
||||
{
|
||||
distinguishCancelAndClose: true,
|
||||
confirmButtonText: "通 过",
|
||||
cancelButtonText: "驳 回",
|
||||
type: "warning",
|
||||
center: true,
|
||||
inputType: "textarea",
|
||||
inputPlaceholder: "备注驳回原因",
|
||||
beforeClose: function (action, instance, done) {
|
||||
if (action === 'cancel') {
|
||||
if (!instance.inputValue) {
|
||||
return this.$message({
|
||||
type: "info",
|
||||
message: "请输入驳回原因!",
|
||||
});
|
||||
}
|
||||
self.handelFetchAuditing(idList, 9, instance.inputValue, "成功驳回, 操作成功!").then(() => done())
|
||||
} else if (action === 'confirm') {
|
||||
self.handelFetchAuditing(idList, 1, instance.inputValue).then(() => done())
|
||||
} else {
|
||||
done()
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
},
|
||||
handelFetchAuditing(idList, reviewState, msg, message) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let arr = idList.map((item) => ({
|
||||
id: item,
|
||||
reviewStatus: reviewState,
|
||||
reviewMsg: msg || '',
|
||||
}))
|
||||
this.loading = true;
|
||||
getInviteApproval(arr).then(() => {
|
||||
this.loading = false;
|
||||
this.onLoad();
|
||||
this.$message({
|
||||
type: message ? "info" : "success",
|
||||
message: message || "审核通过,操作成功!",
|
||||
});
|
||||
resolve()
|
||||
}).catch(() => {
|
||||
this.loading = false;
|
||||
reject()
|
||||
});
|
||||
})
|
||||
},
|
||||
rowUpdate(row) {
|
||||
this.isEdit = true
|
||||
this.distributionCodeDialog = true
|
||||
@@ -190,8 +296,8 @@ export default {
|
||||
const h = this.$createElement;
|
||||
this.$confirm(
|
||||
h("div", null, [
|
||||
h("p", { style: "font-size: 16px" }, "您确定要删除此消息吗? "),
|
||||
h("p", { style: "color: red" }, "一旦删除则无法找回"),
|
||||
h("p", {style: "font-size: 16px"}, "您确定要删除此消息吗? "),
|
||||
h("p", {style: "color: red"}, "一旦删除则无法找回"),
|
||||
]),
|
||||
{
|
||||
type: "warning",
|
||||
@@ -202,7 +308,7 @@ export default {
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
return getInvitationStatusUpdate({ id: row.id, isDeleted: 1});
|
||||
return getInvitationStatusUpdate({id: row.id, isDeleted: 1});
|
||||
})
|
||||
.then(() => {
|
||||
this.$message({
|
||||
@@ -211,7 +317,11 @@ export default {
|
||||
});
|
||||
this.refreshChange();
|
||||
})
|
||||
.catch(() => { });
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
selectionChange(list) {
|
||||
this.selectionList = list;
|
||||
},
|
||||
async onLoad() {
|
||||
this.getInvitationCode()
|
||||
@@ -224,15 +334,15 @@ export default {
|
||||
},
|
||||
async changeEnabled(row) {
|
||||
const isEnabled = row.isEnabled ? 0 : 1
|
||||
let params = { id: row.id, isEnabled }
|
||||
let params = {id: row.id, isEnabled}
|
||||
console.log(params)
|
||||
let resData = await getInvitationStatusUpdate(params)
|
||||
if(resData.data.code === 200){
|
||||
if (resData.data.code === 200) {
|
||||
this.$message.success('状态修改成功');
|
||||
this.getInvitationCode()
|
||||
}
|
||||
},
|
||||
refreshChange(){
|
||||
refreshChange() {
|
||||
this.getInvitationCode('refresh')
|
||||
},
|
||||
searchReset() {
|
||||
@@ -245,7 +355,7 @@ export default {
|
||||
},
|
||||
getInvitationCode(type = 'add') {
|
||||
return new Promise(async (resolve, reject) => {
|
||||
if(type === 'refresh') {
|
||||
if (type === 'refresh') {
|
||||
this.page.currentPage = 1
|
||||
}
|
||||
let params = {
|
||||
@@ -253,11 +363,13 @@ export default {
|
||||
current: this.page.currentPage,
|
||||
size: this.page.pageSize,
|
||||
}
|
||||
this.loading = true
|
||||
let resData = await getInvitationCodeList(params)
|
||||
if(resData.data.code === 200){
|
||||
const { size, records, current, total } = resData.data.data
|
||||
this.loading = false
|
||||
if (resData.data.code === 200) {
|
||||
const {size, records, current, total} = resData.data.data
|
||||
this.inviteCodeList = records
|
||||
this.page = { pageSize: size, currentPage: current, total }
|
||||
this.page = {pageSize: size, currentPage: current, total}
|
||||
resolve()
|
||||
} else {
|
||||
reject()
|
||||
@@ -272,13 +384,13 @@ export default {
|
||||
companyName
|
||||
}
|
||||
let resData = null
|
||||
if( this.isEdit ) {
|
||||
if (this.isEdit) {
|
||||
resData = await getInvitationStatusUpdate(params)
|
||||
} else {
|
||||
resData = await saveEnterpriseItem(params)
|
||||
}
|
||||
if(resData.data.code === 200){
|
||||
const { code, data } = resData.data
|
||||
if (resData.data.code === 200) {
|
||||
const {code, data} = resData.data
|
||||
this.distributionCodeDialog = false
|
||||
this.getInvitationCode('refresh')
|
||||
this.$message.success('提交成功');
|
||||
@@ -289,8 +401,8 @@ export default {
|
||||
async getList() {
|
||||
let params = {}
|
||||
let resData = await getEnterpriseList(params)
|
||||
if(resData.data.code === 200){
|
||||
const { code, data } = resData.data
|
||||
if (resData.data.code === 200) {
|
||||
const {code, data} = resData.data
|
||||
this.enterpriseList = data
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user