flat: 暂存
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import request from "@/router/axios";
|
||||
import { getToken } from "@/util/auth";
|
||||
import {getToken} from "@/util/auth";
|
||||
|
||||
export const getList = (current, size, params) => {
|
||||
return request({
|
||||
@@ -57,7 +57,7 @@ export const getDetail = (missionNo) => {
|
||||
return request({
|
||||
url: "/api/jobslink-api/missions/mission/detail",
|
||||
method: "get",
|
||||
params: { missionNo },
|
||||
params: {missionNo},
|
||||
});
|
||||
};
|
||||
|
||||
@@ -88,7 +88,7 @@ export const complet = (ids) => {
|
||||
return request({
|
||||
url: "/api/jobslink-api/missions/mission/manage/complet",
|
||||
method: "post",
|
||||
params: { ids },
|
||||
params: {ids},
|
||||
});
|
||||
};
|
||||
|
||||
@@ -117,3 +117,11 @@ export const Auditing = (data) => {
|
||||
data,
|
||||
});
|
||||
};
|
||||
|
||||
export const getAllCountWorkCount = (params) => {
|
||||
return request({
|
||||
url: "/api/jobslink-api/report/allCount/workCount",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
};
|
||||
|
||||
@@ -12,6 +12,15 @@ export const getTemplate = (type) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/resource/template/docurl',
|
||||
method: 'get',
|
||||
params: { type }
|
||||
params: {type}
|
||||
})
|
||||
}
|
||||
|
||||
export const getTemplateRecommendExportList = (params) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/talents/recommend/exportList',
|
||||
method: 'get',
|
||||
params,
|
||||
responseType: 'blob',
|
||||
})
|
||||
}
|
||||
|
||||
@@ -1,12 +1,60 @@
|
||||
<template>
|
||||
<div>
|
||||
<basic-container>
|
||||
12312
|
||||
</basic-container>
|
||||
<basic-container>
|
||||
<el-form
|
||||
size="small"
|
||||
label-position="right"
|
||||
style="padding-left: 10px; padding-right: 10px"
|
||||
:inline="true"
|
||||
>
|
||||
<el-row :span="24">
|
||||
<el-form-item label="类型:">
|
||||
<el-select v-model="query.type">
|
||||
<el-option
|
||||
v-for="(item, index) in types"
|
||||
:key="index"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="日期类型:" v-if="query.type === 2">
|
||||
<el-select v-model="query.timeType" @blur="delete query.stime">
|
||||
<el-option
|
||||
v-for="(item, index) in times"
|
||||
:key="index"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="日期:" v-if="query.type === 2">
|
||||
<el-date-picker
|
||||
v-model="query.stime"
|
||||
:type="timeEleType[query.timeType]"
|
||||
placeholder="选择日期">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<div class="searchBtn">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="small"
|
||||
icon="el-icon-search"
|
||||
@click="searchTabs"
|
||||
>搜 索
|
||||
</el-button
|
||||
>
|
||||
<el-button size="small" icon="el-icon-delete" @click="searchReset"
|
||||
>清 空
|
||||
</el-button
|
||||
>
|
||||
</div>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<avue-crud
|
||||
:option="option"
|
||||
:table-loading="loading"
|
||||
:page.sync="page"
|
||||
:data="data"
|
||||
ref="crud"
|
||||
v-model="form"
|
||||
@@ -16,18 +64,133 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
getAllCountWorkCount
|
||||
} from "@/api/manage/mission";
|
||||
import {missionState} from "@/common/dic";
|
||||
import {dateFormat} from "@/util/date";
|
||||
|
||||
let types = [
|
||||
{value: 0, label: '供需人数'},
|
||||
{value: 1, label: '按行业'},
|
||||
{value: 2, label: '按时间'},
|
||||
]
|
||||
let times = [
|
||||
{value: 3, label: '年'},
|
||||
{value: 1, label: '月'},
|
||||
// {value: 3, label: '周'},
|
||||
]
|
||||
let timeEleType = {
|
||||
3: 'year',
|
||||
1: 'month',
|
||||
// 3: 'week',
|
||||
}
|
||||
export default {
|
||||
name: 'supplyDemand',
|
||||
data() {
|
||||
return {
|
||||
types,
|
||||
times,
|
||||
timeEleType,
|
||||
loading: false,
|
||||
data: [],
|
||||
form: {},
|
||||
query: {
|
||||
type: 0,
|
||||
timeType: 1
|
||||
},
|
||||
page: {
|
||||
pageSize: 10,
|
||||
currentPage: 1,
|
||||
total: 0,
|
||||
},
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getDetail()
|
||||
},
|
||||
computed: {
|
||||
option() {
|
||||
return {}
|
||||
return {
|
||||
height: "auto",
|
||||
tip: false,
|
||||
columnBtn: false,
|
||||
searchShow: true,
|
||||
searchMenuSpan: 5,
|
||||
menuWidth: 110,
|
||||
border: true,
|
||||
selection: false,
|
||||
viewBtn: false,
|
||||
menu: false,
|
||||
addBtn: false,
|
||||
editBtn: false,
|
||||
delBtn: false,
|
||||
dialogClickModal: false,
|
||||
dialogType: "drawer",
|
||||
dialogFullscreen: true,
|
||||
mStatusList: missionState,
|
||||
align: 'center',
|
||||
column: [
|
||||
{
|
||||
label: "名称",
|
||||
prop: "name",
|
||||
},
|
||||
{
|
||||
label: "零工人数",
|
||||
prop: "workerCount",
|
||||
},
|
||||
{
|
||||
label: "零工岗位人数",
|
||||
prop: "workCount",
|
||||
},
|
||||
{
|
||||
label: "求人倍率",
|
||||
prop: "ratio",
|
||||
},
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
searchTabs() {
|
||||
let date = null
|
||||
switch (this.query.timeType) {
|
||||
case 3:
|
||||
date = new Date(this.query.stime);
|
||||
date.setFullYear(date.getFullYear() + 1)
|
||||
this.query.etime = date
|
||||
break
|
||||
case 1:
|
||||
date = new Date(this.query.stime);
|
||||
date.setMonth(date.getMonth() + 1)
|
||||
this.query.etime = date
|
||||
break
|
||||
}
|
||||
this.getDetail()
|
||||
},
|
||||
searchReset() {
|
||||
this.query = {
|
||||
type: 0,
|
||||
time: 1
|
||||
}
|
||||
this.getDetail()
|
||||
},
|
||||
async getDetail() {
|
||||
let params = {
|
||||
...this.query,
|
||||
}
|
||||
if (params.stime) {
|
||||
params.stime = dateFormat(params.stime, 'yyyy-MM-dd hh:mm:ss')
|
||||
}
|
||||
if (params.etime) {
|
||||
params.etime = dateFormat(params.etime, 'yyyy-MM-dd hh:mm:ss')
|
||||
}
|
||||
let resData = await getAllCountWorkCount(params)
|
||||
if (resData.data.code === 200) {
|
||||
console.log(resData.data)
|
||||
const {records, page, size, total} = resData.data.data
|
||||
this.data = records
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -262,10 +262,15 @@ export default {
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "select",
|
||||
label: "用工单位性质",
|
||||
prop: "nature",
|
||||
dicData: companyEnum,
|
||||
type: 'select',
|
||||
dicUrl: "/api/jobslink-api/system/dict/dictionary?code=company_nature",
|
||||
props: {
|
||||
label: "dictKey",
|
||||
value: "dictValue",
|
||||
},
|
||||
// dicData: companyEnum,
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
|
||||
@@ -110,6 +110,16 @@
|
||||
|
||||
</template>
|
||||
<!--/自定义按钮-->
|
||||
<template slot="menuRight">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="small"
|
||||
:disabled="downloadButton"
|
||||
@click="handleExport"
|
||||
>导出
|
||||
</el-button
|
||||
>
|
||||
</template>
|
||||
</avue-crud>
|
||||
|
||||
<!--批量导入-->
|
||||
@@ -154,7 +164,7 @@ import addGroups from "./Dialog/addGroups";
|
||||
import transferGroups from "./Dialog/transferGroups";
|
||||
import Resume from "@/components/resume/index";
|
||||
import {check18IdCardNo, isvalidatemobile, isExcel} from "@/util/validate";
|
||||
import {getTemplate} from "@/api/resource/template";
|
||||
import {getTemplate, getTemplateRecommendExportList} from "@/api/resource/template";
|
||||
import ied from "@/views/util/import-error-dialog";
|
||||
import {excelAccept} from "@/common/accept";
|
||||
import TextTooltip from '@/components/text-tooltip'
|
||||
@@ -172,6 +182,7 @@ export default {
|
||||
name: "tenant_talents",
|
||||
data() {
|
||||
return {
|
||||
downloadButton: false,
|
||||
activeNames: "1",
|
||||
isIndeterminate: false,
|
||||
checkAll: false,
|
||||
@@ -553,6 +564,24 @@ export default {
|
||||
this.getDept()
|
||||
},
|
||||
methods: {
|
||||
handleExport() {
|
||||
this.downloadButton = true
|
||||
// 0 潜在 1 已认定
|
||||
getTemplateRecommendExportList({
|
||||
groupType: 1,
|
||||
...this.query
|
||||
}).then((response) => {
|
||||
const blob = window.URL.createObjectURL(new Blob([response.data], {type: response.headers['content-type']}));
|
||||
let fileName = decodeURI(response.headers['content-disposition'].split(';')[1].split('filename=')[1])
|
||||
let a = document.createElement('a')
|
||||
let event = new MouseEvent('click')
|
||||
a.download = fileName || Date.now() + '.xlsx'
|
||||
a.href = blob
|
||||
a.dispatchEvent(event)
|
||||
this.downloadButton = false
|
||||
})
|
||||
|
||||
},
|
||||
deptChange({value, column}) {
|
||||
this.deptId = value
|
||||
console.log(value)
|
||||
|
||||
@@ -110,6 +110,16 @@
|
||||
|
||||
</template>
|
||||
<!--/自定义按钮-->
|
||||
<template slot="menuRight">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="small"
|
||||
:disabled="downloadButton"
|
||||
@click="handleExport"
|
||||
>导出
|
||||
</el-button
|
||||
>
|
||||
</template>
|
||||
</avue-crud>
|
||||
|
||||
<!--批量导入-->
|
||||
@@ -155,10 +165,11 @@ import addGroups from "./Dialog/addGroups";
|
||||
import transferGroups from "./Dialog/transferGroups";
|
||||
import Resume from "@/components/resume/index";
|
||||
import {check18IdCardNo, isvalidatemobile, isExcel} from "@/util/validate";
|
||||
import {getTemplate} from "@/api/resource/template";
|
||||
import {getTemplate, getTemplateRecommendExportList} from "@/api/resource/template";
|
||||
import ied from "@/views/util/import-error-dialog";
|
||||
import {excelAccept} from "@/common/accept";
|
||||
import TextTooltip from '@/components/text-tooltip'
|
||||
import {exportList} from "@/api/workstation/post";
|
||||
|
||||
export default {
|
||||
filters: {
|
||||
@@ -173,6 +184,7 @@ export default {
|
||||
name: "tenant_talents",
|
||||
data() {
|
||||
return {
|
||||
downloadButton: false,
|
||||
activeNames: "1",
|
||||
isIndeterminate: false,
|
||||
checkAll: false,
|
||||
@@ -555,6 +567,24 @@ export default {
|
||||
this.getDept()
|
||||
},
|
||||
methods: {
|
||||
handleExport() {
|
||||
this.downloadButton = true
|
||||
// 0 潜在 1 已认定
|
||||
getTemplateRecommendExportList({
|
||||
groupType: 0,
|
||||
...this.query
|
||||
}).then((response) => {
|
||||
const blob = window.URL.createObjectURL(new Blob([response.data], {type: response.headers['content-type']}));
|
||||
let fileName = decodeURI(response.headers['content-disposition'].split(';')[1].split('filename=')[1])
|
||||
let a = document.createElement('a')
|
||||
let event = new MouseEvent('click')
|
||||
a.download = fileName || Date.now() + '.xlsx'
|
||||
a.href = blob
|
||||
a.dispatchEvent(event)
|
||||
this.downloadButton = false
|
||||
})
|
||||
|
||||
},
|
||||
deptChange({value, column}) {
|
||||
this.deptId = value
|
||||
console.log(value)
|
||||
|
||||
@@ -622,6 +622,12 @@ export default {
|
||||
{
|
||||
label: "企业性质",
|
||||
prop: "missionCompanyNature",
|
||||
type: 'select',
|
||||
dicUrl: "/api/jobslink-api/system/dict/dictionary?code=company_nature",
|
||||
props: {
|
||||
label: "dictKey",
|
||||
value: "dictValue",
|
||||
},
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
|
||||
@@ -742,8 +742,14 @@ export default {
|
||||
span: 12,
|
||||
},
|
||||
{
|
||||
label: "企业性质",
|
||||
prop: "jobCompanyNature",
|
||||
label: "企业性质",
|
||||
type: 'select',
|
||||
dicUrl: "/api/jobslink-api/system/dict/dictionary?code=company_nature",
|
||||
props: {
|
||||
label: "dictKey",
|
||||
value: "dictValue",
|
||||
},
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
|
||||
@@ -23,7 +23,7 @@ module.exports = {
|
||||
port: 1888,
|
||||
proxy: {
|
||||
"/api": {
|
||||
target: 'http://10.165.0.173:8000',
|
||||
target: 'http://192.168.1.105:8000',
|
||||
ws: true,
|
||||
changeOrigin: true,
|
||||
pathRewrite: {
|
||||
|
||||
Reference in New Issue
Block a user