入职流程完成
This commit is contained in:
@@ -194,7 +194,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {addUser, deptTreeSelect, listUser} from "@/api/system/user";
|
||||
import {addUser, deptTreeSelect, listUser, tempRole} from "@/api/system/user";
|
||||
import {addOnboarding} from "@/api/oa/onboarding";
|
||||
|
||||
export default {
|
||||
@@ -227,34 +227,28 @@ export default {
|
||||
});
|
||||
},
|
||||
/** 新增入职 */
|
||||
//TODO status:0 现在新增后账号立马开通不走流程
|
||||
saveFormToOnboarding(){
|
||||
this.loading=true;
|
||||
let userForm = {
|
||||
userName: this.form.userName,
|
||||
nickName: this.form.nickName,
|
||||
phonenumber: this.form.phonenumber,
|
||||
email: this.form.email,
|
||||
address: this.form.address,
|
||||
password: "123456",
|
||||
sex:this.form.sex,
|
||||
userType:"sys_user",
|
||||
deptId:this.form.deptId,
|
||||
avatar:this.form.idPhoto,
|
||||
status:0,
|
||||
idCard:this.form.idCard,
|
||||
bankCard:this.form.bankCard,
|
||||
}
|
||||
// 添加入职后添加用户账号
|
||||
addUser(userForm).then(response => {
|
||||
userForm.password = null;
|
||||
listUser(userForm).then(response => {
|
||||
this.form.userId = response.rows[0].userId;
|
||||
addOnboarding(this.form).then(response => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.loading = false;
|
||||
this.goBack()
|
||||
let userId = response.rows[0].userId;
|
||||
this.form.userId = userId
|
||||
tempRole(userId).then(response => {
|
||||
addOnboarding(this.form).then(response => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.loading = false;
|
||||
this.goBack()
|
||||
})
|
||||
})
|
||||
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
@@ -38,21 +38,11 @@
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="toAddOnboarding"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['system:onboarding:add']"
|
||||
>新增</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="success"
|
||||
plain
|
||||
icon="el-icon-edit"
|
||||
size="mini"
|
||||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['system:onboarding:edit']"
|
||||
>修改</el-button>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="danger"
|
||||
@@ -83,61 +73,12 @@
|
||||
<el-table-column label="姓名" align="center" prop="nickName"/>
|
||||
<el-table-column label="入职日期" align="center" prop="joiningDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.joiningDate, '{y}-{m}-{d}') }}</span>
|
||||
<span>{{scope.row.joiningDate!==null?scope.row.joiningDate:'未完成审批流程'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="试用结束" align="center" prop="confirmDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.probationPeriodEnd, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="入职资料" align="center" prop="documentsSubmitted">
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.documentsSubmitted===1?'success':'warning'">{{ scope.row.documentsSubmitted===1?'完成':'未完成' }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="入职培训" align="center" prop="orientationCompleted" >
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.orientationCompleted===1?'success':'warning'">{{ scope.row.orientationCompleted===1?'完成':'未完成' }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="入职状态" align="center" prop="joiningStatus">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.joining_status" :value="scope.row.joiningStatus"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="完成面试" align="center" prop="recruitmentCompleted" >
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.recruitmentCompleted===1?'success':'warning'">{{ scope.row.recruitmentCompleted===1?'完成':'未完成' }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="Offer发放" align="center" prop="offerIssued" >
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.offerIssued===1?'success':'warning'">{{ scope.row.offerIssued===1?'完成':'未完成' }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="签署合同" align="center" prop="contractSigned" >
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.contractSigned===1?'success':'warning'">{{ scope.row.contractSigned===1?'完成':'未完成' }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="条件准备" align="center" prop="workConditionsPrepared" >
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="scope.row.workConditionsPrepared===1?'success':'warning'">{{ scope.row.workConditionsPrepared===1?'完成':'未完成' }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="学历" align="center" prop="highestDegree" />
|
||||
<el-table-column label="备注" align="center" prop="remark" />
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['system:onboarding:edit']"
|
||||
>完善信息</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
@@ -159,54 +100,20 @@
|
||||
|
||||
<!-- 添加或修改入职管理对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="用户ID (外键)" prop="userId">
|
||||
<el-input v-model="form.userId" placeholder="请输入用户ID (外键)" />
|
||||
<el-form ref="form" :model="form" :rules="rules">
|
||||
<el-form-item label="输入新员工姓名" prop="nickName">
|
||||
<el-input v-model="form.nickName" placeholder="请输入新员工姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="入职日期" prop="joiningDate">
|
||||
<el-date-picker clearable
|
||||
v-model="form.joiningDate"
|
||||
type="datetime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="请选择入职日期">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="试用期结束日期" prop="probationPeriodEnd">
|
||||
<el-date-picker clearable
|
||||
v-model="form.probationPeriodEnd"
|
||||
type="datetime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="请选择试用期结束日期">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="直属经理ID" prop="managerId">
|
||||
<el-input v-model="form.managerId" placeholder="请输入直属经理ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否提交入职资料" prop="documentsSubmitted">
|
||||
<el-input v-model="form.documentsSubmitted" placeholder="请输入是否提交入职资料" />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否完成入职培训" prop="orientationCompleted">
|
||||
<el-input v-model="form.orientationCompleted" placeholder="请输入是否完成入职培训" />
|
||||
</el-form-item>
|
||||
<el-form-item label="入职状态(pending,completed,onboarding)" prop="joiningStatus">
|
||||
<el-select v-model="form.joiningStatus" placeholder="请选择入职状态(pending,completed,onboarding)">
|
||||
<el-option
|
||||
v-for="dict in dict.type.joining_status"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="parseInt(dict.value)"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="最高学历" prop="highestDegree">
|
||||
<el-input v-model="form.highestDegree" placeholder="请输入最高学历" />
|
||||
<el-form-item label="输入新员工账号" prop="userName">
|
||||
<el-input v-model="form.userName" placeholder="请输入新员工账号,建议使用员工拼音" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
|
||||
<el-input v-model="form.remark" placeholder="请输入备注内容" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button :loading="buttonLoading" type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="saveFormToOnboarding">确 定</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
@@ -215,6 +122,7 @@
|
||||
|
||||
<script>
|
||||
import { listOnboarding, getOnboarding, delOnboarding, addOnboarding, updateOnboarding } from "@/api/oa/onboarding";
|
||||
import {addUser, listUser, tempRole} from "@/api/system/user";
|
||||
|
||||
export default {
|
||||
name: "Onboarding",
|
||||
@@ -245,75 +153,18 @@ export default {
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
idPhoto: undefined,
|
||||
userId: undefined,
|
||||
joiningDate: undefined,
|
||||
probationPeriodEnd: undefined,
|
||||
managerId: undefined,
|
||||
documentsSubmitted: undefined,
|
||||
orientationCompleted: undefined,
|
||||
joiningStatus: undefined,
|
||||
recruitmentCompleted: undefined,
|
||||
offerIssued: undefined,
|
||||
contractSigned: undefined,
|
||||
materialsPrepared: undefined,
|
||||
trainingCompleted: undefined,
|
||||
workConditionsPrepared: undefined,
|
||||
highestDegree: undefined,
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
onboardingId: [
|
||||
{ required: true, message: "入职记录ID不能为空", trigger: "blur" }
|
||||
userName: [
|
||||
{ required: true, message: "系统账号不能为空", trigger: "blur" }
|
||||
],
|
||||
idPhoto: [
|
||||
{ required: true, message: "证件照不能为空", trigger: "blur" }
|
||||
nickName: [
|
||||
{ required: true, message: "姓名不能为空", trigger: "blur" }
|
||||
],
|
||||
userId: [
|
||||
{ required: true, message: "用户ID (外键)不能为空", trigger: "blur" }
|
||||
],
|
||||
joiningDate: [
|
||||
{ required: true, message: "入职日期不能为空", trigger: "blur" }
|
||||
],
|
||||
probationPeriodEnd: [
|
||||
{ required: true, message: "试用期结束日期不能为空", trigger: "blur" }
|
||||
],
|
||||
managerId: [
|
||||
{ required: true, message: "直属经理ID不能为空", trigger: "blur" }
|
||||
],
|
||||
documentsSubmitted: [
|
||||
{ required: true, message: "是否提交入职资料不能为空", trigger: "blur" }
|
||||
],
|
||||
orientationCompleted: [
|
||||
{ required: true, message: "是否完成入职培训不能为空", trigger: "blur" }
|
||||
],
|
||||
joiningStatus: [
|
||||
{ required: true, message: "入职状态(pending,completed,onboarding)不能为空", trigger: "change" }
|
||||
],
|
||||
recruitmentCompleted: [
|
||||
{ required: true, message: "是否完成招聘与面试不能为空", trigger: "change" }
|
||||
],
|
||||
offerIssued: [
|
||||
{ required: true, message: "是否已发放Offer不能为空", trigger: "change" }
|
||||
],
|
||||
contractSigned: [
|
||||
{ required: true, message: "是否已签署合同不能为空", trigger: "change" }
|
||||
],
|
||||
materialsPrepared: [
|
||||
{ required: true, message: "入职材料/工作准备是否完成不能为空", trigger: "change" }
|
||||
],
|
||||
trainingCompleted: [
|
||||
{ required: true, message: "是否完成入职培训不能为空", trigger: "change" }
|
||||
],
|
||||
workConditionsPrepared: [
|
||||
{ required: true, message: "是否完成工作条件准备不能为空", trigger: "change" }
|
||||
],
|
||||
highestDegree: [
|
||||
{ required: true, message: "最高学历不能为空", trigger: "blur" }
|
||||
],
|
||||
|
||||
}
|
||||
};
|
||||
},
|
||||
@@ -324,7 +175,6 @@ export default {
|
||||
|
||||
/** 新增入职员工界面 */
|
||||
toAddOnboarding(){
|
||||
|
||||
this.$router.push({
|
||||
path: '/people/addOnboarding',
|
||||
})
|
||||
@@ -334,7 +184,6 @@ export default {
|
||||
this.loading = true;
|
||||
listOnboarding(this.queryParams).then(response => {
|
||||
this.onboardingList = response.rows;
|
||||
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
@@ -350,19 +199,6 @@ export default {
|
||||
onboardingId: undefined,
|
||||
idPhoto: undefined,
|
||||
userId: undefined,
|
||||
joiningDate: undefined,
|
||||
probationPeriodEnd: undefined,
|
||||
managerId: undefined,
|
||||
documentsSubmitted: undefined,
|
||||
orientationCompleted: undefined,
|
||||
joiningStatus: undefined,
|
||||
recruitmentCompleted: undefined,
|
||||
offerIssued: undefined,
|
||||
contractSigned: undefined,
|
||||
materialsPrepared: undefined,
|
||||
trainingCompleted: undefined,
|
||||
workConditionsPrepared: undefined,
|
||||
highestDegree: undefined,
|
||||
createBy: undefined,
|
||||
createTime: undefined,
|
||||
updateBy: undefined,
|
||||
@@ -392,36 +228,34 @@ export default {
|
||||
handleAdd() {
|
||||
this.reset();
|
||||
this.open = true;
|
||||
this.title = "添加入职管理";
|
||||
this.title = "添加入职账户";
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.$router.push('/people/updateOnboarding/'+row.onboardingId);
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
this.$refs["form"].validate(valid => {
|
||||
if (valid) {
|
||||
this.buttonLoading = true;
|
||||
if (this.form.onboardingId != null) {
|
||||
updateOnboarding(this.form).then(response => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
}).finally(() => {
|
||||
this.buttonLoading = false;
|
||||
});
|
||||
} else {
|
||||
|
||||
/** 新增入职 */
|
||||
saveFormToOnboarding(){
|
||||
let userForm = {
|
||||
userName: this.form.userName,
|
||||
password: "123456",
|
||||
userType:"sys_user",
|
||||
status:0,
|
||||
nickName:this.form.nickName,
|
||||
}
|
||||
// 添加入职后添加用户账号
|
||||
addUser(userForm).then(response => {
|
||||
userForm.password = null;
|
||||
listUser(userForm).then(response => {
|
||||
let userId = response.rows[0].userId;
|
||||
this.form.userId = userId
|
||||
tempRole(userId).then(response => {
|
||||
addOnboarding(this.form).then(response => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.reset()
|
||||
this.getList();
|
||||
}).finally(() => {
|
||||
this.buttonLoading = false;
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
|
||||
Reference in New Issue
Block a user