取消applyStatus/whetherSetSignPwd两个接口

This commit is contained in:
dengxin
2024-02-04 16:11:12 +08:00
parent 7c9769466f
commit d4dda18720
8 changed files with 978 additions and 1018 deletions

View File

@@ -1,136 +1,128 @@
import request from '@/router/axios'; import request from "@/router/axios";
import { getToken } from '@/util/auth' import { getToken } from "@/util/auth";
//申请开通电子签章 //申请开通电子签章
export const apply = export const apply = (data) => {
(data) => { return request({
return request({ url: `jobslink-api/doc/docCompanySeal/signseal/apply`,
method: "post",
url: `jobslink-api/doc/docCompanySeal/signseal/apply`, data: data,
method: 'post', });
data:data };
})
}
//电子合同状态 //电子合同状态
export const applyStatus = export const applyStatus = () => {
() => { return request({
return request({ url: "/api/jobslink-api/doc/company/cert/company/status",
url: '/api/jobslink-api/doc/company/cert/company/status', method: "get",
method: 'get', params: {},
params: {} });
}) };
} //电子合同管理列表
//电子合同管理列表 export const tenantList = (current, size, params) =>
export const tenantList = request({
(current, size, params) =>request({ url: "/api/jobslink-api/doc/contract/tenant/list",
url: '/api/jobslink-api/doc/contract/tenant/list', method: "get",
method: 'get',
params: { params: {
...params, ...params,
current, current,
size, size,
}, },
headers:{ headers: {
'content-type':'application/pdf' "content-type": "application/pdf",
} },
}) });
//企业-录用人员-已录用中查看合同 //企业-录用人员-已录用中查看合同
export const viewContractImg = export const viewContractImg = (userId, missionsNo) => {
(userId,missionsNo) => {
return request({ return request({
url: '/api/jobslink-api/doc/contract/mission/viewContract', url: "/api/jobslink-api/doc/contract/mission/viewContract",
method: 'get', method: "get",
params: { params: {
userId:userId, userId: userId,
missionsNo:missionsNo missionsNo: missionsNo,
} },
}) });
} };
//企业-录用人员-已录用中是否显示查看合同 //企业-录用人员-已录用中是否显示查看合同
export const isGenerateContract = export const isGenerateContract = (userId, missionsNo) => {
(userId,missionsNo) => {
return request({ return request({
url: '/api/jobslink-api/doc/contract/isGenerateContract', url: "/api/jobslink-api/doc/contract/isGenerateContract",
method: 'get', method: "get",
params: { params: {
userId:userId, userId: userId,
missionsNo:missionsNo missionsNo: missionsNo,
} },
}) });
} };
//企业端校验印章密码是否正确 //企业端校验印章密码是否正确
export const certCheckPass = export const certCheckPass = (pass) => {
(pass) => {
return request({ return request({
url: '/api/jobslink-api/doc/company/cert/checkPass', url: "/api/jobslink-api/doc/company/cert/checkPass",
method: 'get', method: "get",
params: { params: {
pass:pass pass: pass,
} },
}) });
} };
//获取手机短信验证码 //获取手机短信验证码
export const getCode=(mobile)=>{ export const getCode = (mobile) => {
return request({ return request({
url:'/api/jobslink-api/doc/company/cert/resetPass/sendValidate', url: "/api/jobslink-api/doc/company/cert/resetPass/sendValidate",
method:'get', method: "get",
params:{mobile} params: { mobile },
}) });
} };
//重置密码 //重置密码
export const resetPwd=(mobile,password,code)=>{ export const resetPwd = (mobile, password, code) => {
return request({ return request({
headers: {'SCaptcha-Key': mobile, 'SCaptcha-Code': code}, headers: { "SCaptcha-Key": mobile, "SCaptcha-Code": code },
url:'/api/jobslink-api/doc/company/cert/resetPass', url: "/api/jobslink-api/doc/company/cert/resetPass",
method:'post', method: "post",
params:{mobile,password,code} params: { mobile, password, code },
}) });
} };
//查看签章图片 //查看签章图片
export const viewSignature=()=>{ export const viewSignature = () => {
return request({ return request({
url:'/api/jobslink-api/doc/docCompanySeal/company/details', url: "/api/jobslink-api/doc/docCompanySeal/company/details",
method:'get', method: "get",
}) });
} };
//查看电子合同 //查看电子合同
export const viewLetter=(userId,missionsNo)=>{ export const viewLetter = (userId, missionsNo) => {
return request({ return request({
url:'/api/jobslink-api/doc/contract/mission/viewContract', url: "/api/jobslink-api/doc/contract/mission/viewContract",
method:'get', method: "get",
params:{userId,missionsNo} params: { userId, missionsNo },
}) });
} };
//下载电子合同 //下载电子合同
export const downLetter = export const downLetter = (id) => {
(id) => { return `jobslink-api/doc/contract/download/${id}?Jobslink-Auth=${getToken()}`;
return `jobslink-api/doc/contract/download/${id}?Jobslink-Auth=${getToken()}` };
}
//判断企业是否设置签章密码 //判断企业是否设置签章密码
export const whetherSetSignPwd=()=>{ export const whetherSetSignPwd = () => {
return request({ return request({
url:'/api/jobslink-api/doc/company/cert/hasPass', url: "/api/jobslink-api/doc/company/cert/hasPass",
method:'get' method: "get",
}) });
} };
//查看pdf //查看pdf
export const viewPdf=(url)=>{ export const viewPdf = (url) => {
console.log(url) console.log(url);
return request({ return request({
url:url, url: url,
method:'get' method: "get",
}) });
} };
//批量下载合同 //批量下载合同
export const mutiDownPdf=(ids)=> { export const mutiDownPdf = (ids) => {
return `jobslink-api/doc/contract/contract/bulkDownload?ids=${ids}&Jobslink-Auth=${getToken()}` return `jobslink-api/doc/contract/contract/bulkDownload?ids=${ids}&Jobslink-Auth=${getToken()}`;
} };

