添加页面
This commit is contained in:
@@ -47,3 +47,10 @@ export function returnPerson(params) {
|
||||
params
|
||||
})
|
||||
}
|
||||
export function getStatistic(params) {
|
||||
return request({
|
||||
method: 'get',
|
||||
'url': `/pc/index/fwqkfx`,
|
||||
params
|
||||
})
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Date: 2025-10-16 15:15:47
|
||||
* @LastEditors: shirlwang
|
||||
* @LastEditTime: 2025-11-04 16:34:54
|
||||
* @LastEditTime: 2025-11-05 17:29:18
|
||||
-->
|
||||
<template>
|
||||
<view>
|
||||
@@ -11,17 +11,17 @@
|
||||
<view class="kinggang">
|
||||
<view>
|
||||
<view class="num-title" style="color: #1A62CE">重点毕业生数</view>
|
||||
<view>1120</view>
|
||||
<view>{{infoData.allPersonCount}}</view>
|
||||
</view>
|
||||
<text style="color: #B5C1D1;">|</text>
|
||||
<view>
|
||||
<view class="num-title" style="color: #16ACB7">累计需求数</view>
|
||||
<view>1120</view>
|
||||
<view>{{infoData.demandNum}}</view>
|
||||
</view>
|
||||
<text style="color: #B5C1D1;">|</text>
|
||||
<view>
|
||||
<view class="num-title" style="color: #6A57D1">累计服务数</view>
|
||||
<view>1120</view>
|
||||
<view>{{infoData.fwNum}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="trace-line">
|
||||
@@ -60,6 +60,7 @@
|
||||
<view style="color: #EF7325;">{{getDictLabel(item.currentStatus, qcjy_xqlc)}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="view-more-btn" @click="viewMore">查看更多内容</view>
|
||||
<view class="titles">
|
||||
<view class="title-item active"><view>待服务毕业生列表</view></view>
|
||||
<view>共 {{jobListcount}} 条信息</view>
|
||||
@@ -92,6 +93,7 @@
|
||||
<view @click="tiao(item)">服务</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="view-more-btn" @click="goPersonalList">查看更多内容</view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
|
||||
@@ -149,11 +151,17 @@ function back() {
|
||||
uni.navigateBack({
|
||||
delta: 1
|
||||
});
|
||||
|
||||
};
|
||||
function viewMore() {
|
||||
uni.navigateTo({
|
||||
url: '/packageRc/pages/needs/needsList'
|
||||
});
|
||||
}
|
||||
let qcjy_xqlx = ref([])
|
||||
let qcjy_xqlc = ref([])
|
||||
let infoData = ref({})
|
||||
import {getDicts} from '@/apiRc/system/dict'
|
||||
import {getStatistic} from '@/apiRc/personinfo/index'
|
||||
onMounted(() => {
|
||||
getlist();
|
||||
getlistyujing();
|
||||
@@ -163,6 +171,9 @@ onMounted(() => {
|
||||
getDicts('qcjy_xqlc').then(res => {
|
||||
qcjy_xqlc.value = res.data
|
||||
});
|
||||
getStatistic().then(res => {
|
||||
infoData.value = res.data
|
||||
})
|
||||
});
|
||||
function getDictLabel(value, list) {
|
||||
const item = list.find(item => item.dictValue === value);
|
||||
@@ -171,7 +182,7 @@ function getDictLabel(value, list) {
|
||||
async function getlist(){
|
||||
|
||||
try {
|
||||
const res = await personInfoList();
|
||||
const res = await personInfoList({pageNum: 1, pageSize: 5})
|
||||
console.log("res", res);
|
||||
jobList.value = res.rows || [];
|
||||
jobListcount.value=res.total || 0
|
||||
@@ -183,7 +194,7 @@ async function getlist(){
|
||||
async function getlistyujing(){
|
||||
|
||||
try {
|
||||
const res = await personAlertList();
|
||||
const res = await personAlertList({pageNum: 1, pageSize: 5});
|
||||
console.log("res", res);
|
||||
jobList1.value = res.rows || [];
|
||||
jobList1count.value=res.total || 0
|
||||
@@ -259,11 +270,6 @@ function cancelReturn() {
|
||||
returnReasonPopup.value.close()
|
||||
}
|
||||
}
|
||||
function viewMore() {
|
||||
// uni.navigateTo({
|
||||
// url: '/pages/jobList/jobList'
|
||||
// })
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@@ -622,4 +628,16 @@ view{box-sizing: border-box;display: block;}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.view-more-btn{
|
||||
padding: 10rpx 56rpx;
|
||||
background: #FFFFFF;
|
||||
color: #4C6EFB;
|
||||
border: 1rpx solid #4C6EFB;
|
||||
text-align: center;
|
||||
border-radius: 40rpx;
|
||||
width: fit-content;
|
||||
margin: 0 auto;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
</style>
|
||||
@@ -1,14 +1,7 @@
|
||||
<template>
|
||||
<view class="page">
|
||||
<view class="page-header">
|
||||
<view class="title df_flex" style="text-align: left;padding:50rpx 32rpx;">
|
||||
<u-icon name="arrow-left" color="#fff" size="38rpx" @tap="$tab.navigateBack()"></u-icon>
|
||||
<text style="margin-left: 30rpx;" class="df_flex_1">需求列表</text>
|
||||
<u-icon v-show="$store.getters.roles.includes('shequn')" @tap="$store.commit('SET_SHOWEXITPOPUP', true)" name="list" size="44rpx" color="#fff"></u-icon>
|
||||
</view>
|
||||
</view>
|
||||
<view class="page" style="background-image: url('../../../packageRc/static/pageBg.png');">
|
||||
<view class="input-outer-part"
|
||||
style="padding-top: 12rpx;margin-top: 16rpx;padding-bottom: 0;max-height: unset;">
|
||||
style="padding: 24rpx 32rpx 0;max-height: unset;">
|
||||
<view class="search-line">
|
||||
<u-input placeholder="请输入群众姓名进行搜索" v-model="queryParams.searchValue" border="none" />
|
||||
<img src="https://rc.jinan.gov.cn/qcwjyH5/static/images/person/search.png" class="search-icon" @click="search()" />
|
||||
@@ -22,9 +15,9 @@
|
||||
</view>
|
||||
<scroll-view :scroll-y="true" style="height: calc(100vh - 422rpx);position: relative;z-index: 1;"
|
||||
@scrolltolower="getBottomList">
|
||||
<u-swipe-action>
|
||||
<u-swipe-action-item @click="clickDelete(item)" v-for="(item, index) in tableData" :key="index"
|
||||
style="margin-bottom: 24rpx;border-radius: 16rpx;" :options="options1">
|
||||
<uni-swipe-action>
|
||||
<uni-swipe-action-item @click="clickDelete(item)" v-for="(item, index) in tableData" :key="index"
|
||||
style="margin-bottom: 24rpx;border-radius: 16rpx;" :right-options="options1">
|
||||
<view class="job-item">
|
||||
<view class="top-container" @click="goNeedsDetail(item)">
|
||||
<view class="title-line">
|
||||
@@ -65,39 +58,39 @@
|
||||
<view class="item_btn df_flex df_align_center df_justify_center">
|
||||
<!-- 需求已处理完成的 展示服务追溯 -->
|
||||
<view v-if="item.currentStatus == 3" class="df_flex_1">
|
||||
<u-button type="primary" :plain="true" color="#BF5818" text="服务追溯"
|
||||
@click="serviceTraceButton(item)" :customStyle="{border: 'none'}"></u-button>
|
||||
<view type="primary" :plain="true" color="#BF5818" text="服务追溯"
|
||||
@click="serviceTraceButton(item)" :customStyle="{border: 'none'}">服务追溯</view>
|
||||
</view>
|
||||
<!-- 需求处于待处理、处理中 -->
|
||||
<view v-else class="df_flex_1">
|
||||
<!-- 求职需求 -->
|
||||
<view v-if="queryParams.needsType == 1" class="df_flex">
|
||||
<u-button type="primary" :plain="true" color="#BF5818" text="推荐"
|
||||
<view type="primary" :plain="true" color="#BF5818" text="推荐"
|
||||
:customStyle="{border: 'none'}"
|
||||
@click="requirementTraining(item, 1)"></u-button>
|
||||
@click="requirementTraining(item, 1)">推荐</view>
|
||||
<view class="line"></view>
|
||||
<u-button type="primary" :plain="true" color="#BF5818" text="办理"
|
||||
:customStyle="{border: 'none'}" @click="requirementHandling(item)"></u-button>
|
||||
<view type="primary" :plain="true" color="#BF5818" text="办理"
|
||||
:customStyle="{border: 'none'}" @click="requirementHandling(item)">办理</view>
|
||||
</view>
|
||||
<!-- 培训需求 -->
|
||||
<view v-else-if="queryParams.needsType == 4" class="df_flex">
|
||||
<u-button type="primary" :plain="true" color="#BF5818" text="培训"
|
||||
<view type="primary" :plain="true" color="#BF5818" text="培训"
|
||||
:customStyle="{border: 'none'}"
|
||||
@click="requirementTraining(item, 4)"></u-button>
|
||||
@click="requirementTraining(item, 4)">培训</view>
|
||||
<view class="line"></view>
|
||||
<u-button type="primary" :plain="true" color="#BF5818" text="办理"
|
||||
:customStyle="{border: 'none'}" @click="requirementHandling(item)"></u-button>
|
||||
<view type="primary" :plain="true" color="#BF5818" text="办理"
|
||||
:customStyle="{border: 'none'}" @click="requirementHandling(item)">办理</view>
|
||||
</view>
|
||||
<!-- 其他需求 -->
|
||||
<view v-else>
|
||||
<u-button type="primary" :plain="true" color="#BF5818" text="办理"
|
||||
:customStyle="{border: 'none'}" @click="requirementHandling(item)"></u-button>
|
||||
<view type="primary" :plain="true" color="#BF5818" text="办理"
|
||||
:customStyle="{border: 'none'}" @click="requirementHandling(item)">办理</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</u-swipe-action-item>
|
||||
</u-swipe-action>
|
||||
</uni-swipe-action-item>
|
||||
</uni-swipe-action>
|
||||
<view style="padding-bottom: 24rpx;">
|
||||
<img v-if="!total&&!loading" src="https://rc.jinan.gov.cn/qcwjyH5/static/images/person/empty.png"
|
||||
style="width: 100%;display: block;margin: 0 auto;" />
|
||||
@@ -110,7 +103,7 @@
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
<u-popup :show="openDeal" style="position: relative;z-index: 100;" closeOnClickOverlay @close="openDeal=false">
|
||||
<uni-popup ref="openDeal" style="position: relative;z-index: 100;" background-color="#fff" type="bottom">
|
||||
<u--form class="self-form" labelPosition="top" :model="formData" :rules="rules" ref="uForm"
|
||||
labelWidth="300">
|
||||
<u-form-item label="实际解决时间" prop="actualSolveDate" required>
|
||||
@@ -129,11 +122,11 @@
|
||||
</u-form-item>
|
||||
</u--form>
|
||||
<view class="button-area">
|
||||
<view class="btn" @click="openDeal = false">取消</view>
|
||||
<view class="btn" @click="closeopenDeal">取消</view>
|
||||
<view class="btn reset" @click="formData.actualSolveDate = '';formData.solveDesc = ''">重置</view>
|
||||
<view class="btn save" @click="finishJobRecommend">办结</view>
|
||||
</view>
|
||||
</u-popup>
|
||||
</uni-popup>
|
||||
<view class="addNeeds" @click="goAddNeeds()">
|
||||
<img src="https://rc.jinan.gov.cn/qcwjyH5/static/images/person/addNeeds.png" />
|
||||
</view>
|
||||
@@ -159,7 +152,7 @@
|
||||
</view>
|
||||
</template>
|
||||
<script>
|
||||
import PopupList from "packageRc/components/PopupLists.vue";
|
||||
import PopupList from "/packageRc/components/PopupLists.vue";
|
||||
import ImageUpload from '/packageRc/components/ImageUpload'
|
||||
import {
|
||||
requirementCompletion
|
||||
@@ -234,13 +227,16 @@
|
||||
onLoad({
|
||||
dictValue
|
||||
}) {
|
||||
this.queryParams.needsType = dictValue
|
||||
this.queryParams.needsType = dictValue || 1
|
||||
this.getCheckData()
|
||||
},
|
||||
onShow() {
|
||||
this.search();
|
||||
},
|
||||
methods: {
|
||||
closeopenDeal() {
|
||||
this.$refs.openDeal.close()
|
||||
},
|
||||
// 新增需求
|
||||
goAddNeeds() {
|
||||
this.$tab.navigateTo(`/pages/needs/needDetail?activeType=${this.queryParams.needsType}&showTab=1`)
|
||||
@@ -317,10 +313,10 @@
|
||||
},
|
||||
async getCheckData() {
|
||||
let workExperienceYears
|
||||
await this.getDicts('qcjy_gznx').then(res => {
|
||||
await this.$getDict('qcjy_gznx').then(res => {
|
||||
workExperienceYears = res.data
|
||||
})
|
||||
await this.getDicts('qcjy_xqlc').then(res => {
|
||||
await this.$getDict('qcjy_xqlc').then(res => {
|
||||
this.currentStatusList = res.data;
|
||||
console.log(res.data)
|
||||
})
|
||||
@@ -448,7 +444,7 @@
|
||||
|
||||
// 需求办结
|
||||
requirementHandling(item) {
|
||||
this.openDeal = true;
|
||||
this.$refs.openDeal.open()
|
||||
this.formData = {
|
||||
id: item.id,
|
||||
currentStatus: '3'
|
||||
@@ -496,7 +492,8 @@
|
||||
if (code === 200) {
|
||||
// 显示成功的提示信息
|
||||
this.$u.toast(msg);
|
||||
this.openDeal = false;
|
||||
// this.openDeal = false;
|
||||
this.$refs.openDeal.close()
|
||||
this.search();
|
||||
}
|
||||
} catch (error) {
|
||||
@@ -550,9 +547,8 @@
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.page {
|
||||
background-color: #EEF1F5 !important;
|
||||
background-color: #f4f4f4 !important;
|
||||
height: 100vh;
|
||||
background-image: url('https://rc.jinan.gov.cn/qcwjyH5/static/images/top.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% auto;
|
||||
}
|
||||
@@ -778,4 +774,10 @@
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
.d_flex{
|
||||
display: flex;
|
||||
view{
|
||||
flex-grow: 1;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -69,7 +69,6 @@
|
||||
import {
|
||||
getPersonBase
|
||||
} from "@/apiRc/person";
|
||||
import PopupList from "../../components/PopupLists.vue";
|
||||
import {
|
||||
listJobService,
|
||||
delJobService
|
||||
@@ -96,7 +95,6 @@ import { listJobType } from "@/apiRc/jobType/index";
|
||||
} from '@/apiRc/needs/otherService'
|
||||
export default {
|
||||
components: {
|
||||
PopupList,
|
||||
},
|
||||
onShow() {
|
||||
console.log('search',34224234)
|
||||
|
||||
@@ -276,11 +276,9 @@ import exitPopup from "../../components/exitPopup.vue";
|
||||
import {
|
||||
getDicts
|
||||
} from '@/apiRc/system/dict.js'
|
||||
import PopupList from "../../components/PopupLists.vue";
|
||||
export default {
|
||||
name: "personnelList",
|
||||
components: {
|
||||
PopupList,
|
||||
exitPopup,
|
||||
},
|
||||
data() {
|
||||
|
||||
@@ -416,7 +416,7 @@
|
||||
} , {
|
||||
"path": "pages/needs/needDetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "需求"
|
||||
"navigationBarTitleText": "需求信息"
|
||||
}
|
||||
} , {
|
||||
"path": "pages/daiban/bangfuList",
|
||||
@@ -428,6 +428,11 @@
|
||||
"style": {
|
||||
"navigationBarTitleText": "需求上报"
|
||||
}
|
||||
} , {
|
||||
"path": "pages/needs/needsList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "需求"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user