flat: 暂存,add tanlents + loading style

This commit is contained in:
Apcallover
2024-03-25 16:23:27 +08:00
parent 4dd5e36882
commit fc52c46506
6 changed files with 123 additions and 12 deletions

View File

@@ -196,3 +196,9 @@ export const getMatchServeList =
data: params
})
export const getListAllTalents = (params) => request({
url: '/api/jobslink-api/serve/listAllTalents',
method: 'get',
params
})

BIN
src/assets/loading.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 967 KiB

View File

@@ -0,0 +1,65 @@
<template>
<div class="loading-container" v-show="visible">
<div class="content">
<img src="@/assets/loading.gif" class="image" >
<div class="text">
{{loadingText}}
</div>
</div>
</div>
</template>
<script>
export default {
name: "loading",
data: {
},
props: {
visible: {
default: false,
type: Boolean,
required: true,
},
loadingText: {
default: '',
type: String,
required: false,
},
fullScreen: {
default: false,
type: Boolean,
required: false,
},
}
}
</script>
<style scoped lang="scss">
.loading-container{
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
background: rgba(255, 255, 255, 0.9);
.content{
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
.image{
width: 180px;
height: 180px;
}
.text{
text-align: center;
width: 100%;
color: #666666;
}
}
}
</style>

View File

@@ -20,7 +20,7 @@
</div>
<div data-v-3c692830="" style="text-align: center; margin-top: 20px; padding-bottom: 30px;">
<div data-v-3c692830="" style="font-size: 12px; color: #40a9ff;">Copyright @ 德阳市智慧就业服务中心</div>
<div data-v-3c692830="" style="font-size: 12px; color: #40a9ff;">Copyright @ 德阳市人力资源和社会保障局</div>
</div>
</div>
</div>

View File

@@ -8,13 +8,12 @@
<div>
<div class="content">
<!-- 用户板块 -->
<div class="content-left">
<div class="content-left relative">
<avue-crud
height="900"
ref="crud1"
:data="leftUserDataList"
:option="leftUserOptions"
:table-loading="leftLoading"
:page.sync="leftPages"
@current-change="leftCurrentPageChange"
@size-change="leftSizePageChange"
@@ -39,6 +38,7 @@
<TextTooltip :content="row.labelsBase" length="20"></TextTooltip>
</template>
</avue-crud>
<CustomLoading :visible="leftLoading" loading-text="用户数据加载中"></CustomLoading>
</div>
<!-- 操作 -->
<div class="content-center">
@@ -46,15 +46,13 @@
<div style="margin-top: 30px"><el-button type="primary" @click="changeTabs(1)" size="small">匹配岗位</el-button></div>
</div>
<!-- 列表 -->
<div class="content-right">
<div>
<div class="content-right relative">
<avue-crud
height="900"
ref="crud2"
:data="rightDataList"
:option="rightTabs ? rightPostOptions : rightPolicyOptions"
:page.sync="rightPages"
:table-loading="rightLoading"
@selection-change="rightSelectionChange"
>
<template slot="menuLeft" >
@@ -75,7 +73,7 @@
<TextTooltip :content="row.jobDescription" length="40"></TextTooltip>
</template>
</avue-crud>
</div>
<CustomLoading :visible="rightLoading" loading-text="智能分析匹配中"></CustomLoading>
</div>
</div>
</div>
@@ -92,8 +90,10 @@ import { getListAllByLabels, getListGroupByLabels, getServeAllPolicyList, getLis
import TextTooltip from "@/components/text-tooltip/index.vue";
import {debounce} from '@/util/util'
import {DateTime} from "@/util/dateTime";
import CustomLoading from "@/components/Custom-Loading/index.vue";
const pages = { pagerCount: 3, total: 0, size: 10, current: 1 }
const baseOptions = {
size: 'medium',
dateBtn: false,
addBtn: false,
editBtn: false,
@@ -150,7 +150,7 @@ let rightPostOptions = {
}]
}
export default {
components: {TextTooltip},
components: {TextTooltip, CustomLoading},
data() {
return {
formInline: {},
@@ -223,6 +223,7 @@ export default {
this.rightDataList = []
this.rightTabs = type
this.rightDataSelections = []
this.$message.success('智能分析匹配中');
type === 0 && this.getRightListPolicy()
type === 1 && this.getRightSearch()
},
@@ -378,7 +379,6 @@ export default {
}
.content-right{
//修改动画的大小 给文字加粗效果
.right-search{
width: 100%;
}
@@ -411,4 +411,7 @@ export default {
.content-footer{
float: right;
}
.relative{
position: relative;
}
</style>

View File

@@ -142,6 +142,14 @@
@click="pauseServe(row)"
>关闭</el-button>
</template>
<template slot="talentsNamesForm" slot-scope="{row}">
<el-button type="text"
v-if="row.status == 1"
icon="el-icon-video-pause"
size="small"
@click="pauseServe(row)"
>关闭</el-button>
</template>
<!--/父子表-->
</avue-crud>
@@ -334,7 +342,8 @@ import {
getMatchWorkStation,
getMatchPolicy,
getMatchServeList,
getListAllPolicy
getListAllPolicy,
getListAllTalents
} from "@/api/tenant/serve";
import { detail as missionDetail } from "@/api/tenant/mission";
import { detail as workDetail } from "@/api/tenant/postzp";
@@ -454,6 +463,7 @@ export default {
excelForm: { isCovered: 1 },
listAllPolicyTree: [],
selectPolicyTree: [],
talentsList: []
};
},
components: { addGroups, transferGroups, Resume, ied, missionView, workView, Tinymce, PushService},
@@ -508,6 +518,7 @@ export default {
callback();
}
};
console.log(self.talentsList)
return {
height: "auto",
dialogWidth: "60%",
@@ -611,13 +622,27 @@ export default {
slot: true,
formslot: true,
},
{
label: "重点人群",
prop: "talentsGroupId",
type: "select",
multiple: true,
hide: true,
display: true,
dicData: self.talentsList,
props: {
label: "groupName",
value: "id"
},
span: 24,
},
{
label: "服务状态",
prop: "status",
display: false,
span: 24,
slot: true,
},
{
label: "备注",
prop: "remarks",
@@ -909,8 +934,15 @@ export default {
// this.getWorkTypes();
this.getLabelList();
this.getListAllPolicyTree()
this.ListAllTalents()
},
methods: {
async ListAllTalents() {
let resData = await getListAllTalents()
if(resData.data.code === 200) {
this.talentsList = resData.data.data
}
},
selectPushService(row) {
console.log('点击')
this.selectPushServiceData = deepClone(row)
@@ -1169,6 +1201,7 @@ export default {
serveLabels: row.serveLabels,
remarks: row.remarks,
policyIds: this.selectPolicyTree.map((item) => item[1]).join(','),
talentsGroupId: row.talentsGroupId.join(',')
}
add(params).then(
() => {
@@ -1196,6 +1229,7 @@ export default {
serveLabels: row.serveLabels,
remarks: row.remarks,
policyIds: this.selectPolicyTree.map((item) => item[1]).join(','),
talentsGroupId: row.talentsGroupId.join(',')
}).then(
() => {
done();
@@ -1426,7 +1460,10 @@ export default {
).then((res) => {
const data = res.data.data;
this.page.total = data.total;
this.data = data.records;
console.log( data.records)
this.data = data.records.map((item) => ({
...item, talentsGroupId: item.talentsGroupId.split(',')
}));
this.loading = false;
this.selectionClear();
});