View File

@@ -92,7 +92,7 @@
}, },
mounted() { mounted() {
this.init(); this.init();
this.getSignatureStatus();//获取企业是否设置了签章密码 // this.getSignatureStatus();//获取企业是否设置了签章密码
}, },
activated() { }, activated() { },
computed: { computed: {

View File

@@ -91,6 +91,7 @@
</el-row> </el-row>
</template> </template>
<script> <script>
import { import {
getList, getList,

File diff suppressed because it is too large Load Diff

View File

@@ -1,63 +1,44 @@
<template> <template>
<basic-container> <basic-container>
<el-drawer <el-drawer title="录用人员" append-to-body :visible.sync="drawer" size="80%" class="drawer" :before-close="drawerClose">
title="录用人员" <!-- <div class="tipsWrap" v-show="getUserConfig.insuranceOn == 1">录用人员说明:不在保期的人员,不可以录用,请先到 “商保管理" 模块申请投保</div> -->
append-to-body <div class="tipsWrap1" v-show="getUserConfig.insuranceOn == 1 && employState == 1">
:visible.sync="drawer" 说明录用成功后平台自动计算保期任务开始前一天自动投保确保录用人员任务期内均有商保</div>
size="80%" <div class="tipsWrap2" v-show="getUserConfig.insuranceOn == 1 && employState == 2">
class="drawer" 说明录用人员取消后投保可自动取消任务开始前一天20:00以后不再支持取消操作</div>
:before-close="drawerClose" <avue-crud :option="option" :table-loading="loading" :data="data" :page.sync="page" ref="crud" v-model="obj"
> :permission="permissionList" @search-change="searchChange" @search-reset="searchReset"
<!-- <div class="tipsWrap" v-show="getUserConfig.insuranceOn == 1">录用人员说明:不在保期的人员,不可以录用,请先到 “商保管理" 模块申请投保</div> --> @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
<div class="tipsWrap1" v-show="getUserConfig.insuranceOn == 1 && employState == 1">说明录用成功后平台自动计算保期任务开始前一天自动投保确保录用人员任务期内均有商保</div> @refresh-change="refreshChange" class="customPage" @on-load="onLoad">
<div class="tipsWrap2" v-show="getUserConfig.insuranceOn == 1 && employState == 2">说明录用人员取消后投保可自动取消任务开始前一天20:00以后不再支持取消操作</div>
<avue-crud
:option="option"
:table-loading="loading"
:data="data"
:page.sync="page"
ref="crud"
v-model="obj"
:permission="permissionList"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@current-change="currentChange"
@size-change="sizeChange"
@refresh-change="refreshChange"
class="customPage"
@on-load="onLoad"
>
<!--自定义列--> <!--自定义列-->
<template slot="period" slot-scope="{row}"> <template slot="period" slot-scope="{row}">
<span v-if="row.startTime && row.endTime"> <span v-if="row.startTime && row.endTime">
<el-tag type="warning" v-if="row.serviceStatus==0">{{dateFormat(row.startTime)}}-{{dateFormat(row.endTime)}}</el-tag> <el-tag type="warning"
<el-tag type="success" v-if="row.serviceStatus==1">{{dateFormat(row.startTime)}}-{{dateFormat(row.endTime)}}</el-tag> v-if="row.serviceStatus == 0">{{ dateFormat(row.startTime) }}-{{ dateFormat(row.endTime) }}</el-tag>
<el-tag type="danger" v-if="row.serviceStatus==2">{{dateFormat(row.startTime)}}-{{dateFormat(row.endTime)}}</el-tag> <el-tag type="success"
<el-tag type="info" v-if="row.serviceStatus==3">{{dateFormat(row.startTime)}}-{{dateFormat(row.endTime)}}</el-tag> v-if="row.serviceStatus == 1">{{ dateFormat(row.startTime) }}-{{ dateFormat(row.endTime) }}</el-tag>
</span> <el-tag type="danger"
</template> v-if="row.serviceStatus == 2">{{ dateFormat(row.startTime) }}-{{ dateFormat(row.endTime) }}</el-tag>
<template slot="serviceStatus" slot-scope="{row}" > <el-tag type="info"
<span> v-if="row.serviceStatus == 3">{{ dateFormat(row.startTime) }}-{{ dateFormat(row.endTime) }}</el-tag>
<el-tag type="warning" v-if="row.serviceStatus==0">未生效</el-tag> </span>
<el-tag type="success" v-if="row.serviceStatus==1">生效中</el-tag> </template>
<el-tag type="danger" v-if="row.serviceStatus==2">即将失效</el-tag> <template slot="serviceStatus" slot-scope="{row}">
<el-tag type="info" v-if="row.serviceStatus==3">已失效</el-tag> <span>
</span> <el-tag type="warning" v-if="row.serviceStatus == 0">未生效</el-tag>
<el-tag type="success" v-if="row.serviceStatus == 1">生效中</el-tag>
<el-tag type="danger" v-if="row.serviceStatus == 2">即将失效</el-tag>
<el-tag type="info" v-if="row.serviceStatus == 3">已失效</el-tag>
</span>
</template> </template>
<template slot="missionDate" slot-scope="{ row }"> <template slot="missionDate" slot-scope="{ row }">
<div>{{ row.startDate }}{{ row.endDate }}</div> <div>{{ row.startDate }}{{ row.endDate }}</div>
</template> </template>
<template slot="resume" slot-scope="{ row }"> <template slot="resume" slot-scope="{ row }">
<div> <div>
<el-button <el-button type="text" size="mini" @click="$refs.resume.openDialog(row)"
type="text" v-if="row.userId && row.userId !== '0'">查看简历</el-button>
size="mini"
@click="$refs.resume.openDialog(row)"
v-if="row.userId && row.userId !== '0'"
>查看简历</el-button
>
<div v-else>暂无简历</div> <div v-else>暂无简历</div>
</div> </div>
</template> </template>
@@ -78,24 +59,14 @@
></el-option> ></el-option>
</el-select>--> </el-select>-->
<el-radio-group v-model="query.status" @change="radioButtonChange()"> <el-radio-group v-model="query.status" @change="radioButtonChange()">
<el-radio-button <el-radio-button v-for="(item, key, index) in personType" :key="index" :label="item.value"
v-for="(item, key, index) in personType" :disabled="personTypeDisabledFlag">{{ item.label }}</el-radio-button>
:key="index"
:label="item.value"
:disabled="personTypeDisabledFlag"
>{{ item.label }}</el-radio-button
>
</el-radio-group> </el-radio-group>
</template> </template>
<!--/自定义搜索--> <!--/自定义搜索-->
<div slot="menu" slot-scope="{ row }"> <div slot="menu" slot-scope="{ row }">
<el-button <el-button type="text" size="mini" @click="rowEmploy(row)"
type="text" v-show="employState === 1 && status === 1">录用</el-button>
size="mini"
@click="rowEmploy(row)"
v-show="employState === 1 && status === 1"
>录用</el-button
>
<!-- <el-popover v-show="employState === 1 && status === 1 && row.effect" <!-- <el-popover v-show="employState === 1 && status === 1 && row.effect"
placement="top-start" placement="top-start"
title="提示:" title="提示:"
@@ -106,20 +77,10 @@
> >
<el-button type="text" size="mini" slot="reference" class="selectBtn">录用</el-button> <el-button type="text" size="mini" slot="reference" class="selectBtn">录用</el-button>
</el-popover> --> </el-popover> -->
<el-button <el-button type="text" size="mini" @click="rowDel(row)"
type="text" v-show="employState === 2 && status === 1">取消</el-button>
size="mini" <el-button type="text" size="mini" @click="rowCheck(row)"
@click="rowDel(row)" v-show="employState === 2 && status === 1 && companyContractOn == 1">查看合同</el-button>
v-show="employState === 2 && status === 1"
>取消</el-button
>
<el-button
type="text"
size="mini"
@click="rowCheck(row)"
v-show="employState === 2 && status === 1 && companyContractOn==1"
>查看合同</el-button
>
</div> </div>
<!-- <div slot="menu" slot-scope="{ row }" v-else-if="getUserConfig.insuranceOn == 0"> <!-- <div slot="menu" slot-scope="{ row }" v-else-if="getUserConfig.insuranceOn == 0">
<el-button <el-button
@@ -147,15 +108,8 @@
<!--/--> <!--/-->
<!--自定义按钮--> <!--自定义按钮-->
<template slot="menuLeft"> <template slot="menuLeft">
<el-button <el-button type="primary" size="small" :disabled="!selectionList.length" icon="el-icon-plus"
type="primary" @click="handleEmploy" v-show="employState === 1 && status === 1">批量录用</el-button>
size="small"
:disabled="!selectionList.length"
icon="el-icon-plus"
@click="handleEmploy"
v-show="employState === 1 && status === 1"
>批量录用</el-button
>
<!-- <el-button <!-- <el-button
type="primary" type="primary"
size="small" size="small"
@@ -166,71 +120,63 @@
>批量取消</el-button >批量取消</el-button
> --> > -->
</template> </template>
<template v-slot:cardNumber="{row}"> <template v-slot:cardNumber="{ row }">
<span>{{idNumberDDesensitization(row.cardNumber)}}</span> <span>{{ idNumberDDesensitization(row.cardNumber) }}</span>
</template> </template>
</avue-crud> </avue-crud>
<el-dialog <el-dialog title="" :visible.sync="dialogVisible" width="35%" :modal=false>
title=""
:visible.sync="dialogVisible"
width="35%"
:modal=false
>
<div> <div>
<img class="" :src="'data:image/png;base64,'+imgStr" width="100%"/> <img class="" :src="'data:image/png;base64,' + imgStr" width="100%" />
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button> <el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="downLoadContract">下载合同</el-button> <el-button type="primary" @click="downLoadContract">下载合同</el-button>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog <el-dialog title="" :visible.sync="dialogVisible1" width="30%" :modal=false>
title=""
:visible.sync="dialogVisible1"
width="30%"
:modal=false
>
<div> <div>
<p style="text-align:center; font-size:16px">您选择<span class="employ-employNum-count">{{employNum}}</span>人准备录用请输入密码并确定录用</p> <p style="text-align:center; font-size:16px">您选择<span
<el-form :model="pwdForm" ref="pwdForm" :rules="pwdFormRules"> class="employ-employNum-count">{{ employNum }}</span>人准备录用请输入密码并确定录用</p>
<el-form-item <el-form :model="pwdForm" ref="pwdForm" :rules="pwdFormRules">
label="输入密码:" <el-form-item label="输入密码:" prop="pwd" :label-position="labelPosition" label-width="100px">
prop="pwd" <el-col :span="16">
:label-position="labelPosition" <el-input type="number" v-model="pwdForm.pwd" maxlength="6"
label-width="100px" onKeypress="return(/^[0-9]*$/.test(String.fromCharCode(event.keyCode)))" show-password
placeholder="请输入六位数字密码"></el-input>
> </el-col>
<el-col :span="16"> </el-form-item>
<el-input type="number" v-model="pwdForm.pwd" maxlength="6" onKeypress="return(/^[0-9]*$/.test(String.fromCharCode(event.keyCode)))" show-password placeholder="请输入六位数字密码"></el-input> <el-form-item class="employ-forgetPwd">
</el-col> <el-button type="text" @click="forgetPwd">忘记密码</el-button>
</el-form-item> </el-form-item>
<el-form-item class="employ-forgetPwd">
<el-button type="text" @click="forgetPwd">忘记密码</el-button>
</el-form-item>
</el-form> </el-form>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button type="primary" @click="PWDOk" :loading="loadingbut">{{loadingbuttext}}</el-button> <el-button type="primary" @click="PWDOk" :loading="loadingbut">{{ loadingbuttext }}</el-button>
<el-button @click="dialogVisible1 = false"> </el-button> <el-button @click="dialogVisible1 = false"> </el-button>
</span> </span>
</el-dialog> </el-dialog>
<!--忘记密码dialog--> <!--忘记密码dialog-->
<el-dialog title="重置密码" :visible.sync="resetPwdDialogVisible" append-to-body width="30%"> <el-dialog title="重置密码" :visible.sync="resetPwdDialogVisible" append-to-body width="30%">
<el-form class="econtract-resetForm" label-position="right" :model="resetPwdForm" :rules="resetPwdRules" ref="resetPwdForm"> <el-form class="econtract-resetForm" label-position="right" :model="resetPwdForm" :rules="resetPwdRules"
<el-form-item label="手机号码:" :label-width="formLabelWidth" prop="account" > ref="resetPwdForm">
<span>{{phone}}</span> <el-form-item label="手机号码:" :label-width="formLabelWidth" prop="account">
<span>{{ phone }}</span>
</el-form-item> </el-form-item>
<el-form-item label="请输入验证码:" :label-width="formLabelWidth" prop="code"> <el-form-item label="请输入验证码:" :label-width="formLabelWidth" prop="code">
<el-input v-model="resetPwdForm.code" autocomplete="off" style="width: 50%;"></el-input> <el-input v-model="resetPwdForm.code" autocomplete="off" style="width: 50%;"></el-input>
<el-button :disabled="msgKey" style="margin-left: 15px;" type="primary" @click="getCode">{{msgText}}</el-button> <el-button :disabled="msgKey" style="margin-left: 15px;" type="primary"
@click="getCode">{{ msgText }}</el-button>
</el-form-item> </el-form-item>
<el-form-item label="请设置新密码:" :label-width="formLabelWidth" prop="pwd"> <el-form-item label="请设置新密码:" :label-width="formLabelWidth" prop="pwd">
<el-input type="number" v-model="resetPwdForm.pwd" maxlength="6" onKeypress="return(/^[0-9]*$/.test(String.fromCharCode(event.keyCode)))" autocomplete="off" show-password placeholder="请输入六位数字密码"></el-input> <el-input type="number" v-model="resetPwdForm.pwd" maxlength="6"
onKeypress="return(/^[0-9]*$/.test(String.fromCharCode(event.keyCode)))" autocomplete="off" show-password
placeholder="请输入六位数字密码"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="请再次输入新密码:" :label-width="formLabelWidth" prop="pwd2"> <el-form-item label="请再次输入新密码:" :label-width="formLabelWidth" prop="pwd2">
<el-input type="number" maxlength="6" onKeypress="return(/^[0-9]*$/.test(String.fromCharCode(event.keyCode)))" v-model="resetPwdForm.pwd2" autocomplete="off" show-password placeholder="请再次输入六位数字密码"></el-input> <el-input type="number" maxlength="6" onKeypress="return(/^[0-9]*$/.test(String.fromCharCode(event.keyCode)))"
v-model="resetPwdForm.pwd2" autocomplete="off" show-password placeholder="请再次输入六位数字密码"></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@@ -241,28 +187,22 @@
</el-drawer> </el-drawer>
<Resume ref="resume"></Resume> <Resume ref="resume"></Resume>
<employ-information <employ-information ref="order" :checkDisplayVisible="checkDisplayVisible" :fpData="fpData" :fpTitleId='fpTitleId'
ref="order" :usersInfo="userInfo" @checkDisplayVisibleClose="checkDisplayVisibleClose"
:checkDisplayVisible="checkDisplayVisible" @refresh="refreshChange"></employ-information>
:fpData="fpData"
:fpTitleId='fpTitleId'
:usersInfo = "userInfo"
@checkDisplayVisibleClose = "checkDisplayVisibleClose"
@refresh="refreshChange"
></employ-information>
</basic-container> </basic-container>
</template> </template>
<script> <script>
import { employList, cancelEmploy, employ } from "@/api/tenant/mission"; import { employList, cancelEmploy, employ } from "@/api/tenant/mission";
import {viewContractImg,certCheckPass,getCode,resetPwd} from "@/api/manage/econtract.js";//api import { viewContractImg, certCheckPass, getCode, resetPwd } from "@/api/manage/econtract.js";//api
import {contractDownload} from "@/api/manage/esignature.js";//api import { contractDownload } from "@/api/manage/esignature.js";//api
import Resume from "@/components/resume/index"; import Resume from "@/components/resume/index";
import { idNumberDDesensitization } from "@/util/util"; import { idNumberDDesensitization } from "@/util/util";
import {applyStatus} from '@/api/manage/econtract' import { applyStatus } from '@/api/manage/econtract'
import {mapGetters} from 'vuex' import { mapGetters } from 'vuex'
import { dateFormat } from "@/util/date"; import { dateFormat } from "@/util/date";
import {getConfig} from '@/api/tenant/config' import { getConfig } from '@/api/tenant/config'
import EmployInformation from "./EmployInformation"; import EmployInformation from "./EmployInformation";
import { validatenull } from "@/util/validate"; import { validatenull } from "@/util/validate";
import { getFpDetail, getAddressAll } from "@/api/tenant/fp"; import { getFpDetail, getAddressAll } from "@/api/tenant/fp";
@@ -277,92 +217,92 @@ export default {
}, },
data() { data() {
const validatePwdLength=(rule,value,callback)=>{ const validatePwdLength = (rule, value, callback) => {
if(value.length!=6 || isNaN(Number(value))){ if (value.length != 6 || isNaN(Number(value))) {
callback(new Error('请输入6位数的数字密码')); callback(new Error('请输入6位数的数字密码'));
}
else{
callback();
}
} }
else {
callback();
}
}
const validatePwd = (rule, value, callback) => { const validatePwd = (rule, value, callback) => {
if (value != this.resetPwdForm.pwd) { if (value != this.resetPwdForm.pwd) {
callback(new Error('两次输入密码不一致')); callback(new Error('两次输入密码不一致'));
}
else {
callback();
}
};
const validPwdNums=(rule,value,callback)=>{
if(value.length!=6 || isNaN(Number(value))){
callback(new Error('请输入6位数的数字密码'));
}
else{
callback();
}
} }
else {
callback();
}
};
const validPwdNums = (rule, value, callback) => {
if (value.length != 6 || isNaN(Number(value))) {
callback(new Error('请输入6位数的数字密码'));
}
else {
callback();
}
}
return { return {
selectTaskInfo:{}, selectTaskInfo: {},
getUserConfig:{}, getUserConfig: {},
checkDisplayVisible: false, checkDisplayVisible: false,
fpTitleId:'', fpTitleId: '',
fpData: {}, fpData: {},
pwdFormRules:{ pwdFormRules: {
pwd:[ pwd: [
{ {
required:true,message:'请输入密码',trigger:'blur' required: true, message: '请输入密码', trigger: 'blur'
}, },
{ {
validator:validatePwdLength,trigger:'blur' validator: validatePwdLength, trigger: 'blur'
}, },
] ]
}, },
companyContractOn:'',//电子合同状态 companyContractOn: '',//电子合同状态
conpanySealOn:'',//签章状态 conpanySealOn: '',//签章状态
selectionFlag:true, selectionFlag: true,
/*忘记密码*/ /*忘记密码*/
resetPwdDialogVisible:false, resetPwdDialogVisible: false,
resetPwdForm:{}, resetPwdForm: {},
formLabelWidth:'150px', formLabelWidth: '150px',
msgText: '获取验证码', msgText: '获取验证码',
msgTime:120, msgTime: 120,
cancel:'', cancel: '',
//重置密码校验 //重置密码校验
resetPwdRules: { resetPwdRules: {
code: [ code: [
{ {
required: true, message: '请输入验证码', trigger: 'blur' required: true, message: '请输入验证码', trigger: 'blur'
} }
], ],
pwd: [ pwd: [
{ {
required: true, message: '请输入密码', trigger: 'blur' required: true, message: '请输入密码', trigger: 'blur'
}, },
{ {
validator: validPwdNums, trigger: 'blur' validator: validPwdNums, trigger: 'blur'
} }
], ],
pwd2: [ pwd2: [
{ {
required: true, message: '请输入确认密码', trigger: 'blur' required: true, message: '请输入确认密码', trigger: 'blur'
}, },
{ {
validator: validatePwd, trigger: 'blur' validator: validatePwd, trigger: 'blur'
} }
] ]
}, },
loadingbut:false, loadingbut: false,
loadingbuttext:'确定', loadingbuttext: '确定',
downLoadRow:{}, downLoadRow: {},
dataCurClick:{}, dataCurClick: {},
employDataIds:1, employDataIds: 1,
employNum:1, employNum: 1,
imgStr:'', imgStr: '',
isIndeterminate: false, isIndeterminate: false,
checkAll: false, checkAll: false,
checked: false, checked: false,
@@ -371,11 +311,11 @@ export default {
selectionList: [], selectionList: [],
dialogVisible: false, dialogVisible: false,
dialogVisible1: false, dialogVisible1: false,
contractId:'', contractId: '',
labelPosition: 'right', labelPosition: 'right',
pwdForm: { pwdForm: {
pwd: '' pwd: ''
}, },
page: { page: {
pageSize: 20, pageSize: 20,
currentPage: 1, currentPage: 1,
@@ -396,7 +336,7 @@ export default {
], ],
drawer: false, drawer: false,
data: [], data: [],
personTypeDisabledFlag:true, personTypeDisabledFlag: true,
obj: {}, obj: {},
}; };
@@ -458,13 +398,13 @@ export default {
prop: "realName", prop: "realName",
search: true, search: true,
searchSpan: 4, searchSpan: 4,
width:70, width: 70,
}, },
{ {
label: "性别", label: "性别",
prop: "sex", prop: "sex",
search: false, search: false,
width:50, width: 50,
dicData: [ dicData: [
{ {
label: "男", label: "男",
@@ -480,28 +420,28 @@ export default {
label: "年龄", label: "年龄",
prop: "age", prop: "age",
search: false, search: false,
width:50, width: 50,
}, },
{ {
label: "手机号", label: "手机号",
prop: "telphone", prop: "telphone",
search: false, search: false,
width:100, width: 100,
}, },
{ {
label: "身份证", label: "身份证",
prop: "cardNumber", prop: "cardNumber",
search: false, search: false,
slot: true, slot: true,
width:110 width: 110
}, },
{ {
label: "最新保期", label: "最新保期",
prop: "period", prop: "period",
searchSpan: 5, searchSpan: 5,
display: false, display: false,
slot:true, slot: true,
width:190 width: 190
}, },
{ {
label: "商保状态", label: "商保状态",
@@ -510,24 +450,24 @@ export default {
display: false, display: false,
type: 'select', type: 'select',
dicData: [ dicData: [
{ {
label: '未生效', label: '未生效',
value: 0 value: 0
}, },
{ {
label: '生效中', label: '生效中',
value: 1 value: 1
}, },
{ {
label: '即将失效', label: '即将失效',
value: 2 value: 2
}, },
{ {
label: '已失效', label: '已失效',
value: 3 value: 3
}, },
], ],
slot:true, slot: true,
}, },
{ {
label: "工种", label: "工种",
@@ -537,7 +477,7 @@ export default {
label: "来源", label: "来源",
prop: "src", prop: "src",
search: false, search: false,
width:70, width: 70,
}, },
{ {
label: "人才库", label: "人才库",
@@ -563,9 +503,9 @@ export default {
}, },
watch: { watch: {
"query.status": function (val, oldVal) { "query.status": function (val, oldVal) {
if(val == 1){ if (val == 1) {
this.selectionFlag = true; this.selectionFlag = true;
}else{ } else {
this.selectionFlag = false; this.selectionFlag = false;
} }
this.query.realName = ''; this.query.realName = '';
@@ -577,11 +517,11 @@ export default {
} }
}, },
}, },
mounted(){ mounted() {
this.checkStatus(); this.checkStatus();
}, },
methods: { methods: {
checkDisplayVisibleClose(){ checkDisplayVisibleClose() {
this.checkDisplayVisible = false; this.checkDisplayVisible = false;
}, },
/*获取发票数据*/ /*获取发票数据*/
@@ -607,88 +547,90 @@ export default {
self.$message.warning("请完善您的发票收件地址"); self.$message.warning("请完善您的发票收件地址");
} else { } else {
self.checkDisplayVisible = true; self.checkDisplayVisible = true;
self.$refs.order.openDialog(this.selectTaskInfo,this.employDataIds,this.selectionList); self.$refs.order.openDialog(this.selectTaskInfo, this.employDataIds, this.selectionList);
self.$refs.order.getData(self.addresses); self.$refs.order.getData(self.addresses);
} }
}, },
rowEmployDisabled(){ rowEmployDisabled() {
}, },
dateFormat(date){ dateFormat(date) {
return dateFormat(new Date(date),'yyyy/MM/dd') return dateFormat(new Date(date), 'yyyy/MM/dd')
}, },
checkStatus(){ checkStatus() {
applyStatus().then(res=>{ this.companyContractOn = 0;//电子合同是否启用0=未启用
this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用 this.conpanySealOn = 0;//电子签章是否设置0=未设置,1=等待审核2=已设置
this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置 // applyStatus().then(res=>{
}) // this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用
// this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置
// })
}, },
idNumberDDesensitization, idNumberDDesensitization,
//输入密码点击确定 //输入密码点击确定
PWDOk(){ PWDOk() {
this.$refs.pwdForm.validate(valid=>{ this.$refs.pwdForm.validate(valid => {
if(valid){ if (valid) {
this.loadingbut = true; this.loadingbut = true;
this.loadingbuttext = '提交中...'; this.loadingbuttext = '提交中...';
certCheckPass(this.pwdForm.pwd).then((res)=>{ certCheckPass(this.pwdForm.pwd).then((res) => {
if(res.data.data == true){//输入签章密码正确走录用流程 if (res.data.data == true) {//输入签章密码正确走录用流程
this.employApi(this.employDataIds); this.employApi(this.employDataIds);
}else{ } else {
this.$message.closeAll(); this.$message.closeAll();
this.$message({ this.$message({
type: "error", type: "error",
message: "密码输入错误!", message: "密码输入错误!",
}); });
this.loadingbut=false; this.loadingbut = false;
this.loadingbuttext='确定'; this.loadingbuttext = '确定';
} }
}) })
} }
}) })
}, },
/*录用人员*/ /*录用人员*/
rowEmploy(row) { rowEmploy(row) {
this.dataCurClick = row; this.dataCurClick = row;
this.employDataIds = row.id; this.employDataIds = row.id;
this.employNum = 1; this.employNum = 1;
this.pwdForm.pwd = ''; this.pwdForm.pwd = '';
if(this.getUserConfig.insuranceOn == 1){ if (this.getUserConfig.insuranceOn == 1) {
this.getData(); this.getData();
}else{ } else {
if(this.companyContractOn!=0){ if (this.companyContractOn != 0) {
this.dialogVisible1 = true; this.dialogVisible1 = true;
} }
else{ else {
this.employApi(this.employDataIds); this.employApi(this.employDataIds);
} }
} }
}, },
drawerClose(){ drawerClose() {
this.$emit('refresh'); this.$emit('refresh');
this.drawer = false; this.drawer = false;
}, },
radioButtonChange(){ radioButtonChange() {
this.query.realName = ''; this.query.realName = '';
this.query.groupId = ''; this.query.groupId = '';
this.personTypeDisabledFlag = true; this.personTypeDisabledFlag = true;
this.page.total = 0; this.page.total = 0;
this.data = []; this.data = [];
if(this.query.status == 2){ if (this.query.status == 2) {
this.selectionFlag = false; this.selectionFlag = false;
this.data = this.employedData; this.data = this.employedData;
}else{ } else {
this.selectionFlag = true; this.selectionFlag = true;
this.data = this.waitEmployedData; this.data = this.waitEmployedData;
} }
}, },
/*打开drawer*/ /*打开drawer*/
openDialog(row, status) { openDialog(row, status) {
this.selectTaskInfo = row; this.selectTaskInfo = row;
this.missionId = row.missionNo; this.missionId = row.missionNo;
this.query = { this.query = {
status: status, status: status,
@@ -701,17 +643,17 @@ export default {
this.drawer = true; this.drawer = true;
}, },
//查看合同 //查看合同
rowCheck(row){ rowCheck(row) {
this.downLoadRow = row; this.downLoadRow = row;
if(row.contractStatus==true){ if (row.contractStatus == true) {
viewContractImg(row.userId,row.missionNo).then((res) => { viewContractImg(row.userId, row.missionNo).then((res) => {
window.open(res.data.data.url) window.open(res.data.data.url)
// this.imgStr = res.data.data.url; // this.imgStr = res.data.data.url;
// this.contractId = res.data.data.id; // this.contractId = res.data.data.id;
// this.dialogVisible = true; // this.dialogVisible = true;
}) })
} }
else{ else {
this.$message.closeAll(); this.$message.closeAll();
this.$message.warning('合同生成中,请稍后查看'); this.$message.warning('合同生成中,请稍后查看');
} }
@@ -719,7 +661,7 @@ export default {
}, },
//下载合同 //下载合同
downLoadContract(){ downLoadContract() {
window.open(contractDownload(this.contractId)) window.open(contractDownload(this.contractId))
}, },
/*单行取消*/ /*单行取消*/
@@ -813,14 +755,14 @@ export default {
this.pwdForm.pwd = ''; this.pwdForm.pwd = '';
//未开通合同,不显示输入密码框 //未开通合同,不显示输入密码框
this.employDataIds = this.ids; this.employDataIds = this.ids;
if(this.getUserConfig.insuranceOn == 1){ if (this.getUserConfig.insuranceOn == 1) {
this.getData(); this.getData();
}else{ } else {
if(this.companyContractOn!=0){ if (this.companyContractOn != 0) {
this.dialogVisible1 = true; this.dialogVisible1 = true;
} }
else{ else {
this.employApi(this.employDataIds); this.employApi(this.employDataIds);
} }
} }
@@ -828,26 +770,26 @@ export default {
.catch(() => { .catch(() => {
}); });
}, },
employApi(ids){ employApi(ids) {
employ(this.missionId, ids,0,0).then( employ(this.missionId, ids, 0, 0).then(
() => { () => {
this.loadingbut = false; this.loadingbut = false;
this.loadingbuttext = '确定'; this.loadingbuttext = '确定';
this.$message({ this.$message({
type: "success", type: "success",
message: "操作成功!", message: "操作成功!",
}); });
this.dialogVisible1 = false; this.dialogVisible1 = false;
this.onLoad(this.page, this.query); this.onLoad(this.page, this.query);
this.$emit("refresh"); this.$emit("refresh");
}, },
(error) => { (error) => {
this.loadingbut = false; this.loadingbut = false;
this.loadingbuttext = '确定'; this.loadingbuttext = '确定';
window.console.log(error); window.console.log(error);
this.dialogVisible1 = false; this.dialogVisible1 = false;
} }
); );
}, },
/*批量取消*/ /*批量取消*/
handleDelete() { handleDelete() {
@@ -940,8 +882,8 @@ export default {
/*加载数据*/ /*加载数据*/
onLoad(page, params) { onLoad(page, params) {
this.data = []; this.data = [];
getConfig().then((res)=>{ getConfig().then((res) => {
this.getUserConfig = res.data.data; this.getUserConfig = res.data.data;
}); });
this.loading = true; this.loading = true;
let paramscur = params ? Object.assign(params, this.query) : this.query; let paramscur = params ? Object.assign(params, this.query) : this.query;
@@ -994,64 +936,66 @@ export default {
backIndex() { backIndex() {
this.$emit("refresh"); this.$emit("refresh");
}, },
forgetPwd(){ forgetPwd() {
this.phone=this.userInfo.account; this.phone = this.userInfo.account;
var pat=/(\d{3})\d*(\d{4})/; var pat = /(\d{3})\d*(\d{4})/;
this.phone=this.phone.replace(pat,'$1****$2'); this.phone = this.phone.replace(pat, '$1****$2');
this.resetPwdDialogVisible=true; this.resetPwdDialogVisible = true;
this.resetPwdForm={}; this.resetPwdForm = {};
}, },
/*获取验证码*/ /*获取验证码*/
getCode() { getCode() {
this.msgKey = true; this.msgKey = true;
this.msgText = "发送中..."; this.msgText = "发送中...";
getCode(this.userInfo.account) getCode(this.userInfo.account)
.then(() => { .then(() => {
this.msgText = "剩余" + 120 + "s"; this.msgText = "剩余" + 120 + "s";
this.msgKey = true; this.msgKey = true;
const time = setInterval(() => { const time = setInterval(() => {
this.msgTime--; this.msgTime--;
this.msgText = "剩余" + this.msgTime + "s"; this.msgText = "剩余" + this.msgTime + "s";
if (this.msgTime <= 0) { if (this.msgTime <= 0) {
this.msgTime = 120; this.msgTime = 120;
this.msgText = "重新获取"; this.msgText = "重新获取";
this.msgKey = false; this.msgKey = false;
clearInterval(time); clearInterval(time);
} }
}, 1000); }, 1000);
}) })
.catch(() => { .catch(() => {
this.msgText = "重新获取"; this.msgText = "重新获取";
this.msgKey = false; this.msgKey = false;
}); });
}, },
/*重置密码*/ /*重置密码*/
submitResetPwd() { submitResetPwd() {
this.$refs.resetPwdForm.validate(valid => { this.$refs.resetPwdForm.validate(valid => {
if (valid) { if (valid) {
resetPwd(this.userInfo.account,this.resetPwdForm.pwd,this.resetPwdForm.code).then(()=>{ resetPwd(this.userInfo.account, this.resetPwdForm.pwd, this.resetPwdForm.code).then(() => {
this.$message.success('密码重置成功'); this.$message.success('密码重置成功');
this.resetPwdDialogVisible=false; this.resetPwdDialogVisible = false;
}) })
.catch((err)=>{ .catch((err) => {
this.$message.error(err); this.$message.error(err);
}) })
} }
}) })
}, },
}, },
}; };
</script> </script>
<style> <style>
.selectBtn{ .selectBtn {
color: #787879 !important; color: #787879 !important;
} }
.selectBtn:hover{
color: #787879 !important; .selectBtn:hover {
} color: #787879 !important;
.tipsWrap1{ }
.tipsWrap1 {
font-size: 14px; font-size: 14px;
color: #ff0000; color: #ff0000;
position: absolute; position: absolute;
@@ -1060,18 +1004,21 @@ export default {
/* top: 165px; /* top: 165px;
left: 130px; */ left: 130px; */
} }
.tipsWrap2{
.tipsWrap2 {
font-size: 14px; font-size: 14px;
color: #ff0000; color: #ff0000;
position: absolute; position: absolute;
margin-top: 75px; margin-top: 75px;
margin-left: 30px; margin-left: 30px;
} }
.employ-employNum-count{
color: #2098ee; .employ-employNum-count {
} color: #2098ee;
.employ-forgetPwd{ }
float: right;
margin-top: -33px; .employ-forgetPwd {
} float: right;
margin-top: -33px;
}
</style> </style>

View File

@@ -335,10 +335,12 @@ export default {
); );
}, },
checkStatus(){ checkStatus(){
applyStatus().then(res=>{ this.companyContractOn = 0;//电子合同是否启用0=未启用
this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用 1=已启用 this.conpanySealOn = 0;//电子签章是否设置0=未设置,1=等待审核2=已设置
this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置 // applyStatus().then(res=>{
}) // this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用 1=已启用
// this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置
// })
}, },
drawerClose(){ drawerClose(){
this.$emit('refresh'); this.$emit('refresh');

View File

@@ -617,10 +617,12 @@ export default {
return dateFormat(new Date(date),'yyyy/MM/dd') return dateFormat(new Date(date),'yyyy/MM/dd')
}, },
checkStatus(){ checkStatus(){
applyStatus().then(res=>{ this.companyContractOn = 0;//电子合同是否启用0=未启用
this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用 this.conpanySealOn = 0;//电子签章是否设置0=未设置,1=等待审核2=已设置
this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置 // applyStatus().then(res=>{
}) // this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用
// this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置
// })
}, },
idNumberDDesensitization, idNumberDDesensitization,
//输入密码点击确定 //输入密码点击确定

View File

@@ -335,10 +335,12 @@ export default {
); );
}, },
checkStatus(){ checkStatus(){
applyStatus().then(res=>{ this.companyContractOn = 0;//电子合同是否启用0=未启用
this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用 1=已启用 this.conpanySealOn = 0;//电子签章是否设置0=未设置,1=等待审核2=已设置
this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置 // applyStatus().then(res=>{
}) // this.companyContractOn=res.data.data.contractOn;//电子合同是否启用0=未启用 1=已启用
// this.conpanySealOn=res.data.data.sealOn;//电子签章是否设置0=未设置,1=等待审核2=已设置
// })
}, },
drawerClose(){ drawerClose(){
this.$emit('refresh'); this.$emit('refresh');