flat: 添加期望薪资等等
This commit is contained in:
@@ -5,7 +5,7 @@ export const getList = (current, size, params, groupId) => {
|
|||||||
return request({
|
return request({
|
||||||
url: "/api/jobslink-api/serve/list",
|
url: "/api/jobslink-api/serve/list",
|
||||||
method: "get",
|
method: "get",
|
||||||
params: { ...params, current, size, groupId }
|
params: {...params, current, size, groupId}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ export const getUserList = (current, size, params, groupId) => {
|
|||||||
return request({
|
return request({
|
||||||
url: "/api/jobslink-api/serve/user/list",
|
url: "/api/jobslink-api/serve/user/list",
|
||||||
method: "get",
|
method: "get",
|
||||||
params: { ...params, current, size, groupId }
|
params: {...params, current, size, groupId}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ export const remove = ids => {
|
|||||||
return request({
|
return request({
|
||||||
url: "/api/jobslink-api/serve/remove",
|
url: "/api/jobslink-api/serve/remove",
|
||||||
method: "post",
|
method: "post",
|
||||||
params: { ids }
|
params: {ids}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -50,7 +50,7 @@ export const detail = id => {
|
|||||||
return request({
|
return request({
|
||||||
url: "/api/jobslink-api/serve/detail",
|
url: "/api/jobslink-api/serve/detail",
|
||||||
method: "get",
|
method: "get",
|
||||||
params: { id }
|
params: {id}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -104,7 +104,7 @@ export const removeDept = ids => {
|
|||||||
return request({
|
return request({
|
||||||
url: "/api/jobslink-api/serve/group/remove",
|
url: "/api/jobslink-api/serve/group/remove",
|
||||||
method: "post",
|
method: "post",
|
||||||
params: { ids }
|
params: {ids}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -113,7 +113,7 @@ export const transferDept = (groupIds, ids) => {
|
|||||||
return request({
|
return request({
|
||||||
url: "/api/jobslink-api/serve/updateAllGroup",
|
url: "/api/jobslink-api/serve/updateAllGroup",
|
||||||
method: "post",
|
method: "post",
|
||||||
params: { groupIds, ids }
|
params: {groupIds, ids}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -205,11 +205,12 @@ export const getSearchAll = params =>
|
|||||||
method: "get",
|
method: "get",
|
||||||
params: params
|
params: params
|
||||||
});
|
});
|
||||||
export const getSearchAllByUserId = params =>
|
export const getSearchAllByUserId = (params, body) =>
|
||||||
request({
|
request({
|
||||||
url: "/api/jobslink-api/serve/pushSearchList",
|
url: "/api/jobslink-api/serve/pushSearchList",
|
||||||
method: "get",
|
method: "post",
|
||||||
params: params
|
data: body,
|
||||||
|
params: params,
|
||||||
});
|
});
|
||||||
|
|
||||||
export const pushPolicyUserServe = params =>
|
export const pushPolicyUserServe = params =>
|
||||||
@@ -233,9 +234,31 @@ export const getListAllTalents = params =>
|
|||||||
params
|
params
|
||||||
});
|
});
|
||||||
|
|
||||||
export const getListUserAllTalents = params =>
|
export const getListUserAllTalents = params =>
|
||||||
request({
|
request({
|
||||||
url: "/api/jobslink-api/serve/user/listAllTalents",
|
url: "/api/jobslink-api/serve/user/listAllTalents",
|
||||||
method: "get",
|
method: "get",
|
||||||
params
|
params
|
||||||
});
|
});
|
||||||
|
|
||||||
|
export const addServeLog = data =>
|
||||||
|
request({
|
||||||
|
url: "/api/jobslink-api/tenant/mainserveuserlog/save",
|
||||||
|
method: "post",
|
||||||
|
data
|
||||||
|
});
|
||||||
|
|
||||||
|
export const updateServeLog = data =>
|
||||||
|
request({
|
||||||
|
url: "/api/jobslink-api/tenant/mainserveuserlog/update",
|
||||||
|
method: "post",
|
||||||
|
data
|
||||||
|
});
|
||||||
|
|
||||||
|
export const removeServeLog = data =>
|
||||||
|
request({
|
||||||
|
url: "/api/jobslink-api/tenant/mainserveuserlog/remove",
|
||||||
|
method: "post",
|
||||||
|
params: data
|
||||||
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -40,12 +40,15 @@ export default {
|
|||||||
county: {
|
county: {
|
||||||
get() {
|
get() {
|
||||||
if (this.value) {
|
if (this.value) {
|
||||||
return this.value.split(this.splicer);
|
console.log('enum', this.area)
|
||||||
|
console.log('getvalue', this.value.split(this.splicer))
|
||||||
|
return this.value.split(this.splicer).map((item) => item.replace(/\s+/g, ""));
|
||||||
} else {
|
} else {
|
||||||
return []
|
return []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
set(val) {
|
set(val) {
|
||||||
|
console.log('setvalue', val, val.join(this.splicer))
|
||||||
this.$emit("input", val.join(this.splicer));
|
this.$emit("input", val.join(this.splicer));
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -137,6 +137,9 @@ let leftUserOptions = {
|
|||||||
}, {
|
}, {
|
||||||
label: '手机号',
|
label: '手机号',
|
||||||
prop: 'telphone',
|
prop: 'telphone',
|
||||||
|
}, {
|
||||||
|
label: "求职意愿",
|
||||||
|
prop: "willingJob",
|
||||||
}, {
|
}, {
|
||||||
label: "民族",
|
label: "民族",
|
||||||
prop: "aac005",
|
prop: "aac005",
|
||||||
|
|||||||
@@ -34,7 +34,8 @@
|
|||||||
<div class="footer" style="padding-left: 6px">
|
<div class="footer" style="padding-left: 6px">
|
||||||
<el-button type="text" icon="el-icon-plus"
|
<el-button type="text" icon="el-icon-plus"
|
||||||
v-if="vaildData(permission.tenant_main_serve_index_groupadd, false)"
|
v-if="vaildData(permission.tenant_main_serve_index_groupadd, false)"
|
||||||
@click="updateGroups('add')">新建分组</el-button>
|
@click="updateGroups('add')">新建分组
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
</div>
|
</div>
|
||||||
@@ -68,7 +69,9 @@
|
|||||||
<template slot="worktypes" slot-scope="{ row }">
|
<template slot="worktypes" slot-scope="{ row }">
|
||||||
<el-tooltip effect="dark" :content="row.worktypes" placement="top">
|
<el-tooltip effect="dark" :content="row.worktypes" placement="top">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.worktypes)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.worktypes)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div>{{ row.worktypes | ellipsis }}</div>
|
<div>{{ row.worktypes | ellipsis }}</div>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
@@ -86,16 +89,21 @@
|
|||||||
<template slot="resume" slot-scope="{ row }">
|
<template slot="resume" slot-scope="{ row }">
|
||||||
<div>
|
<div>
|
||||||
<el-button type="text" size="mini" @click="$refs.resume.openDialog(row)"
|
<el-button type="text" size="mini" @click="$refs.resume.openDialog(row)"
|
||||||
v-if="row.userId && row.userId !== '0'">查看简历</el-button>
|
v-if="row.userId && row.userId !== '0'">查看简历
|
||||||
|
</el-button>
|
||||||
<div v-else>暂无简历</div>
|
<div v-else>暂无简历</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template slot="serveLabels" slot-scope="{ row }">
|
<template slot="serveLabels" slot-scope="{ row }">
|
||||||
<el-tooltip effect="dark" placement="top">
|
<el-tooltip effect="dark" placement="top">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.serveLabels)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.serveLabels)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
</div>
|
</div>
|
||||||
<span>{{ row.serveLabels.length > 20 ? `${row.serveLabels.substring(0, 20)}...` : row.serveLabels}}</span>
|
</div>
|
||||||
|
<span>{{
|
||||||
|
row.serveLabels.length > 20 ? `${row.serveLabels.substring(0, 20)}...` : row.serveLabels
|
||||||
|
}}</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
<!--/自定义列-->
|
<!--/自定义列-->
|
||||||
@@ -105,12 +113,16 @@
|
|||||||
</template>
|
</template>
|
||||||
<!--自定义按钮-->
|
<!--自定义按钮-->
|
||||||
<template slot="menuLeft">
|
<template slot="menuLeft">
|
||||||
<el-button type="primary" size="small" icon="el-icon-delete" @click="() => { $refs.crud.rowAdd(); selectPolicyTree = []}"
|
<el-button type="primary" size="small" icon="el-icon-edit"
|
||||||
|
@click="() => { $refs.crud.rowAdd(); selectPolicyTree = []}"
|
||||||
v-if="vaildData(permission.tenant_main_serve_index_add, false)">
|
v-if="vaildData(permission.tenant_main_serve_index_add, false)">
|
||||||
新增</el-button>
|
新增
|
||||||
|
</el-button>
|
||||||
<el-button type="danger" size="small" icon="el-icon-delete" @click="handleDelete"
|
<el-button type="danger" size="small" icon="el-icon-delete" @click="handleDelete"
|
||||||
:disabled="!selectionList.length" plain v-show="vaildData(permission.tenant_talents_groupdelete, false)">
|
:disabled="!selectionList.length" plain
|
||||||
删除</el-button>
|
v-show="vaildData(permission.tenant_talents_groupdelete, false)">
|
||||||
|
删除
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
<template slot="name" slot-scope="{row}">
|
<template slot="name" slot-scope="{row}">
|
||||||
<span>{{ row.name }}</span>
|
<span>{{ row.name }}</span>
|
||||||
@@ -122,6 +134,7 @@
|
|||||||
:options="listAllPolicyTree"
|
:options="listAllPolicyTree"
|
||||||
:props="{ expandTrigger: 'hover', multiple: true, label: 'name', value: 'value', children: 'child'}"
|
:props="{ expandTrigger: 'hover', multiple: true, label: 'name', value: 'value', children: 'child'}"
|
||||||
@change="handleChange"
|
@change="handleChange"
|
||||||
|
filterable
|
||||||
></el-cascader>
|
></el-cascader>
|
||||||
</template>
|
</template>
|
||||||
<!--/自定义按钮-->
|
<!--/自定义按钮-->
|
||||||
@@ -131,26 +144,30 @@
|
|||||||
size="small"
|
size="small"
|
||||||
v-show="vaildData(permission.tenant_main_serve_index_pushserve, false)"
|
v-show="vaildData(permission.tenant_main_serve_index_pushserve, false)"
|
||||||
@click="selectPushService(row)"
|
@click="selectPushService(row)"
|
||||||
>推送服务</el-button>
|
>推送服务
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="showKeyAudience(row)"
|
@click="showKeyAudience(row)"
|
||||||
>服务详情</el-button>
|
>服务详情
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
v-if="row.status == 0"
|
v-if="row.status == 0"
|
||||||
icon="el-icon-video-play"
|
icon="el-icon-video-play"
|
||||||
size="small"
|
size="small"
|
||||||
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
||||||
@click="playServe(row)"
|
@click="playServe(row)"
|
||||||
>启用</el-button>
|
>启用
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
v-if="row.status == 1"
|
v-if="row.status == 1"
|
||||||
icon="el-icon-video-pause"
|
icon="el-icon-video-pause"
|
||||||
size="small"
|
size="small"
|
||||||
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
||||||
@click="pauseServe(row)"
|
@click="pauseServe(row)"
|
||||||
>关闭</el-button>
|
>关闭
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
<template slot="talentsNamesForm" slot-scope="{row}">
|
<template slot="talentsNamesForm" slot-scope="{row}">
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
@@ -158,7 +175,8 @@
|
|||||||
icon="el-icon-video-pause"
|
icon="el-icon-video-pause"
|
||||||
size="small"
|
size="small"
|
||||||
@click="pauseServe(row)"
|
@click="pauseServe(row)"
|
||||||
>关闭</el-button>
|
>关闭
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
<!--/父子表-->
|
<!--/父子表-->
|
||||||
</avue-crud>
|
</avue-crud>
|
||||||
@@ -211,17 +229,20 @@
|
|||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="matchWorkStation(row)"
|
@click="matchWorkStation(row)"
|
||||||
>匹配任务/岗位</el-button>
|
>匹配任务/岗位
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="matchPolicy(row)"
|
@click="matchPolicy(row)"
|
||||||
>匹配政策</el-button>
|
>匹配政策
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="serveLog(row)"
|
@click="serveLog(row)"
|
||||||
>服务日志</el-button>
|
>服务日志
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</avue-crud>
|
</avue-crud>
|
||||||
<el-drawer
|
<el-drawer
|
||||||
@@ -238,14 +259,15 @@
|
|||||||
@current-change="workCurrentChange"
|
@current-change="workCurrentChange"
|
||||||
>
|
>
|
||||||
<template slot="missionDesc" slot-scope="{ row }">
|
<template slot="missionDesc" slot-scope="{ row }">
|
||||||
<TextTooltip :content="row.missionDesc" ></TextTooltip>
|
<TextTooltip :content="row.missionDesc"></TextTooltip>
|
||||||
</template>
|
</template>
|
||||||
<template slot-scope="{row,index}" slot="menu">
|
<template slot-scope="{row,index}" slot="menu">
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="toWorkMissionDetail(row)"
|
@click="toWorkMissionDetail(row)"
|
||||||
>查看详情</el-button>
|
>查看详情
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</avue-crud>
|
</avue-crud>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
@@ -265,22 +287,29 @@
|
|||||||
<template slot="policyContent" slot-scope="{ row }">
|
<template slot="policyContent" slot-scope="{ row }">
|
||||||
<el-tooltip class="item" effect="dark" placement="top-start">
|
<el-tooltip class="item" effect="dark" placement="top-start">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.policyContent)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.policyContent)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
</div>
|
</div>
|
||||||
<span>{{ row.policyContent.length > 50 ? row.policyContent.substring(0, 50) : row.policyContent}}</span>
|
</div>
|
||||||
|
<span>{{ row.policyContent.length > 50 ? row.policyContent.substring(0, 50) : row.policyContent }}</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
<template slot="labelName" slot-scope="{ row }">
|
<template slot="labelName" slot-scope="{ row }">
|
||||||
<el-tooltip class="item" effect="dark" placement="top-start">
|
<el-tooltip class="item" effect="dark" placement="top-start">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.labelName)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.labelName)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
</div>
|
</div>
|
||||||
<span>{{ row.labelName.length > 50 ? row.labelName.substring(0, 50) : row.labelName}}</span>
|
</div>
|
||||||
|
<span>{{ row.labelName.length > 50 ? row.labelName.substring(0, 50) : row.labelName }}</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
<template slot="labelNameForm" slot-scope="{row}">
|
<template slot="labelNameForm" slot-scope="{row}">
|
||||||
<div>
|
<div>
|
||||||
<el-tag style="margin: 4px 10px" v-for="(item, index) in row.labelName.split(',')" :key="index">{{ item }}</el-tag>
|
<el-tag style="margin: 4px 10px" v-for="(item, index) in row.labelName.split(',')" :key="index">{{
|
||||||
|
item
|
||||||
|
}}
|
||||||
|
</el-tag>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -311,6 +340,9 @@
|
|||||||
:data="logData"
|
:data="logData"
|
||||||
:option="logOption"
|
:option="logOption"
|
||||||
:page.sync="logPage"
|
:page.sync="logPage"
|
||||||
|
@row-save="saveLog"
|
||||||
|
@row-update="saveUpdateLog"
|
||||||
|
@row-del="removeLog"
|
||||||
@size-change="logSizeChange"
|
@size-change="logSizeChange"
|
||||||
@current-change="logCurrentChange"
|
@current-change="logCurrentChange"
|
||||||
>
|
>
|
||||||
@@ -330,7 +362,7 @@
|
|||||||
:visible.sync="PushServiceVisible"
|
:visible.sync="PushServiceVisible"
|
||||||
:rowData="selectPushServiceData"
|
:rowData="selectPushServiceData"
|
||||||
></PushService>
|
></PushService>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
@@ -348,26 +380,27 @@ import {
|
|||||||
getMatchPolicy,
|
getMatchPolicy,
|
||||||
getMatchServeList,
|
getMatchServeList,
|
||||||
getListAllPolicy,
|
getListAllPolicy,
|
||||||
getListUserAllTalents
|
getListUserAllTalents, addServeLog, updateServeLog, removeServeLog
|
||||||
} from "@/api/tenant/serve";
|
} from "@/api/tenant/serve";
|
||||||
import { detail as missionDetail } from "@/api/tenant/mission";
|
import {detail as missionDetail} from "@/api/tenant/mission";
|
||||||
import { detail as workDetail } from "@/api/tenant/postzp";
|
import {detail as workDetail} from "@/api/tenant/postzp";
|
||||||
import {getLabelList, getWorkTypes} from "@/api/tenant/common";
|
import {getLabelList, getWorkTypes} from "@/api/tenant/common";
|
||||||
import { mapGetters } from "vuex";
|
import {mapGetters} from "vuex";
|
||||||
import addGroups from "./Dialog/addGroups";
|
import addGroups from "./Dialog/addGroups";
|
||||||
import transferGroups from "./Dialog/transferGroups";
|
import transferGroups from "./Dialog/transferGroups";
|
||||||
import Resume from "@/components/resume/index";
|
import Resume from "@/components/resume/index";
|
||||||
import { check18IdCardNo, isvalidatemobile, isExcel } from "@/util/validate";
|
import {check18IdCardNo, isvalidatemobile, isExcel} from "@/util/validate";
|
||||||
import { getTemplate } from "@/api/resource/template";
|
import {getTemplate} from "@/api/resource/template";
|
||||||
import ied from "@/views/util/import-error-dialog";
|
import ied from "@/views/util/import-error-dialog";
|
||||||
import { excelAccept } from "@/common/accept";
|
import {excelAccept} from "@/common/accept";
|
||||||
import missionView from "./missionView.vue";
|
import missionView from "./missionView.vue";
|
||||||
import workView from "./workMissionView.vue"
|
import workView from "./workMissionView.vue"
|
||||||
import {serviceType} from "@/common/dic";
|
import {serviceType} from "@/common/dic";
|
||||||
import Tinymce from "@/components/Tinymce";
|
import Tinymce from "@/components/Tinymce";
|
||||||
import { deepClone } from "@/util/util";
|
import {deepClone} from "@/util/util";
|
||||||
import PushService from "@/views/tenant/main/serve/Dialog/pushService.vue";
|
import PushService from "@/views/tenant/main/serve/Dialog/pushService.vue";
|
||||||
import TextTooltip from "@/components/text-tooltip/index.vue";
|
import TextTooltip from "@/components/text-tooltip/index.vue";
|
||||||
|
|
||||||
const page = {
|
const page = {
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
@@ -422,7 +455,7 @@ export default {
|
|||||||
personTotal: 0,
|
personTotal: 0,
|
||||||
treeData: [],
|
treeData: [],
|
||||||
tenantId: "",
|
tenantId: "",
|
||||||
page: Object.assign({} ,page),
|
page: Object.assign({}, page),
|
||||||
tempWorkType: [],
|
tempWorkType: [],
|
||||||
worktypeDic: {},
|
worktypeDic: {},
|
||||||
arr: [],//////
|
arr: [],//////
|
||||||
@@ -461,18 +494,19 @@ export default {
|
|||||||
workData: [],
|
workData: [],
|
||||||
policyData: [],
|
policyData: [],
|
||||||
logData: [],
|
logData: [],
|
||||||
infoPage: Object.assign({} ,page),
|
infoPage: Object.assign({}, page),
|
||||||
workPage: Object.assign({} ,page),
|
workPage: Object.assign({}, page),
|
||||||
policyPage: Object.assign({} ,page),
|
policyPage: Object.assign({}, page),
|
||||||
logPage: Object.assign({} ,page),
|
logPage: Object.assign({}, page),
|
||||||
obj: {},
|
obj: {},
|
||||||
excelForm: { isCovered: 1 },
|
excelForm: {isCovered: 1},
|
||||||
listAllPolicyTree: [],
|
listAllPolicyTree: [],
|
||||||
selectPolicyTree: [],
|
selectPolicyTree: [],
|
||||||
talentsList: []
|
talentsList: [],
|
||||||
|
selectUserServeLog: null,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
components: { addGroups, transferGroups, Resume, ied, missionView, workView, Tinymce, PushService, TextTooltip},
|
components: {addGroups, transferGroups, Resume, ied, missionView, workView, Tinymce, PushService, TextTooltip},
|
||||||
watch: {},
|
watch: {},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(["permission"]),
|
...mapGetters(["permission"]),
|
||||||
@@ -480,8 +514,8 @@ export default {
|
|||||||
return {
|
return {
|
||||||
addBtn: this.vaildData(this.permission.tenant_main_serve_index_add, false),
|
addBtn: this.vaildData(this.permission.tenant_main_serve_index_add, false),
|
||||||
viewBtn: true,
|
viewBtn: true,
|
||||||
delBtn: this.vaildData(this.permission.tenant_main_serve_index_del,false),
|
delBtn: this.vaildData(this.permission.tenant_main_serve_index_del, false),
|
||||||
editBtn: this.vaildData(this.permission.tenant_main_serve_index_edit, false ),
|
editBtn: this.vaildData(this.permission.tenant_main_serve_index_edit, false),
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
ids() {
|
ids() {
|
||||||
@@ -555,7 +589,7 @@ export default {
|
|||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
whitespace: true,
|
whitespace: true,
|
||||||
message: "请输入姓名",
|
message: "请输入服务名称",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@@ -686,7 +720,7 @@ export default {
|
|||||||
indexLabel: "序号",
|
indexLabel: "序号",
|
||||||
refreshBtn: false,
|
refreshBtn: false,
|
||||||
height: '100',
|
height: '100',
|
||||||
viewBtn:true,
|
viewBtn: true,
|
||||||
dialogType: "drawer",
|
dialogType: "drawer",
|
||||||
column: [{
|
column: [{
|
||||||
label: '政策名称',
|
label: '政策名称',
|
||||||
@@ -726,7 +760,7 @@ export default {
|
|||||||
span: 12,
|
span: 12,
|
||||||
hide: true,
|
hide: true,
|
||||||
display: true,
|
display: true,
|
||||||
dicData: [{ name: "有效", value: 1 }, { name: "无效", value: 0 }],
|
dicData: [{name: "有效", value: 1}, {name: "无效", value: 0}],
|
||||||
props: {
|
props: {
|
||||||
label: "name",
|
label: "name",
|
||||||
value: "value",
|
value: "value",
|
||||||
@@ -832,20 +866,23 @@ export default {
|
|||||||
height: '100',
|
height: '100',
|
||||||
column: [{
|
column: [{
|
||||||
label: '服务时间',
|
label: '服务时间',
|
||||||
prop: 'createTime'
|
prop: 'createTime',
|
||||||
},{
|
type: 'datetime',
|
||||||
|
format: "yyyy-MM-dd HH:mm:ss",
|
||||||
|
valueFormat: "yyyy-MM-dd HH:mm:ss",
|
||||||
|
}, {
|
||||||
label: '服务发起人',
|
label: '服务发起人',
|
||||||
prop: 'fromName'
|
prop: 'fromName'
|
||||||
},{
|
}, {
|
||||||
label: '服务对象',
|
label: '服务对象',
|
||||||
prop: 'toName'
|
prop: 'toName'
|
||||||
},{
|
}, {
|
||||||
label: '服务主题',
|
label: '服务主题',
|
||||||
prop: 'serveTheme'
|
prop: 'serveTheme'
|
||||||
},{
|
}, {
|
||||||
label: '服务内容',
|
label: '服务内容',
|
||||||
prop: 'serveContent'
|
prop: 'serveContent'
|
||||||
},{
|
}, {
|
||||||
label: '备注说明',
|
label: '备注说明',
|
||||||
prop: 'bak1'
|
prop: 'bak1'
|
||||||
}]
|
}]
|
||||||
@@ -900,7 +937,7 @@ export default {
|
|||||||
const result = [];
|
const result = [];
|
||||||
const wt = this.obj.serveLabels ? this.obj.serveLabels.split(",") : [];
|
const wt = this.obj.serveLabels ? this.obj.serveLabels.split(",") : [];
|
||||||
wt.forEach((item) => {
|
wt.forEach((item) => {
|
||||||
result.push({ name: item });
|
result.push({name: item});
|
||||||
});
|
});
|
||||||
return result;
|
return result;
|
||||||
},
|
},
|
||||||
@@ -917,13 +954,13 @@ export default {
|
|||||||
for (let j = 0; j < this.arr.length; j++) {
|
for (let j = 0; j < this.arr.length; j++) {
|
||||||
const key = this.arr[j];
|
const key = this.arr[j];
|
||||||
if (this.worktypeDic.hasOwnProperty(key)) {
|
if (this.worktypeDic.hasOwnProperty(key)) {
|
||||||
rel.push({ name: key })
|
rel.push({name: key})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (let i = 0; i < this.tempWorkType.length; i++) {
|
for (let i = 0; i < this.tempWorkType.length; i++) {
|
||||||
const key = this.tempWorkType[i];
|
const key = this.tempWorkType[i];
|
||||||
if (key && !this.worktypeDic.hasOwnProperty(key)) {
|
if (key && !this.worktypeDic.hasOwnProperty(key)) {
|
||||||
rel.push({ name: key });
|
rel.push({name: key});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return rel;
|
return rel;
|
||||||
@@ -937,18 +974,82 @@ export default {
|
|||||||
this.ListAllTalents()
|
this.ListAllTalents()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
workSizeChange() {},
|
async saveLog(row, index, done, loading) {
|
||||||
workCurrentChange() {},
|
console.log(row)
|
||||||
|
let params = {
|
||||||
|
...row,
|
||||||
|
serveId: this.selectUserServeLog.serveId,
|
||||||
|
serveUserId: this.selectUserServeLog.serveUserId,
|
||||||
|
}
|
||||||
|
let resData = await addServeLog(params)
|
||||||
|
done()
|
||||||
|
if (resData.data.code === 200) {
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: "添加成功!",
|
||||||
|
});
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async saveUpdateLog(row, index, done, loading) {
|
||||||
|
let params = {
|
||||||
|
id: row.id,
|
||||||
|
createTime: row.createTime,
|
||||||
|
fromName: row.fromName,
|
||||||
|
toName: row.toName,
|
||||||
|
serveTheme: row.serveTheme,
|
||||||
|
serveContent: row.serveContent,
|
||||||
|
bak1: row.bak1,
|
||||||
|
}
|
||||||
|
let resData = await updateServeLog(params)
|
||||||
|
done()
|
||||||
|
if (resData.data.code === 200) {
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: "修改成功!",
|
||||||
|
});
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
removeLog(row, index, done, loading) {
|
||||||
|
this.$confirm("确定将选择数据删除?", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
return removeServeLog({ids: row.id});
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: "操作成功!",
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
workSizeChange() {
|
||||||
|
},
|
||||||
|
workCurrentChange() {
|
||||||
|
},
|
||||||
|
logSizeChange(pageSize) {
|
||||||
|
this.logPage.pageSize = pageSize;
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
},
|
||||||
|
logCurrentChange(currentPage) {
|
||||||
|
this.logPage.currentPage = currentPage;
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
},
|
||||||
async ListAllTalents() {
|
async ListAllTalents() {
|
||||||
let resData = await getListUserAllTalents()
|
let resData = await getListUserAllTalents()
|
||||||
if(resData.data.code === 200) {
|
if (resData.data.code === 200) {
|
||||||
this.talentsList = resData.data.data
|
this.talentsList = resData.data.data
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
selectPushService(row) {
|
selectPushService(row) {
|
||||||
console.log('点击')
|
console.log('点击')
|
||||||
detail(row.id).then((res) => {
|
detail(row.id).then((res) => {
|
||||||
if(res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
this.selectPushServiceData = res.data.data
|
this.selectPushServiceData = res.data.data
|
||||||
this.PushServiceVisible = true
|
this.PushServiceVisible = true
|
||||||
}
|
}
|
||||||
@@ -961,7 +1062,7 @@ export default {
|
|||||||
},
|
},
|
||||||
async getListAllPolicyTree() {
|
async getListAllPolicyTree() {
|
||||||
let resData = await getListAllPolicy({})
|
let resData = await getListAllPolicy({})
|
||||||
if(resData.data.code === 200) {
|
if (resData.data.code === 200) {
|
||||||
this.listAllPolicyTree = resData.data.data
|
this.listAllPolicyTree = resData.data.data
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -971,16 +1072,16 @@ export default {
|
|||||||
},
|
},
|
||||||
clipStr(str) {
|
clipStr(str) {
|
||||||
const clip = []
|
const clip = []
|
||||||
if(str && str.length > 50) {
|
if (str && str.length > 50) {
|
||||||
for (let i = 0; i < Math.ceil(str.length / 50); i++) {
|
for (let i = 0; i < Math.ceil(str.length / 50); i++) {
|
||||||
clip.push(str.slice(i * 50,i * 50 + 50))
|
clip.push(str.slice(i * 50, i * 50 + 50))
|
||||||
}
|
}
|
||||||
return clip
|
return clip
|
||||||
}
|
}
|
||||||
return [str]
|
return [str]
|
||||||
},
|
},
|
||||||
getLabelList() {
|
getLabelList() {
|
||||||
getLabelList().then( (res) => {
|
getLabelList().then((res) => {
|
||||||
const arr = res.data.data.flatMap(obj => obj.child.map(item => item.concatName));
|
const arr = res.data.data.flatMap(obj => obj.child.map(item => item.concatName));
|
||||||
this.arr = arr.map(concatName => {
|
this.arr = arr.map(concatName => {
|
||||||
this.worktypeDic[concatName] = 1;
|
this.worktypeDic[concatName] = 1;
|
||||||
@@ -998,7 +1099,7 @@ export default {
|
|||||||
getKeyAudience(params) {
|
getKeyAudience(params) {
|
||||||
const _this = this
|
const _this = this
|
||||||
return getServeListTalents(params).then((res) => {
|
return getServeListTalents(params).then((res) => {
|
||||||
if(res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
const {records, current, size, total} = res.data.data
|
const {records, current, size, total} = res.data.data
|
||||||
_this.infoData = records
|
_this.infoData = records
|
||||||
_this.visibleAudience = true
|
_this.visibleAudience = true
|
||||||
@@ -1020,7 +1121,7 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
infoCurrentChange(currentPage) {
|
infoCurrentChange(currentPage) {
|
||||||
const { pageSize, total} = this.infoPage
|
const {pageSize, total} = this.infoPage
|
||||||
this.getKeyAudience({
|
this.getKeyAudience({
|
||||||
pageSize: pageSize,
|
pageSize: pageSize,
|
||||||
current: currentPage,
|
current: currentPage,
|
||||||
@@ -1029,7 +1130,7 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
infoRefreshChange() {
|
infoRefreshChange() {
|
||||||
const { currentPage, pageSize, total} = this.infoPage
|
const {currentPage, pageSize, total} = this.infoPage
|
||||||
this.getKeyAudience({
|
this.getKeyAudience({
|
||||||
pageSize: pageSize,
|
pageSize: pageSize,
|
||||||
current: currentPage,
|
current: currentPage,
|
||||||
@@ -1069,13 +1170,13 @@ export default {
|
|||||||
this.$nextTick(function () {
|
this.$nextTick(function () {
|
||||||
this.$refs.tree.setCurrentKey(groupId);
|
this.$refs.tree.setCurrentKey(groupId);
|
||||||
}); //默认高亮
|
}); //默认高亮
|
||||||
this.nodeClick({ id: groupId });
|
this.nodeClick({id: groupId});
|
||||||
} else {
|
} else {
|
||||||
if (this.treeData.length) {
|
if (this.treeData.length) {
|
||||||
this.$nextTick(function () {
|
this.$nextTick(function () {
|
||||||
this.$refs.tree.setCurrentKey(this.treeData[0].id);
|
this.$refs.tree.setCurrentKey(this.treeData[0].id);
|
||||||
}); //默认高亮第一个
|
}); //默认高亮第一个
|
||||||
this.nodeClick({ id: this.treeData[0].id });
|
this.nodeClick({id: this.treeData[0].id});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.personTotal = res.data.data.sum;
|
this.personTotal = res.data.data.sum;
|
||||||
@@ -1092,8 +1193,8 @@ export default {
|
|||||||
const h = this.$createElement;
|
const h = this.$createElement;
|
||||||
this.$confirm(
|
this.$confirm(
|
||||||
h("div", null, [
|
h("div", null, [
|
||||||
h("p", { style: "font-size: 16px" }, "您确定要删除此分组吗? "),
|
h("p", {style: "font-size: 16px"}, "您确定要删除此分组吗? "),
|
||||||
h("p", { style: "color: red" }, "一旦删除则无法找回"),
|
h("p", {style: "color: red"}, "一旦删除则无法找回"),
|
||||||
]),
|
]),
|
||||||
{
|
{
|
||||||
type: "warning",
|
type: "warning",
|
||||||
@@ -1190,11 +1291,11 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
treeIteration(tree, ids) {
|
treeIteration(tree, ids) {
|
||||||
if( !(tree.length && ids.length) ) return;
|
if (!(tree.length && ids.length)) return;
|
||||||
let arr = []
|
let arr = []
|
||||||
tree.forEach((treeItem) => {
|
tree.forEach((treeItem) => {
|
||||||
treeItem.child.forEach((item) => {
|
treeItem.child.forEach((item) => {
|
||||||
if(ids.some((id) => item.value === id)) {
|
if (ids.some((id) => item.value === id)) {
|
||||||
arr.push([treeItem.value, item.value])
|
arr.push([treeItem.value, item.value])
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -1260,8 +1361,8 @@ export default {
|
|||||||
const h = this.$createElement;
|
const h = this.$createElement;
|
||||||
this.$confirm(
|
this.$confirm(
|
||||||
h("div", null, [
|
h("div", null, [
|
||||||
h("p", { style: "font-size: 16px" }, "您确定要删除此人才吗? "),
|
h("p", {style: "font-size: 16px"}, "您确定要删除此人才吗? "),
|
||||||
h("p", { style: "color: red" }, "一旦删除则无法找回"),
|
h("p", {style: "color: red"}, "一旦删除则无法找回"),
|
||||||
]),
|
]),
|
||||||
{
|
{
|
||||||
type: "warning",
|
type: "warning",
|
||||||
@@ -1314,7 +1415,7 @@ export default {
|
|||||||
const h = this.$createElement;
|
const h = this.$createElement;
|
||||||
this.$confirm(
|
this.$confirm(
|
||||||
h("div", null, [
|
h("div", null, [
|
||||||
h("p", { style: "font-size: 16px" }, "您确定要批量删除选中人才吗? "),
|
h("p", {style: "font-size: 16px"}, "您确定要批量删除选中人才吗? "),
|
||||||
]),
|
]),
|
||||||
{
|
{
|
||||||
type: "warning",
|
type: "warning",
|
||||||
@@ -1470,7 +1571,7 @@ export default {
|
|||||||
).then((res) => {
|
).then((res) => {
|
||||||
const data = res.data.data;
|
const data = res.data.data;
|
||||||
this.page.total = data.total;
|
this.page.total = data.total;
|
||||||
console.log( data.records)
|
console.log(data.records)
|
||||||
this.data = data.records.map((item) => ({
|
this.data = data.records.map((item) => ({
|
||||||
...item, talentsGroupId: item.talentsGroupId.split(',')
|
...item, talentsGroupId: item.talentsGroupId.split(',')
|
||||||
}));
|
}));
|
||||||
@@ -1481,7 +1582,11 @@ export default {
|
|||||||
// 匹配任务和岗位
|
// 匹配任务和岗位
|
||||||
matchWorkStation(row) {
|
matchWorkStation(row) {
|
||||||
console.log('匹配任务和岗位')
|
console.log('匹配任务和岗位')
|
||||||
getMatchWorkStation({serveUserId: row.serveUserId, serveId: this.selectInfo.id, companyId: this.selectInfo.companyId}).then(res => {
|
getMatchWorkStation({
|
||||||
|
serveUserId: row.serveUserId,
|
||||||
|
serveId: this.selectInfo.id,
|
||||||
|
companyId: this.selectInfo.companyId
|
||||||
|
}).then(res => {
|
||||||
const {records, current, size, total} = res.data.data
|
const {records, current, size, total} = res.data.data
|
||||||
this.innerDrawer1 = true
|
this.innerDrawer1 = true
|
||||||
this.workData = records
|
this.workData = records
|
||||||
@@ -1510,7 +1615,14 @@ export default {
|
|||||||
// 服务日志
|
// 服务日志
|
||||||
serveLog(row) {
|
serveLog(row) {
|
||||||
console.log('服务日志')
|
console.log('服务日志')
|
||||||
getMatchServeList({id: row.id, serveId: this.selectInfo.id, companyId: this.selectInfo.companyId, current: 1, size: 10}).then(res => {
|
this.selectUserServeLog = row
|
||||||
|
getMatchServeList({
|
||||||
|
id: row.id,
|
||||||
|
serveId: this.selectInfo.id,
|
||||||
|
companyId: this.selectInfo.companyId,
|
||||||
|
current: this.logPage.currentPage,
|
||||||
|
size: this.logPage.pageSize
|
||||||
|
}).then(res => {
|
||||||
let _this = this;
|
let _this = this;
|
||||||
const {records, current, size, total} = res.data.data
|
const {records, current, size, total} = res.data.data
|
||||||
_this.logData = records
|
_this.logData = records
|
||||||
@@ -1539,12 +1651,12 @@ export default {
|
|||||||
},
|
},
|
||||||
/*查看*/
|
/*查看*/
|
||||||
toWorkMissionDetail(row) {
|
toWorkMissionDetail(row) {
|
||||||
if(row.type == 0) {
|
if (row.type == 0) {
|
||||||
missionDetail(row.missionNo).then((res) => {
|
missionDetail(row.missionNo).then((res) => {
|
||||||
this.viewDrawer = true;
|
this.viewDrawer = true;
|
||||||
this.view = res;
|
this.view = res;
|
||||||
});
|
});
|
||||||
} else if(row.type == 1) {
|
} else if (row.type == 1) {
|
||||||
workDetail(row.id).then(res => {
|
workDetail(row.id).then(res => {
|
||||||
this.workViewDrawer = true;
|
this.workViewDrawer = true;
|
||||||
this.workViewModel = res;
|
this.workViewModel = res;
|
||||||
@@ -1593,11 +1705,11 @@ export default {
|
|||||||
},
|
},
|
||||||
addNewLog() {
|
addNewLog() {
|
||||||
console.log('add log')
|
console.log('add log')
|
||||||
this.$router.push({ name: '添加/修改日志log', params: { type: 'add', id: null } })
|
this.$router.push({name: '添加/修改日志log', params: {type: 'add', id: null}})
|
||||||
},
|
},
|
||||||
editLogInfo() {
|
editLogInfo() {
|
||||||
console.log('edit log')
|
console.log('edit log')
|
||||||
this.$router.push({ name: '添加/修改日志log', params: { type: 'edit', id: null } })
|
this.$router.push({name: '添加/修改日志log', params: {type: 'edit', id: null}})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -402,6 +402,22 @@ export default {
|
|||||||
],
|
],
|
||||||
span: 24,
|
span: 24,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: "求职意愿",
|
||||||
|
prop: "willingJob",
|
||||||
|
span: 24,
|
||||||
|
rules: [
|
||||||
|
{required: true, message: "请输入求职意愿", trigger: "blur"},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "期望薪资",
|
||||||
|
prop: "wage",
|
||||||
|
span: 24,
|
||||||
|
rules: [
|
||||||
|
{required: true, message: "请输入期望薪资", trigger: "blur"},
|
||||||
|
],
|
||||||
|
},
|
||||||
// {
|
// {
|
||||||
// label: "经办时间",
|
// label: "经办时间",
|
||||||
// prop: "aae036",
|
// prop: "aae036",
|
||||||
|
|||||||
@@ -137,6 +137,9 @@ let leftUserOptions = {
|
|||||||
}, {
|
}, {
|
||||||
label: '手机号',
|
label: '手机号',
|
||||||
prop: 'telphone',
|
prop: 'telphone',
|
||||||
|
}, {
|
||||||
|
label: "求职意愿",
|
||||||
|
prop: "willingJob",
|
||||||
}, {
|
}, {
|
||||||
label: "民族",
|
label: "民族",
|
||||||
prop: "aac005",
|
prop: "aac005",
|
||||||
@@ -436,13 +439,18 @@ export default {
|
|||||||
async getRightSearchByUserId() {
|
async getRightSearchByUserId() {
|
||||||
const {currentPage, size} = this.rightPages
|
const {currentPage, size} = this.rightPages
|
||||||
const ids = this.leftUserSelections.map(item => item.userId).join(',');
|
const ids = this.leftUserSelections.map(item => item.userId).join(',');
|
||||||
|
const willingJobs = this.leftUserSelections.map(item => item.willingJob);
|
||||||
const createTime = Date.now() + 3000
|
const createTime = Date.now() + 3000
|
||||||
this.rightLoading = true
|
this.rightLoading = true
|
||||||
let params = {
|
let params = {
|
||||||
ids, current: currentPage,
|
ids, current: currentPage,
|
||||||
size,
|
size,
|
||||||
}
|
}
|
||||||
let resData = await getSearchAllByUserId(params)
|
let paramsBody = {
|
||||||
|
willingJobs: willingJobs
|
||||||
|
}
|
||||||
|
console.log(params, paramsBody)
|
||||||
|
let resData = await getSearchAllByUserId(params, paramsBody)
|
||||||
if (resData.data.code === 200) {
|
if (resData.data.code === 200) {
|
||||||
const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
|
|||||||
@@ -34,7 +34,8 @@
|
|||||||
<div class="footer" style="padding-left: 6px">
|
<div class="footer" style="padding-left: 6px">
|
||||||
<el-button type="text" icon="el-icon-plus"
|
<el-button type="text" icon="el-icon-plus"
|
||||||
v-if="vaildData(permission.tenant_main_serve_index_groupadd, false)"
|
v-if="vaildData(permission.tenant_main_serve_index_groupadd, false)"
|
||||||
@click="updateGroups('add')">新建分组</el-button>
|
@click="updateGroups('add')">新建分组
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
</div>
|
</div>
|
||||||
@@ -68,7 +69,9 @@
|
|||||||
<template slot="worktypes" slot-scope="{ row }">
|
<template slot="worktypes" slot-scope="{ row }">
|
||||||
<el-tooltip effect="dark" :content="row.worktypes" placement="top">
|
<el-tooltip effect="dark" :content="row.worktypes" placement="top">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.worktypes)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.worktypes)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div>{{ row.worktypes | ellipsis }}</div>
|
<div>{{ row.worktypes | ellipsis }}</div>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
@@ -86,16 +89,21 @@
|
|||||||
<template slot="resume" slot-scope="{ row }">
|
<template slot="resume" slot-scope="{ row }">
|
||||||
<div>
|
<div>
|
||||||
<el-button type="text" size="mini" @click="$refs.resume.openDialog(row)"
|
<el-button type="text" size="mini" @click="$refs.resume.openDialog(row)"
|
||||||
v-if="row.userId && row.userId !== '0'">查看简历</el-button>
|
v-if="row.userId && row.userId !== '0'">查看简历
|
||||||
|
</el-button>
|
||||||
<div v-else>暂无简历</div>
|
<div v-else>暂无简历</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template slot="serveLabels" slot-scope="{ row }">
|
<template slot="serveLabels" slot-scope="{ row }">
|
||||||
<el-tooltip effect="dark" placement="top">
|
<el-tooltip effect="dark" placement="top">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.serveLabels)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.serveLabels)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
</div>
|
</div>
|
||||||
<span>{{ row.serveLabels.length > 20 ? `${row.serveLabels.substring(0, 20)}...` : row.serveLabels}}</span>
|
</div>
|
||||||
|
<span>{{
|
||||||
|
row.serveLabels.length > 20 ? `${row.serveLabels.substring(0, 20)}...` : row.serveLabels
|
||||||
|
}}</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
<!--/自定义列-->
|
<!--/自定义列-->
|
||||||
@@ -105,12 +113,16 @@
|
|||||||
</template>
|
</template>
|
||||||
<!--自定义按钮-->
|
<!--自定义按钮-->
|
||||||
<template slot="menuLeft">
|
<template slot="menuLeft">
|
||||||
<el-button type="primary" size="small" icon="el-icon-delete" @click="() => { $refs.crud.rowAdd(); selectPolicyTree = []}"
|
<el-button type="primary" size="small" icon="el-icon-delete"
|
||||||
|
@click="() => { $refs.crud.rowAdd(); selectPolicyTree = []}"
|
||||||
v-if="vaildData(permission.tenant_main_serve_index_add, false)">
|
v-if="vaildData(permission.tenant_main_serve_index_add, false)">
|
||||||
新增</el-button>
|
新增
|
||||||
|
</el-button>
|
||||||
<el-button type="danger" size="small" icon="el-icon-delete" @click="handleDelete"
|
<el-button type="danger" size="small" icon="el-icon-delete" @click="handleDelete"
|
||||||
:disabled="!selectionList.length" plain v-show="vaildData(permission.tenant_talents_groupdelete, false)">
|
:disabled="!selectionList.length" plain
|
||||||
删除</el-button>
|
v-show="vaildData(permission.tenant_talents_groupdelete, false)">
|
||||||
|
删除
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
<template slot="name" slot-scope="{row}">
|
<template slot="name" slot-scope="{row}">
|
||||||
<span>{{ row.name }}</span>
|
<span>{{ row.name }}</span>
|
||||||
@@ -122,6 +134,7 @@
|
|||||||
:options="listAllPolicyTree"
|
:options="listAllPolicyTree"
|
||||||
:props="{ expandTrigger: 'hover', multiple: true, label: 'name', value: 'value', children: 'child'}"
|
:props="{ expandTrigger: 'hover', multiple: true, label: 'name', value: 'value', children: 'child'}"
|
||||||
@change="handleChange"
|
@change="handleChange"
|
||||||
|
filterable
|
||||||
></el-cascader>
|
></el-cascader>
|
||||||
</template>
|
</template>
|
||||||
<!--/自定义按钮-->
|
<!--/自定义按钮-->
|
||||||
@@ -131,26 +144,30 @@
|
|||||||
size="small"
|
size="small"
|
||||||
v-show="vaildData(permission.tenant_main_serve_index_pushserve, false)"
|
v-show="vaildData(permission.tenant_main_serve_index_pushserve, false)"
|
||||||
@click="selectPushService(row)"
|
@click="selectPushService(row)"
|
||||||
>推送服务</el-button>
|
>推送服务
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="showKeyAudience(row)"
|
@click="showKeyAudience(row)"
|
||||||
>服务详情</el-button>
|
>服务详情
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
v-if="row.status == 0"
|
v-if="row.status == 0"
|
||||||
icon="el-icon-video-play"
|
icon="el-icon-video-play"
|
||||||
size="small"
|
size="small"
|
||||||
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
||||||
@click="playServe(row)"
|
@click="playServe(row)"
|
||||||
>启用</el-button>
|
>启用
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
v-if="row.status == 1"
|
v-if="row.status == 1"
|
||||||
icon="el-icon-video-pause"
|
icon="el-icon-video-pause"
|
||||||
size="small"
|
size="small"
|
||||||
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
v-show="vaildData(permission.tenant_main_serve_index_off, false)"
|
||||||
@click="pauseServe(row)"
|
@click="pauseServe(row)"
|
||||||
>关闭</el-button>
|
>关闭
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
<template slot="talentsNamesForm" slot-scope="{row}">
|
<template slot="talentsNamesForm" slot-scope="{row}">
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
@@ -158,7 +175,8 @@
|
|||||||
icon="el-icon-video-pause"
|
icon="el-icon-video-pause"
|
||||||
size="small"
|
size="small"
|
||||||
@click="pauseServe(row)"
|
@click="pauseServe(row)"
|
||||||
>关闭</el-button>
|
>关闭
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
<!--/父子表-->
|
<!--/父子表-->
|
||||||
</avue-crud>
|
</avue-crud>
|
||||||
@@ -211,17 +229,20 @@
|
|||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="matchWorkStation(row)"
|
@click="matchWorkStation(row)"
|
||||||
>匹配任务/岗位</el-button>
|
>匹配任务/岗位
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="matchPolicy(row)"
|
@click="matchPolicy(row)"
|
||||||
>匹配政策</el-button>
|
>匹配政策
|
||||||
|
</el-button>
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="serveLog(row)"
|
@click="serveLog(row)"
|
||||||
>服务日志</el-button>
|
>服务日志
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</avue-crud>
|
</avue-crud>
|
||||||
<el-drawer
|
<el-drawer
|
||||||
@@ -238,14 +259,15 @@
|
|||||||
@current-change="workCurrentChange"
|
@current-change="workCurrentChange"
|
||||||
>
|
>
|
||||||
<template slot="missionDesc" slot-scope="{ row }">
|
<template slot="missionDesc" slot-scope="{ row }">
|
||||||
<TextTooltip :content="row.missionDesc" ></TextTooltip>
|
<TextTooltip :content="row.missionDesc"></TextTooltip>
|
||||||
</template>
|
</template>
|
||||||
<template slot-scope="{row,index}" slot="menu">
|
<template slot-scope="{row,index}" slot="menu">
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
icon="el-icon-document"
|
icon="el-icon-document"
|
||||||
size="small"
|
size="small"
|
||||||
@click="toWorkMissionDetail(row)"
|
@click="toWorkMissionDetail(row)"
|
||||||
>查看详情</el-button>
|
>查看详情
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</avue-crud>
|
</avue-crud>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
@@ -265,22 +287,29 @@
|
|||||||
<template slot="policyContent" slot-scope="{ row }">
|
<template slot="policyContent" slot-scope="{ row }">
|
||||||
<el-tooltip class="item" effect="dark" placement="top-start">
|
<el-tooltip class="item" effect="dark" placement="top-start">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.policyContent)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.policyContent)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
</div>
|
</div>
|
||||||
<span>{{ row.policyContent.length > 50 ? row.policyContent.substring(0, 50) : row.policyContent}}</span>
|
</div>
|
||||||
|
<span>{{ row.policyContent.length > 50 ? row.policyContent.substring(0, 50) : row.policyContent }}</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
<template slot="labelName" slot-scope="{ row }">
|
<template slot="labelName" slot-scope="{ row }">
|
||||||
<el-tooltip class="item" effect="dark" placement="top-start">
|
<el-tooltip class="item" effect="dark" placement="top-start">
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div v-for="(item, index) in clipStr(row.labelName)" :key="index"><div>{{item}}</div></div>
|
<div v-for="(item, index) in clipStr(row.labelName)" :key="index">
|
||||||
|
<div>{{ item }}</div>
|
||||||
</div>
|
</div>
|
||||||
<span>{{ row.labelName.length > 50 ? row.labelName.substring(0, 50) : row.labelName}}</span>
|
</div>
|
||||||
|
<span>{{ row.labelName.length > 50 ? row.labelName.substring(0, 50) : row.labelName }}</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
<template slot="labelNameForm" slot-scope="{row}">
|
<template slot="labelNameForm" slot-scope="{row}">
|
||||||
<div>
|
<div>
|
||||||
<el-tag style="margin: 4px 10px" v-for="(item, index) in row.labelName.split(',')" :key="index">{{ item }}</el-tag>
|
<el-tag style="margin: 4px 10px" v-for="(item, index) in row.labelName.split(',')" :key="index">{{
|
||||||
|
item
|
||||||
|
}}
|
||||||
|
</el-tag>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -310,6 +339,9 @@
|
|||||||
<avue-crud
|
<avue-crud
|
||||||
:data="logData"
|
:data="logData"
|
||||||
:option="logOption"
|
:option="logOption"
|
||||||
|
@row-save="saveLog"
|
||||||
|
@row-update="saveUpdateLog"
|
||||||
|
@row-del="removeLog"
|
||||||
:page.sync="logPage"
|
:page.sync="logPage"
|
||||||
@size-change="logSizeChange"
|
@size-change="logSizeChange"
|
||||||
@current-change="logCurrentChange"
|
@current-change="logCurrentChange"
|
||||||
@@ -330,7 +362,7 @@
|
|||||||
:visible.sync="PushServiceVisible"
|
:visible.sync="PushServiceVisible"
|
||||||
:rowData="selectPushServiceData"
|
:rowData="selectPushServiceData"
|
||||||
></PushService>
|
></PushService>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
@@ -348,26 +380,30 @@ import {
|
|||||||
getMatchPolicy,
|
getMatchPolicy,
|
||||||
getMatchServeList,
|
getMatchServeList,
|
||||||
getListAllPolicy,
|
getListAllPolicy,
|
||||||
getListAllTalents
|
getListAllTalents,
|
||||||
|
addServeLog,
|
||||||
|
updateServeLog,
|
||||||
|
removeServeLog
|
||||||
} from "@/api/tenant/serve";
|
} from "@/api/tenant/serve";
|
||||||
import { detail as missionDetail } from "@/api/tenant/mission";
|
import {detail as missionDetail} from "@/api/tenant/mission";
|
||||||
import { detail as workDetail } from "@/api/tenant/postzp";
|
import {detail as workDetail} from "@/api/tenant/postzp";
|
||||||
import {getLabelList, getWorkTypes} from "@/api/tenant/common";
|
import {getLabelList, getWorkTypes} from "@/api/tenant/common";
|
||||||
import { mapGetters } from "vuex";
|
import {mapGetters} from "vuex";
|
||||||
import addGroups from "./Dialog/addGroups";
|
import addGroups from "./Dialog/addGroups";
|
||||||
import transferGroups from "./Dialog/transferGroups";
|
import transferGroups from "./Dialog/transferGroups";
|
||||||
import Resume from "@/components/resume/index";
|
import Resume from "@/components/resume/index";
|
||||||
import { check18IdCardNo, isvalidatemobile, isExcel } from "@/util/validate";
|
import {check18IdCardNo, isvalidatemobile, isExcel} from "@/util/validate";
|
||||||
import { getTemplate } from "@/api/resource/template";
|
import {getTemplate} from "@/api/resource/template";
|
||||||
import ied from "@/views/util/import-error-dialog";
|
import ied from "@/views/util/import-error-dialog";
|
||||||
import { excelAccept } from "@/common/accept";
|
import {excelAccept} from "@/common/accept";
|
||||||
import missionView from "../../mission/Table/missionView.vue";
|
import missionView from "../../mission/Table/missionView.vue";
|
||||||
import workView from "../../works/Table/missionView.vue"
|
import workView from "../../works/Table/missionView.vue"
|
||||||
import {serviceType} from "@/common/dic";
|
import {serviceType} from "@/common/dic";
|
||||||
import Tinymce from "@/components/Tinymce";
|
import Tinymce from "@/components/Tinymce";
|
||||||
import { deepClone } from "@/util/util";
|
import {deepClone} from "@/util/util";
|
||||||
import PushService from "@/views/tenant/main/serve/Dialog/pushService.vue";
|
import PushService from "@/views/tenant/main/serve/Dialog/pushService.vue";
|
||||||
import TextTooltip from "@/components/text-tooltip/index.vue";
|
import TextTooltip from "@/components/text-tooltip/index.vue";
|
||||||
|
|
||||||
const page = {
|
const page = {
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
@@ -422,7 +458,7 @@ export default {
|
|||||||
personTotal: 0,
|
personTotal: 0,
|
||||||
treeData: [],
|
treeData: [],
|
||||||
tenantId: "",
|
tenantId: "",
|
||||||
page: Object.assign({} ,page),
|
page: Object.assign({}, page),
|
||||||
tempWorkType: [],
|
tempWorkType: [],
|
||||||
worktypeDic: {},
|
worktypeDic: {},
|
||||||
arr: [],//////
|
arr: [],//////
|
||||||
@@ -461,18 +497,19 @@ export default {
|
|||||||
workData: [],
|
workData: [],
|
||||||
policyData: [],
|
policyData: [],
|
||||||
logData: [],
|
logData: [],
|
||||||
infoPage: Object.assign({} ,page),
|
infoPage: Object.assign({}, page),
|
||||||
workPage: Object.assign({} ,page),
|
workPage: Object.assign({}, page),
|
||||||
policyPage: Object.assign({} ,page),
|
policyPage: Object.assign({}, page),
|
||||||
logPage: Object.assign({} ,page),
|
logPage: Object.assign({}, page),
|
||||||
obj: {},
|
obj: {},
|
||||||
excelForm: { isCovered: 1 },
|
excelForm: {isCovered: 1},
|
||||||
listAllPolicyTree: [],
|
listAllPolicyTree: [],
|
||||||
selectPolicyTree: [],
|
selectPolicyTree: [],
|
||||||
talentsList: []
|
talentsList: [],
|
||||||
|
selectUserServeLog: null,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
components: { addGroups, transferGroups, Resume, ied, missionView, workView, Tinymce, PushService, TextTooltip},
|
components: {addGroups, transferGroups, Resume, ied, missionView, workView, Tinymce, PushService, TextTooltip},
|
||||||
watch: {},
|
watch: {},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(["permission"]),
|
...mapGetters(["permission"]),
|
||||||
@@ -480,8 +517,8 @@ export default {
|
|||||||
return {
|
return {
|
||||||
addBtn: this.vaildData(this.permission.tenant_main_serve_index_add, false),
|
addBtn: this.vaildData(this.permission.tenant_main_serve_index_add, false),
|
||||||
viewBtn: true,
|
viewBtn: true,
|
||||||
delBtn: this.vaildData(this.permission.tenant_main_serve_index_del,false),
|
delBtn: this.vaildData(this.permission.tenant_main_serve_index_del, false),
|
||||||
editBtn: this.vaildData(this.permission.tenant_main_serve_index_edit, false ),
|
editBtn: this.vaildData(this.permission.tenant_main_serve_index_edit, false),
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
ids() {
|
ids() {
|
||||||
@@ -686,7 +723,7 @@ export default {
|
|||||||
indexLabel: "序号",
|
indexLabel: "序号",
|
||||||
refreshBtn: false,
|
refreshBtn: false,
|
||||||
height: '100',
|
height: '100',
|
||||||
viewBtn:true,
|
viewBtn: true,
|
||||||
dialogType: "drawer",
|
dialogType: "drawer",
|
||||||
column: [{
|
column: [{
|
||||||
label: '政策名称',
|
label: '政策名称',
|
||||||
@@ -726,7 +763,7 @@ export default {
|
|||||||
span: 12,
|
span: 12,
|
||||||
hide: true,
|
hide: true,
|
||||||
display: true,
|
display: true,
|
||||||
dicData: [{ name: "有效", value: 1 }, { name: "无效", value: 0 }],
|
dicData: [{name: "有效", value: 1}, {name: "无效", value: 0}],
|
||||||
props: {
|
props: {
|
||||||
label: "name",
|
label: "name",
|
||||||
value: "value",
|
value: "value",
|
||||||
@@ -832,20 +869,23 @@ export default {
|
|||||||
height: '100',
|
height: '100',
|
||||||
column: [{
|
column: [{
|
||||||
label: '服务时间',
|
label: '服务时间',
|
||||||
prop: 'createTime'
|
prop: 'createTime',
|
||||||
},{
|
type: 'datetime',
|
||||||
|
format: "yyyy-MM-dd HH:mm:ss",
|
||||||
|
valueFormat: "yyyy-MM-dd HH:mm:ss",
|
||||||
|
}, {
|
||||||
label: '服务发起人',
|
label: '服务发起人',
|
||||||
prop: 'fromName'
|
prop: 'fromName'
|
||||||
},{
|
}, {
|
||||||
label: '服务对象',
|
label: '服务对象',
|
||||||
prop: 'toName'
|
prop: 'toName'
|
||||||
},{
|
}, {
|
||||||
label: '服务主题',
|
label: '服务主题',
|
||||||
prop: 'serveTheme'
|
prop: 'serveTheme'
|
||||||
},{
|
}, {
|
||||||
label: '服务内容',
|
label: '服务内容',
|
||||||
prop: 'serveContent'
|
prop: 'serveContent'
|
||||||
},{
|
}, {
|
||||||
label: '备注说明',
|
label: '备注说明',
|
||||||
prop: 'bak1'
|
prop: 'bak1'
|
||||||
}]
|
}]
|
||||||
@@ -900,7 +940,7 @@ export default {
|
|||||||
const result = [];
|
const result = [];
|
||||||
const wt = this.obj.serveLabels ? this.obj.serveLabels.split(",") : [];
|
const wt = this.obj.serveLabels ? this.obj.serveLabels.split(",") : [];
|
||||||
wt.forEach((item) => {
|
wt.forEach((item) => {
|
||||||
result.push({ name: item });
|
result.push({name: item});
|
||||||
});
|
});
|
||||||
return result;
|
return result;
|
||||||
},
|
},
|
||||||
@@ -917,13 +957,13 @@ export default {
|
|||||||
for (let j = 0; j < this.arr.length; j++) {
|
for (let j = 0; j < this.arr.length; j++) {
|
||||||
const key = this.arr[j];
|
const key = this.arr[j];
|
||||||
if (this.worktypeDic.hasOwnProperty(key)) {
|
if (this.worktypeDic.hasOwnProperty(key)) {
|
||||||
rel.push({ name: key })
|
rel.push({name: key})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (let i = 0; i < this.tempWorkType.length; i++) {
|
for (let i = 0; i < this.tempWorkType.length; i++) {
|
||||||
const key = this.tempWorkType[i];
|
const key = this.tempWorkType[i];
|
||||||
if (key && !this.worktypeDic.hasOwnProperty(key)) {
|
if (key && !this.worktypeDic.hasOwnProperty(key)) {
|
||||||
rel.push({ name: key });
|
rel.push({name: key});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return rel;
|
return rel;
|
||||||
@@ -937,18 +977,81 @@ export default {
|
|||||||
this.ListAllTalents()
|
this.ListAllTalents()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
workSizeChange() {},
|
async saveLog(row, index, done, loading) {
|
||||||
workCurrentChange() {},
|
let params = {
|
||||||
|
...row,
|
||||||
|
serveId: this.selectUserServeLog.serveId,
|
||||||
|
serveUserId: this.selectUserServeLog.serveUserId,
|
||||||
|
}
|
||||||
|
let resData = await addServeLog(params)
|
||||||
|
done()
|
||||||
|
if (resData.data.code === 200) {
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: "添加成功!",
|
||||||
|
});
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async saveUpdateLog(row, index, done, loading) {
|
||||||
|
let params = {
|
||||||
|
id: row.id,
|
||||||
|
createTime: row.createTime,
|
||||||
|
fromName: row.fromName,
|
||||||
|
toName: row.toName,
|
||||||
|
serveTheme: row.serveTheme,
|
||||||
|
serveContent: row.serveContent,
|
||||||
|
bak1: row.bak1,
|
||||||
|
}
|
||||||
|
let resData = await updateServeLog(params)
|
||||||
|
done()
|
||||||
|
if (resData.data.code === 200) {
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: "修改成功!",
|
||||||
|
});
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
removeLog(row, index, done, loading) {
|
||||||
|
this.$confirm("确定将选择数据删除?", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
return removeServeLog({ids: row.id});
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: "操作成功!",
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
workSizeChange() {
|
||||||
|
},
|
||||||
|
workCurrentChange() {
|
||||||
|
},
|
||||||
|
logSizeChange(pageSize) {
|
||||||
|
this.logPage.pageSize = pageSize;
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
},
|
||||||
|
logCurrentChange(currentPage) {
|
||||||
|
this.logPage.currentPage = currentPage;
|
||||||
|
this.serveLog(this.selectUserServeLog)
|
||||||
|
},
|
||||||
async ListAllTalents() {
|
async ListAllTalents() {
|
||||||
let resData = await getListAllTalents()
|
let resData = await getListAllTalents()
|
||||||
if(resData.data.code === 200) {
|
if (resData.data.code === 200) {
|
||||||
this.talentsList = resData.data.data
|
this.talentsList = resData.data.data
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
selectPushService(row) {
|
selectPushService(row) {
|
||||||
console.log('点击')
|
console.log('点击')
|
||||||
detail(row.id).then((res) => {
|
detail(row.id).then((res) => {
|
||||||
if(res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
this.selectPushServiceData = res.data.data
|
this.selectPushServiceData = res.data.data
|
||||||
this.PushServiceVisible = true
|
this.PushServiceVisible = true
|
||||||
}
|
}
|
||||||
@@ -961,7 +1064,7 @@ export default {
|
|||||||
},
|
},
|
||||||
async getListAllPolicyTree() {
|
async getListAllPolicyTree() {
|
||||||
let resData = await getListAllPolicy({})
|
let resData = await getListAllPolicy({})
|
||||||
if(resData.data.code === 200) {
|
if (resData.data.code === 200) {
|
||||||
this.listAllPolicyTree = resData.data.data
|
this.listAllPolicyTree = resData.data.data
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -971,16 +1074,16 @@ export default {
|
|||||||
},
|
},
|
||||||
clipStr(str) {
|
clipStr(str) {
|
||||||
const clip = []
|
const clip = []
|
||||||
if(str && str.length > 50) {
|
if (str && str.length > 50) {
|
||||||
for (let i = 0; i < Math.ceil(str.length / 50); i++) {
|
for (let i = 0; i < Math.ceil(str.length / 50); i++) {
|
||||||
clip.push(str.slice(i * 50,i * 50 + 50))
|
clip.push(str.slice(i * 50, i * 50 + 50))
|
||||||
}
|
}
|
||||||
return clip
|
return clip
|
||||||
}
|
}
|
||||||
return [str]
|
return [str]
|
||||||
},
|
},
|
||||||
getLabelList() {
|
getLabelList() {
|
||||||
getLabelList().then( (res) => {
|
getLabelList().then((res) => {
|
||||||
const arr = res.data.data.flatMap(obj => obj.child.map(item => item.concatName));
|
const arr = res.data.data.flatMap(obj => obj.child.map(item => item.concatName));
|
||||||
this.arr = arr.map(concatName => {
|
this.arr = arr.map(concatName => {
|
||||||
this.worktypeDic[concatName] = 1;
|
this.worktypeDic[concatName] = 1;
|
||||||
@@ -998,7 +1101,7 @@ export default {
|
|||||||
getKeyAudience(params) {
|
getKeyAudience(params) {
|
||||||
const _this = this
|
const _this = this
|
||||||
return getServeListTalents(params).then((res) => {
|
return getServeListTalents(params).then((res) => {
|
||||||
if(res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
const {records, current, size, total} = res.data.data
|
const {records, current, size, total} = res.data.data
|
||||||
_this.infoData = records
|
_this.infoData = records
|
||||||
_this.visibleAudience = true
|
_this.visibleAudience = true
|
||||||
@@ -1020,7 +1123,7 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
infoCurrentChange(currentPage) {
|
infoCurrentChange(currentPage) {
|
||||||
const { pageSize, total} = this.infoPage
|
const {pageSize, total} = this.infoPage
|
||||||
this.getKeyAudience({
|
this.getKeyAudience({
|
||||||
pageSize: pageSize,
|
pageSize: pageSize,
|
||||||
current: currentPage,
|
current: currentPage,
|
||||||
@@ -1029,7 +1132,7 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
infoRefreshChange() {
|
infoRefreshChange() {
|
||||||
const { currentPage, pageSize, total} = this.infoPage
|
const {currentPage, pageSize, total} = this.infoPage
|
||||||
this.getKeyAudience({
|
this.getKeyAudience({
|
||||||
pageSize: pageSize,
|
pageSize: pageSize,
|
||||||
current: currentPage,
|
current: currentPage,
|
||||||
@@ -1069,13 +1172,13 @@ export default {
|
|||||||
this.$nextTick(function () {
|
this.$nextTick(function () {
|
||||||
this.$refs.tree.setCurrentKey(groupId);
|
this.$refs.tree.setCurrentKey(groupId);
|
||||||
}); //默认高亮
|
}); //默认高亮
|
||||||
this.nodeClick({ id: groupId });
|
this.nodeClick({id: groupId});
|
||||||
} else {
|
} else {
|
||||||
if (this.treeData.length) {
|
if (this.treeData.length) {
|
||||||
this.$nextTick(function () {
|
this.$nextTick(function () {
|
||||||
this.$refs.tree.setCurrentKey(this.treeData[0].id);
|
this.$refs.tree.setCurrentKey(this.treeData[0].id);
|
||||||
}); //默认高亮第一个
|
}); //默认高亮第一个
|
||||||
this.nodeClick({ id: this.treeData[0].id });
|
this.nodeClick({id: this.treeData[0].id});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.personTotal = res.data.data.sum;
|
this.personTotal = res.data.data.sum;
|
||||||
@@ -1092,8 +1195,8 @@ export default {
|
|||||||
const h = this.$createElement;
|
const h = this.$createElement;
|
||||||
this.$confirm(
|
this.$confirm(
|
||||||
h("div", null, [
|
h("div", null, [
|
||||||
h("p", { style: "font-size: 16px" }, "您确定要删除此分组吗? "),
|
h("p", {style: "font-size: 16px"}, "您确定要删除此分组吗? "),
|
||||||
h("p", { style: "color: red" }, "一旦删除则无法找回"),
|
h("p", {style: "color: red"}, "一旦删除则无法找回"),
|
||||||
]),
|
]),
|
||||||
{
|
{
|
||||||
type: "warning",
|
type: "warning",
|
||||||
@@ -1190,11 +1293,11 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
treeIteration(tree, ids) {
|
treeIteration(tree, ids) {
|
||||||
if( !(tree.length && ids.length) ) return;
|
if (!(tree.length && ids.length)) return;
|
||||||
let arr = []
|
let arr = []
|
||||||
tree.forEach((treeItem) => {
|
tree.forEach((treeItem) => {
|
||||||
treeItem.child.forEach((item) => {
|
treeItem.child.forEach((item) => {
|
||||||
if(ids.some((id) => item.value === id)) {
|
if (ids.some((id) => item.value === id)) {
|
||||||
arr.push([treeItem.value, item.value])
|
arr.push([treeItem.value, item.value])
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -1260,8 +1363,8 @@ export default {
|
|||||||
const h = this.$createElement;
|
const h = this.$createElement;
|
||||||
this.$confirm(
|
this.$confirm(
|
||||||
h("div", null, [
|
h("div", null, [
|
||||||
h("p", { style: "font-size: 16px" }, "您确定要删除此人才吗? "),
|
h("p", {style: "font-size: 16px"}, "您确定要删除此人才吗? "),
|
||||||
h("p", { style: "color: red" }, "一旦删除则无法找回"),
|
h("p", {style: "color: red"}, "一旦删除则无法找回"),
|
||||||
]),
|
]),
|
||||||
{
|
{
|
||||||
type: "warning",
|
type: "warning",
|
||||||
@@ -1314,7 +1417,7 @@ export default {
|
|||||||
const h = this.$createElement;
|
const h = this.$createElement;
|
||||||
this.$confirm(
|
this.$confirm(
|
||||||
h("div", null, [
|
h("div", null, [
|
||||||
h("p", { style: "font-size: 16px" }, "您确定要批量删除选中人才吗? "),
|
h("p", {style: "font-size: 16px"}, "您确定要批量删除选中人才吗? "),
|
||||||
]),
|
]),
|
||||||
{
|
{
|
||||||
type: "warning",
|
type: "warning",
|
||||||
@@ -1470,7 +1573,7 @@ export default {
|
|||||||
).then((res) => {
|
).then((res) => {
|
||||||
const data = res.data.data;
|
const data = res.data.data;
|
||||||
this.page.total = data.total;
|
this.page.total = data.total;
|
||||||
console.log( data.records)
|
console.log(data.records)
|
||||||
this.data = data.records.map((item) => ({
|
this.data = data.records.map((item) => ({
|
||||||
...item, talentsGroupId: item.talentsGroupId.split(',')
|
...item, talentsGroupId: item.talentsGroupId.split(',')
|
||||||
}));
|
}));
|
||||||
@@ -1481,7 +1584,11 @@ export default {
|
|||||||
// 匹配任务和岗位
|
// 匹配任务和岗位
|
||||||
matchWorkStation(row) {
|
matchWorkStation(row) {
|
||||||
console.log('匹配任务和岗位')
|
console.log('匹配任务和岗位')
|
||||||
getMatchWorkStation({serveUserId: row.serveUserId, serveId: this.selectInfo.id, companyId: this.selectInfo.companyId}).then(res => {
|
getMatchWorkStation({
|
||||||
|
serveUserId: row.serveUserId,
|
||||||
|
serveId: this.selectInfo.id,
|
||||||
|
companyId: this.selectInfo.companyId
|
||||||
|
}).then(res => {
|
||||||
const {records, current, size, total} = res.data.data
|
const {records, current, size, total} = res.data.data
|
||||||
this.innerDrawer1 = true
|
this.innerDrawer1 = true
|
||||||
this.workData = records
|
this.workData = records
|
||||||
@@ -1510,7 +1617,14 @@ export default {
|
|||||||
// 服务日志
|
// 服务日志
|
||||||
serveLog(row) {
|
serveLog(row) {
|
||||||
console.log('服务日志')
|
console.log('服务日志')
|
||||||
getMatchServeList({id: row.id, serveId: this.selectInfo.id, companyId: this.selectInfo.companyId, current: 1, size: 10}).then(res => {
|
this.selectUserServeLog = row
|
||||||
|
getMatchServeList({
|
||||||
|
id: row.id,
|
||||||
|
serveId: this.selectInfo.id,
|
||||||
|
companyId: this.selectInfo.companyId,
|
||||||
|
current: this.logPage.currentPage,
|
||||||
|
size: this.logPage.pageSize
|
||||||
|
}).then(res => {
|
||||||
let _this = this;
|
let _this = this;
|
||||||
const {records, current, size, total} = res.data.data
|
const {records, current, size, total} = res.data.data
|
||||||
_this.logData = records
|
_this.logData = records
|
||||||
@@ -1539,12 +1653,12 @@ export default {
|
|||||||
},
|
},
|
||||||
/*查看*/
|
/*查看*/
|
||||||
toWorkMissionDetail(row) {
|
toWorkMissionDetail(row) {
|
||||||
if(row.type == 0) {
|
if (row.type == 0) {
|
||||||
missionDetail(row.missionNo).then((res) => {
|
missionDetail(row.missionNo).then((res) => {
|
||||||
this.viewDrawer = true;
|
this.viewDrawer = true;
|
||||||
this.view = res;
|
this.view = res;
|
||||||
});
|
});
|
||||||
} else if(row.type == 1) {
|
} else if (row.type == 1) {
|
||||||
workDetail(row.id).then(res => {
|
workDetail(row.id).then(res => {
|
||||||
this.workViewDrawer = true;
|
this.workViewDrawer = true;
|
||||||
this.workViewModel = res;
|
this.workViewModel = res;
|
||||||
@@ -1593,11 +1707,11 @@ export default {
|
|||||||
},
|
},
|
||||||
addNewLog() {
|
addNewLog() {
|
||||||
console.log('add log')
|
console.log('add log')
|
||||||
this.$router.push({ name: '添加/修改日志log', params: { type: 'add', id: null } })
|
this.$router.push({name: '添加/修改日志log', params: {type: 'add', id: null}})
|
||||||
},
|
},
|
||||||
editLogInfo() {
|
editLogInfo() {
|
||||||
console.log('edit log')
|
console.log('edit log')
|
||||||
this.$router.push({ name: '添加/修改日志log', params: { type: 'edit', id: null } })
|
this.$router.push({name: '添加/修改日志log', params: {type: 'edit', id: null}})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -371,6 +371,14 @@ export default {
|
|||||||
],
|
],
|
||||||
span: 24,
|
span: 24,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: "求职意愿",
|
||||||
|
prop: "willingJob",
|
||||||
|
span: 24,
|
||||||
|
rules: [
|
||||||
|
{required: true, message: "请输入求职意愿", trigger: "blur"},
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
label: "户口所在地",
|
label: "户口所在地",
|
||||||
prop: "aac010",
|
prop: "aac010",
|
||||||
|
|||||||
@@ -56,6 +56,14 @@
|
|||||||
placeholder="请选择 工作地址"
|
placeholder="请选择 工作地址"
|
||||||
></jl-cityLabel-cascader>
|
></jl-cityLabel-cascader>
|
||||||
</template>
|
</template>
|
||||||
|
<template slot="cityIdFrom" slot-scope="{ disabled }">
|
||||||
|
<jl-cityLabel-cascader
|
||||||
|
:disabled="disabled"
|
||||||
|
filterable
|
||||||
|
v-model="obj.cityId"
|
||||||
|
placeholder="请选择 工作地址"
|
||||||
|
></jl-cityLabel-cascader>
|
||||||
|
</template>
|
||||||
<template slot-scope="{ row }" slot="wage">
|
<template slot-scope="{ row }" slot="wage">
|
||||||
<el-input placeholder="请输入工资" type="number" v-model="obj.wage" class="input-with-select">
|
<el-input placeholder="请输入工资" type="number" v-model="obj.wage" class="input-with-select">
|
||||||
<el-select v-model="obj.wageUnitCategory" slot="append" placeholder="请选择" @change="getMaxAndMin">
|
<el-select v-model="obj.wageUnitCategory" slot="append" placeholder="请选择" @change="getMaxAndMin">
|
||||||
@@ -810,7 +818,7 @@ export default {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
min: 1,
|
min: 1,
|
||||||
max: 5,
|
max: 8,
|
||||||
message: "长度在 1 到 5 个字",
|
message: "长度在 1 到 5 个字",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
@@ -1170,7 +1178,7 @@ export default {
|
|||||||
callName: row.callName,
|
callName: row.callName,
|
||||||
callTel: row.callTel,
|
callTel: row.callTel,
|
||||||
callNumber: row.callNumber,
|
callNumber: row.callNumber,
|
||||||
cityId: row.cityId,
|
cityId: row.cityId.replace(/\s+/g, ""),
|
||||||
address: row.address,
|
address: row.address,
|
||||||
lat: row.lat,
|
lat: row.lat,
|
||||||
lon: row.lon,
|
lon: row.lon,
|
||||||
@@ -1207,6 +1215,7 @@ export default {
|
|||||||
tradeNames: row.tradeNames,
|
tradeNames: row.tradeNames,
|
||||||
worktypeIds: row.worktypeIds,
|
worktypeIds: row.worktypeIds,
|
||||||
worktypeNames: row.worktypeNames,
|
worktypeNames: row.worktypeNames,
|
||||||
|
jobCompanyScale: row.jobCompanyScale,
|
||||||
skillIds: row.workSkills[1],
|
skillIds: row.workSkills[1],
|
||||||
skillNames: row.skillNames,
|
skillNames: row.skillNames,
|
||||||
jobDescription: row.jobDescription,
|
jobDescription: row.jobDescription,
|
||||||
@@ -1219,7 +1228,7 @@ export default {
|
|||||||
callName: row.callName,
|
callName: row.callName,
|
||||||
callTel: row.callTel,
|
callTel: row.callTel,
|
||||||
callNumber: row.callNumber,
|
callNumber: row.callNumber,
|
||||||
cityId: row.cityId,
|
cityId: row.cityId.replace(/\s+/g, ""),
|
||||||
address: row.address,
|
address: row.address,
|
||||||
lat: row.lat,
|
lat: row.lat,
|
||||||
lon: row.lon,
|
lon: row.lon,
|
||||||
|
|||||||
Reference in New Issue
Block a user