This commit is contained in:
duanxiaohai 2024-08-11 16:14:28 +08:00
parent 37705f96f1
commit 5c4a4619ef
7 changed files with 1662 additions and 59 deletions

View File

@ -90,7 +90,11 @@
<div class="minPieImg2">就业培训</div>
<jypx v-if="showEchart"></jypx>
<div class="jypx_right">
<div class="jypx_right_item" v-for="item in jypxList" @click="showPx(item.name)">
<div
class="jypx_right_item"
v-for="item in jypxList"
@click="showPx(item.name)"
>
<img :src="item.img" alt="" />
<div class="jypx_right_item_right">
<div class="jypx_name">{{ item.name }}</div>
@ -191,20 +195,17 @@
<DialogEcTy
:dialogShowEc="dialogShowEcTy"
:title="dataEc.title"
:showXq='false'
:showXq="false"
@close="close"
>
<template #echart>
<dialog_jjlxfb
@shuju="jsSj"
></dialog_jjlxfb>
<dialog_jjlxfb @shuju="jsSj"></dialog_jjlxfb>
</template>
</DialogEcTy>
<DialogEcTy
:dialogShowEc="dialogShowEcTy1"
:title="dataEc.title"
:showXq='true'
:showXq="true"
@close="close"
>
<template #echart>
@ -222,7 +223,7 @@
:title="tableType.title"
:tableData="tableType.data"
:pagination="pagination"
:showXq='false'
:showXq="false"
@close="closeJj"
@handle="handlePagination"
>
@ -265,6 +266,7 @@ import ViewDataimg2 from "@/assets/images/sjfx/sjfx2.png";
import ViewDataimg3 from "@/assets/images/sjfx/sjfx3.png";
import jypx1 from "@/assets/images/sjfx/pxrc.png";
import jypx2 from "@/assets/images/sjfx/gygws.png";
import tools from "@/utils/tools";
const showR = ref(false); //loading
//
const dialogShowEnrol = ref(false);
@ -554,15 +556,15 @@ const columns = reactive({
column: [
{
label: "姓名",
property: "name",
property: "xm",
},
{
label: "培训机构名称",
property: "mc",
property: "pxjgmc",
},
{
label: "培训项目",
property: "xm",
property: "pxxm",
},
],
},
@ -578,10 +580,10 @@ const close = () => {
dialogShowEcTy1.value = false;
dialogShowElderly.value = false;
};
const closeJj=()=>{
const closeJj = () => {
dialogShow.value = false;
pagination.currentPage=1;
}
pagination.currentPage = 1;
};
const showEnrol1 = () => {
dialogShowElderly.value = true;
};
@ -607,19 +609,30 @@ const jsSj = (name, index) => {
} else {
tableType.title = `${name}转出人数`;
}
tableType.columns=columns["聚集数据"].column;
tableType.columns = columns["聚集数据"].column;
dialogShow.value = true;
};
//+
const showPx =(name)=>{
if(name=='培训人次'){
const showPx = (name) => {
if (name == "培训人次") {
getTrain();
tableType.title = `培训详情`;
tableType.columns=columns["培训"].column;
tableType.columns = columns["培训"].column;
dialogShow.value = true;
}else{
} else {
}
}
};
const getTrain = () => {
http
.get(
`/api/ggfwyth/bftpxList?page=${pagination.currentPage}&size=${pagination.pageSize}`
)
.then((res) => {
if (res.code == 200) {
tableType.data = res.data;
}
});
};
//
const pagination = reactive({
total: 100,
@ -628,6 +641,7 @@ const pagination = reactive({
});
const handlePagination = (current) => {
pagination.currentPage = current;
getTrain();
};
//----------------
//
@ -646,7 +660,6 @@ const tab_change = (index, name) => {
}
};
const chooseXX = (name) => {
console.log(name);
if (name == "交通") {
mapTitle.value = "交通";
dialogShowMap.value = true;
@ -948,6 +961,7 @@ const getData = async () => {
};
onMounted(() => {
tools.data.set("token", "6b0e380b4a8f46baae4923f83faf670d");
startAutoSwitching();
});

View File

@ -44,9 +44,16 @@
<el-table
:data="data.tableData"
height="100%"
:header-cell-style="{ background: '#008FCD' }"
:key="tableKey"
:row-style="rowState"
:header-cell-style="tableHeaderColor"
>
<!-- <el-table-column
type="index"
label="序号"
width="60"
align="center"
></el-table-column> -->
<!-- <el-table-column
v-for="(item, index) in data.columns"
:key="index"
@ -157,6 +164,40 @@ const data = reactive({
pagination: {},
});
//
const tableHeaderColor = (arg) => {
return {
// paddingLeft: "10px",
letterSpacing: "1px",
fontSize: "16px",
height: "79px",
backgroundColor: "rgba(23 92 185)",
color: "#fff",
border: "none",
textAlign: "center",
fontFamily: "PingFangSC, PingFang SC",
// boxShadow: " inset 0px 0px 56px 0px rgba(173,221,255,0.5)",
};
};
const rowState = (row) => {
if (row.rowIndex % 2 == 0) {
return {
letterSpacing: "1px",
fontSize: "14px",
height: "36px",
backgroundColor: "rgba(31, 63, 113, 1)",
color: "#fff",
};
} else if (row.rowIndex % 2 !== 0) {
return {
letterSpacing: "1px",
fontSize: "14px",
height: "36px",
backgroundColor: "rgba(43, 74, 121, 1)",
color: "#fff",
};
}
};
const gridData = [];
//
const tableKey = ref(Math.random());
@ -308,3 +349,239 @@ const handle = (current) => {
}
}
</style>
<style lang="scss" scoped>
//
:deep(.el-table) {
background: rgba(32, 64, 115, 1) !important ;
color: #ffffff;
--el-table-tr-bg-color: none;
--el-table-header-bg-color: none;
--el-table-header-text-color: none;
border: 1px solid #7aceff;
}
.table {
:deep(.el-table td.el-table__cell, .el-table th.el-table__cell.is-leaf) {
border: none !important;
padding-left: 10px !important;
text-align: center;
}
}
:deep(.el-table td.el-table__cell) {
padding: 13px 0px;
}
:deep(.el-table--enable-row-hover .el-table__body tr:hover > td) {
background-color: #2f4b74;
}
:deep(.el-table__empty-block) {
background-color: #122560;
}
:deep(.el-table .el-table__row) {
border-bottom: none;
}
//
.pagePart {
height: 40px;
display: flex;
align-items: center;
justify-content: center;
:deep(.el-pagination) {
--el-pagination-button-disabled-bg-color: none;
--el-pagination-bg-color: none;
--el-pagination-button-bg-color: none;
--el-pagination-button-color: #fff;
color: #fff;
}
// :deep(.el-pagination button:disabled) {
// background-color: rgba(0, 116, 255, 0) !important;
// }
// :deep(.el-pagination > .is-last) {
// color: #ffffff;
// }
}
:deep(.el-pagination.is-background .btn-prev) {
margin: 0;
}
:deep(.el-pagination.is-background .btn-next) {
margin: 0;
}
:deep(.el-pagination) {
justify-content: center;
}
.yd_title {
box-sizing: border-box;
width: 98%;
height: 31px;
position: relative;
overflow: hidden;
/* 利用伪元素和两个i元素产生4条线 */
.animate-border {
position: absolute;
top: 0px;
width: 100%;
height: 100%;
&::before,
&::after {
content: "";
position: absolute;
width: 100%;
height: 2px;
}
i {
position: absolute;
display: inline-block;
height: 100%;
width: 2px;
}
&::before {
top: 0;
left: -100%;
background-image: linear-gradient(
90deg,
transparent,
#03e9f4,
transparent
);
animation: one 4s linear infinite;
}
i:nth-child(1) {
top: -100%;
right: 0;
background-image: linear-gradient(
180deg,
transparent,
#03e9f4,
transparent
);
/* 动画名称 动画持续时间 动画渲染函数 动画延迟时间 动画执行次数 */
animation: two 4s linear 1s infinite;
}
&::after {
bottom: 0;
right: -100%;
background-image: linear-gradient(
-90deg,
transparent,
#03e9f4,
transparent
);
animation: three 4s linear 2s infinite;
}
i:nth-child(2) {
bottom: -100%;
left: 0;
background-image: linear-gradient(
360deg,
transparent,
#03e9f4,
transparent
);
animation: four 4s linear 3s infinite;
}
}
.text {
display: flex;
position: absolute;
font-size: 16px;
font-family: SourceHanSansCN;
font-weight: bold;
color: #ffffff;
position: absolute;
right: 5px;
top: 1px;
align-items: center;
}
.gTitle {
position: absolute;
color: #acd1f1;
height: 100%;
display: flex;
align-items: center;
left: 156px;
}
.c {
width: 130px;
height: 33px;
cursor: pointer;
}
}
@keyframes one {
0% {
left: -100%;
}
50%,
100% {
left: 100%;
}
}
@keyframes two {
0% {
top: -100%;
}
50%,
100% {
top: 100%;
}
}
@keyframes three {
0% {
right: -100%;
}
50%,
100% {
right: 100%;
}
}
@keyframes four {
0% {
bottom: -100%;
}
50%,
100% {
bottom: 100%;
}
}
</style>
<style lang="scss" scoped>
:deep(.el-pagination.is-background .el-pager li) {
color: #fff;
background: rgba(255, 255, 255, 0.14);
border: 1px solid #6bade1;
margin: 0;
}
:deep(.el-pagination.is-background .el-pager li.is-active) {
background: rgba(0, 144, 255, 0.49);
border: 1px solid #6bade1;
}
:deep(.el-pagination.is-background .btn-prev:disabled) {
color: #fff;
background: rgba(255, 255, 255, 0.14);
border: 1px solid #6bade1;
}
:deep(.el-pagination.is-background .btn-next:disabled) {
color: #fff;
background: rgba(255, 255, 255, 0.14);
border: 1px solid #6bade1;
}
:deep(.el-pagination.is-background .btn-prev) {
color: #fff;
background: rgba(255, 255, 255, 0.14);
border: 1px solid #6bade1;
}
:deep(.el-pagination.is-background .btn-next) {
color: #fff;
background: rgba(255, 255, 255, 0.14);
border: 1px solid #6bade1;
}
</style>

View File

@ -139,14 +139,14 @@ const reset_font = () => {
onMounted(() => {
let token = tools.data.get("token");
// console.log(token, "token");
if (token == null) {
ElMessage.error({
message: "请重新登录!",
offset: 100,
});
window.location.href =
"http://220.191.238.50:996/api/login?returnURL=" + window.location.href;
}
// if (token == null) {
// ElMessage.error({
// message: "!",
// offset: 100,
// });
// window.location.href =
// "http://220.191.238.50:996/api/login?returnURL=" + window.location.href;
// }
reset_font();
reset_font();
});

File diff suppressed because it is too large Load Diff

View File

@ -93,7 +93,121 @@
</div>
</div>
<div class="person-side">
<div v-if="rightType == '1'">
<div v-if="dataMyTag.title == '医疗金发放情况'">
<div>
<div class="my-label">
<div class="my-label-title">{{ dataMyTag.title }}</div>
</div>
<div class="my-table">
<el-table
:data="tableType.data"
border
style="width: 100%"
max-height="270"
:header-cell-style="{
border: 'none',
height: '60px',
fontSize: '18px',
color: '#fff',
}"
:row-style="{
letterSpacing: '1px',
fontSize: '16px',
height: '50px',
backgroundColor: 'rgba(31, 63, 113, 1)',
color: '#fff',
}"
>
<template v-for="item in tableType.columns">
<el-table-column
v-if="item.type == 'slot'"
:label="item.label"
:prop="item.property"
>
<template #default="scope">
<!-- 医疗保险类型 -->
<div v-if="item.property == 'ylbxlx'">
<div v-if="scope.row.ylbxlx == 0">
城乡居民基本医疗保险
</div>
<div v-if="scope.row.ylbxlx == 0">
城乡居民基本医疗保险
</div>
<div v-else>职工基本医疗保险</div>
</div>
<!-- 养老金类型 -->
<div v-if="item.property == 'yljlx'">
<div v-if="scope.row.yljlx == 0">城乡居民养老金</div>
<div v-else>职工养老金</div>
</div>
</template>
</el-table-column>
<el-table-column
v-else
:width="item.width"
:prop="item.property"
:label="item.label"
/>
</template>
</el-table>
<el-pagination
background
layout="prev, pager, next"
:page-size="pagination.pageSize"
:total="pagination.total"
prev-text="上一页"
next-text="下一页"
v-model:current-page="pagination.current"
@current-change="handlePagination"
/>
</div>
</div>
<div>
<div class="my-label">
<div class="my-label-title">一卡通</div>
</div>
<div class="my-table">
<el-table
:data="dataMyTag.form.data"
border
style="width: 100%"
max-height="270"
:header-cell-style="{
border: 'none',
height: '60px',
fontSize: '18px',
color: '#fff',
}"
:row-style="{
letterSpacing: '1px',
fontSize: '16px',
height: '50px',
backgroundColor: 'rgba(31, 63, 113, 1)',
color: '#fff',
}"
>
<template v-for="item in dataMyTag.form.column">
<el-table-column
:width="item.width"
:prop="item.property"
:label="item.label"
/>
</template>
</el-table>
<el-pagination
background
layout="prev, pager, next"
:page-size="zhpagination.pageSize"
:total="zhpagination.total"
prev-text="上一页"
next-text="下一页"
v-model:current-page="zhpagination.current"
@current-change="handlePagination1"
/>
</div>
</div>
</div>
<div v-else-if="tableType.data?.length > 1">
<div class="my-label">
<div class="my-label-title">{{ dataMyTag.title }}</div>
</div>
@ -210,6 +324,8 @@ import Dialog from "@/view/dialog/dialog.vue";
import { useRouter, useRoute } from "vue-router";
import http from "@/utils/request.js";
import tools from "@/utils/tools";
const router = useRouter();
const routers = useRoute();
const identNo = ref("");
const jump = ref("");
const props = defineProps({
@ -221,10 +337,10 @@ const props = defineProps({
},
});
const emit = defineEmits(["backMap"]);
const router = useRouter();
const routers = useRoute();
//
const dataMyTag = reactive({
title: "出生",
identNo: "",
myTag: [
{
name: "低保",
@ -302,7 +418,10 @@ const dataMyTag = reactive({
// show: 0,
// },
],
title: "出生",
/**
* @type {Array}
* @description 标题头
*/
myTag1: [
{
name: "出生",
@ -337,10 +456,10 @@ const dataMyTag = reactive({
label: "医疗金发放情况",
},
],
/**
* @type {Array}
* @description 表格配置
*/
form: {
data: [],
column: [],
}
});
//
const pagination = reactive({
@ -349,6 +468,13 @@ const pagination = reactive({
total: 50,
showTotal: 0,
});
//
const zhpagination = reactive({
current: 1,
pageSize: 10,
total: 10,
showTotal: 0,
});
//
const paginationDialog = reactive({
current: 1,
@ -522,6 +648,23 @@ const columnsList = reactive({
url: "",
column: [],
},
一卡通: {
url: "/api/ggfwyth/ysyzt/getRyyktffxx",
column: [
{
label: "项目名称",
property: "xmmc",
},
{
label: "支付金额",
property: "zfje",
},
{
label: "支付日期",
property: "zfrq",
},
],
},
});
//
@ -557,23 +700,33 @@ const onClickTag2 = (name, label) => {
dataMyTag.title = label;
tableType.url = columnsList[name].url;
tableType.columns = columnsList[name].column;
if(name=='婚育'){
console.log(name, label,'名字');
}else{
if (name == "婚育") {
} else if (name == "综合") {
// tableType.url = columnsList[""].url;
// tableType.columns = columnsList[""].column;
dataMyTag.form.column = columnsList["一卡通"].column;
oneCardSolution();
getTable(tableType.url, true);
} else {
getTable(tableType.url, true);
}
};
//01
/**
* 判断右侧显示的为表格还是列表0为列表1为表格
*/
const rightType = ref(0);
//
const rightList = ref([]);
//
const getTable = (url, csh) => {
// cshtruefalse
/**
* csh为true时代表初始化为false时代表分页
*/
http
.get(url, {
identNo: identNo.value,
identNo: dataMyTag.identNo,
page: pagination.current,
size: pagination.pageSize,
})
@ -608,6 +761,11 @@ const handlePagination = (currentPage) => {
pagination.current = currentPage;
getTable(tableType.url, false);
};
//
const handlePagination1 = (currentPage) => {
zhpagination.current = currentPage;
oneCardSolution();
};
//
const handlePaginationDialog = (currentPage) => {
// dialogShow.value = false;
@ -630,6 +788,20 @@ const getData = (identNo) => {
}
});
};
const oneCardSolution = () => {
http
.get(
`/api/ggfwyth/ysyzt/getRyyktffxx?identNo=${dataMyTag.identNo}&page=${zhpagination.current}&size=${zhpagination.pageSize}`
)
.then((res) => {
if (res.code == 200) {
// tableType.data = res.data;
dataMyTag.form.data= res.data;
zhpagination.total = res.count;
}
});
};
const back = () => {
if (jump.value == "detail") {
router.back();
@ -641,6 +813,7 @@ watch(
() => props.message,
(newValue, oldValue) => {
identNo.value = props.message.identNo;
dataMyTag.identNo = routers.query.identNo;
getData(props.message.identNo);
onClickTag2("出生", "出生");
jump.value = "map";
@ -649,8 +822,9 @@ watch(
onMounted(() => {
tools.data.set("token", "6b0e380b4a8f46baae4923f83faf670d");
if (routers.query.type) {
getData(routers.query.identNo);
dataMyTag.identNo = routers.query.identNo;
jump.value = "detail";
getData(routers.query.identNo);
onClickTag2("出生");
} else {
jump.value = "map";

View File

@ -755,6 +755,13 @@ const tableType = reactive({
url: "",
title: "人员列表",
columns: [
{
label: "序号",
property: "index",
width: "50",
type: "index",
align: "center",
},
{
label: "姓名",
property: "nm",
@ -767,10 +774,10 @@ const tableType = reactive({
label: "年龄",
property: "age",
},
{
label: "政治面貌",
property: "zzmm",
},
// {
// label: "",
// property: "zzmm",
// },
{
label: "居住状态",
property: "jzzt",
@ -1544,18 +1551,15 @@ const getDataBqs3 = async (jd, cs, bq) => {
cs_dd_arr.value = [...xuanzhongCs.value];
if (choose.value.person == "") {
cs_dd_arr.value.map((item, index) => {
DGcreateCs(item, index);
});
} else {
console.log(cs_dd_arr.value);
cs_dd_arr.value.map((item, index) => {
DGcreateCs2(item, index);
});
}
}
});
};
@ -1856,6 +1860,9 @@ const person_detail = (age, tagId) => {
.then((res) => {
if (res.code == 200) {
tableType.data = res.data;
res.data.forEach((item, index) => {
item.index = index + 1 + (pagination.currentPage - 1) * pagination.pageSize;
});
pagination.total = res.count;
}
});

View File

@ -662,7 +662,7 @@ const sevenYX = (name) => {
};
onMounted(() => {
tools.data.set("token", "6b0e380b4a8f46baae4923f83faf670d");
// tools.data.set("token", "6b0e380b4a8f46baae4923f83faf670d");
getData("弱有所扶", "社会救助服务");
sevenYX("弱有众扶");
});