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> <div class="minPieImg2">就业培训</div>
<jypx v-if="showEchart"></jypx> <jypx v-if="showEchart"></jypx>
<div class="jypx_right"> <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="" /> <img :src="item.img" alt="" />
<div class="jypx_right_item_right"> <div class="jypx_right_item_right">
<div class="jypx_name">{{ item.name }}</div> <div class="jypx_name">{{ item.name }}</div>
@ -191,20 +195,17 @@
<DialogEcTy <DialogEcTy
:dialogShowEc="dialogShowEcTy" :dialogShowEc="dialogShowEcTy"
:title="dataEc.title" :title="dataEc.title"
:showXq='false' :showXq="false"
@close="close" @close="close"
> >
<template #echart> <template #echart>
<dialog_jjlxfb <dialog_jjlxfb @shuju="jsSj"></dialog_jjlxfb>
@shuju="jsSj"
></dialog_jjlxfb>
</template> </template>
</DialogEcTy> </DialogEcTy>
<DialogEcTy <DialogEcTy
:dialogShowEc="dialogShowEcTy1" :dialogShowEc="dialogShowEcTy1"
:title="dataEc.title" :title="dataEc.title"
:showXq='true' :showXq="true"
@close="close" @close="close"
> >
<template #echart> <template #echart>
@ -222,7 +223,7 @@
:title="tableType.title" :title="tableType.title"
:tableData="tableType.data" :tableData="tableType.data"
:pagination="pagination" :pagination="pagination"
:showXq='false' :showXq="false"
@close="closeJj" @close="closeJj"
@handle="handlePagination" @handle="handlePagination"
> >
@ -265,6 +266,7 @@ import ViewDataimg2 from "@/assets/images/sjfx/sjfx2.png";
import ViewDataimg3 from "@/assets/images/sjfx/sjfx3.png"; import ViewDataimg3 from "@/assets/images/sjfx/sjfx3.png";
import jypx1 from "@/assets/images/sjfx/pxrc.png"; import jypx1 from "@/assets/images/sjfx/pxrc.png";
import jypx2 from "@/assets/images/sjfx/gygws.png"; import jypx2 from "@/assets/images/sjfx/gygws.png";
import tools from "@/utils/tools";
const showR = ref(false); //loading const showR = ref(false); //loading
// //
const dialogShowEnrol = ref(false); const dialogShowEnrol = ref(false);
@ -554,15 +556,15 @@ const columns = reactive({
column: [ column: [
{ {
label: "姓名", label: "姓名",
property: "name", property: "xm",
}, },
{ {
label: "培训机构名称", label: "培训机构名称",
property: "mc", property: "pxjgmc",
}, },
{ {
label: "培训项目", label: "培训项目",
property: "xm", property: "pxxm",
}, },
], ],
}, },
@ -578,10 +580,10 @@ const close = () => {
dialogShowEcTy1.value = false; dialogShowEcTy1.value = false;
dialogShowElderly.value = false; dialogShowElderly.value = false;
}; };
const closeJj=()=>{ const closeJj = () => {
dialogShow.value = false; dialogShow.value = false;
pagination.currentPage=1; pagination.currentPage = 1;
} };
const showEnrol1 = () => { const showEnrol1 = () => {
dialogShowElderly.value = true; dialogShowElderly.value = true;
}; };
@ -607,19 +609,30 @@ const jsSj = (name, index) => {
} else { } else {
tableType.title = `${name}转出人数`; tableType.title = `${name}转出人数`;
} }
tableType.columns=columns["聚集数据"].column; tableType.columns = columns["聚集数据"].column;
dialogShow.value = true; dialogShow.value = true;
}; };
//+ //+
const showPx =(name)=>{ const showPx = (name) => {
if(name=='培训人次'){ if (name == "培训人次") {
getTrain();
tableType.title = `培训详情`; tableType.title = `培训详情`;
tableType.columns=columns["培训"].column; tableType.columns = columns["培训"].column;
dialogShow.value = true; 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({ const pagination = reactive({
total: 100, total: 100,
@ -628,6 +641,7 @@ const pagination = reactive({
}); });
const handlePagination = (current) => { const handlePagination = (current) => {
pagination.currentPage = current; pagination.currentPage = current;
getTrain();
}; };
//---------------- //----------------
// //
@ -646,7 +660,6 @@ const tab_change = (index, name) => {
} }
}; };
const chooseXX = (name) => { const chooseXX = (name) => {
console.log(name);
if (name == "交通") { if (name == "交通") {
mapTitle.value = "交通"; mapTitle.value = "交通";
dialogShowMap.value = true; dialogShowMap.value = true;
@ -834,7 +847,7 @@ const data = reactive({
{ name: "交通", num: 4026 }, { name: "交通", num: 4026 },
{ name: "两慢病", num: 2 }, { name: "两慢病", num: 2 },
{ name: "天气", num: 102 }, { name: "天气", num: 102 },
{ name: "低保低边医疗救助政策", num: 87 }, { name: "低保低边医疗救助政策", num: 87 },
{ name: "孕妇生育津贴申领", num: 19 }, { name: "孕妇生育津贴申领", num: 19 },
], ],
}, },
@ -948,6 +961,7 @@ const getData = async () => {
}; };
onMounted(() => { onMounted(() => {
tools.data.set("token", "6b0e380b4a8f46baae4923f83faf670d");
startAutoSwitching(); startAutoSwitching();
}); });

View File

@ -44,9 +44,16 @@
<el-table <el-table
:data="data.tableData" :data="data.tableData"
height="100%" height="100%"
:header-cell-style="{ background: '#008FCD' }"
:key="tableKey" :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 <!-- <el-table-column
v-for="(item, index) in data.columns" v-for="(item, index) in data.columns"
:key="index" :key="index"
@ -157,6 +164,40 @@ const data = reactive({
pagination: {}, 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 gridData = [];
// //
const tableKey = ref(Math.random()); const tableKey = ref(Math.random());
@ -308,3 +349,239 @@ const handle = (current) => {
} }
} }
</style> </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(() => { onMounted(() => {
let token = tools.data.get("token"); let token = tools.data.get("token");
// console.log(token, "token"); // console.log(token, "token");
if (token == null) { // if (token == null) {
ElMessage.error({ // ElMessage.error({
message: "请重新登录!", // message: "!",
offset: 100, // offset: 100,
}); // });
window.location.href = // window.location.href =
"http://220.191.238.50:996/api/login?returnURL=" + window.location.href; // "http://220.191.238.50:996/api/login?returnURL=" + window.location.href;
} // }
reset_font(); reset_font();
reset_font(); reset_font();
}); });

File diff suppressed because it is too large Load Diff

View File

@ -93,7 +93,121 @@
</div> </div>
</div> </div>
<div class="person-side"> <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">
<div class="my-label-title">{{ dataMyTag.title }}</div> <div class="my-label-title">{{ dataMyTag.title }}</div>
</div> </div>
@ -210,6 +324,8 @@ import Dialog from "@/view/dialog/dialog.vue";
import { useRouter, useRoute } from "vue-router"; import { useRouter, useRoute } from "vue-router";
import http from "@/utils/request.js"; import http from "@/utils/request.js";
import tools from "@/utils/tools"; import tools from "@/utils/tools";
const router = useRouter();
const routers = useRoute();
const identNo = ref(""); const identNo = ref("");
const jump = ref(""); const jump = ref("");
const props = defineProps({ const props = defineProps({
@ -221,10 +337,10 @@ const props = defineProps({
}, },
}); });
const emit = defineEmits(["backMap"]); const emit = defineEmits(["backMap"]);
const router = useRouter();
const routers = useRoute();
// //
const dataMyTag = reactive({ const dataMyTag = reactive({
title: "出生",
identNo: "",
myTag: [ myTag: [
{ {
name: "低保", name: "低保",
@ -302,7 +418,10 @@ const dataMyTag = reactive({
// show: 0, // show: 0,
// }, // },
], ],
title: "出生", /**
* @type {Array}
* @description 标题头
*/
myTag1: [ myTag1: [
{ {
name: "出生", name: "出生",
@ -337,10 +456,10 @@ const dataMyTag = reactive({
label: "医疗金发放情况", label: "医疗金发放情况",
}, },
], ],
/** form: {
* @type {Array} data: [],
* @description 表格配置 column: [],
*/ }
}); });
// //
const pagination = reactive({ const pagination = reactive({
@ -349,6 +468,13 @@ const pagination = reactive({
total: 50, total: 50,
showTotal: 0, showTotal: 0,
}); });
//
const zhpagination = reactive({
current: 1,
pageSize: 10,
total: 10,
showTotal: 0,
});
// //
const paginationDialog = reactive({ const paginationDialog = reactive({
current: 1, current: 1,
@ -522,6 +648,23 @@ const columnsList = reactive({
url: "", url: "",
column: [], 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; dataMyTag.title = label;
tableType.url = columnsList[name].url; tableType.url = columnsList[name].url;
tableType.columns = columnsList[name].column; 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); getTable(tableType.url, true);
} }
}; };
//01 /**
* 判断右侧显示的为表格还是列表0为列表1为表格
*/
const rightType = ref(0); const rightType = ref(0);
// //
const rightList = ref([]); const rightList = ref([]);
// //
const getTable = (url, csh) => { const getTable = (url, csh) => {
// cshtruefalse /**
* csh为true时代表初始化为false时代表分页
*/
http http
.get(url, { .get(url, {
identNo: identNo.value, identNo: dataMyTag.identNo,
page: pagination.current, page: pagination.current,
size: pagination.pageSize, size: pagination.pageSize,
}) })
@ -608,6 +761,11 @@ const handlePagination = (currentPage) => {
pagination.current = currentPage; pagination.current = currentPage;
getTable(tableType.url, false); getTable(tableType.url, false);
}; };
//
const handlePagination1 = (currentPage) => {
zhpagination.current = currentPage;
oneCardSolution();
};
// //
const handlePaginationDialog = (currentPage) => { const handlePaginationDialog = (currentPage) => {
// dialogShow.value = false; // 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 = () => { const back = () => {
if (jump.value == "detail") { if (jump.value == "detail") {
router.back(); router.back();
@ -641,6 +813,7 @@ watch(
() => props.message, () => props.message,
(newValue, oldValue) => { (newValue, oldValue) => {
identNo.value = props.message.identNo; identNo.value = props.message.identNo;
dataMyTag.identNo = routers.query.identNo;
getData(props.message.identNo); getData(props.message.identNo);
onClickTag2("出生", "出生"); onClickTag2("出生", "出生");
jump.value = "map"; jump.value = "map";
@ -649,8 +822,9 @@ watch(
onMounted(() => { onMounted(() => {
tools.data.set("token", "6b0e380b4a8f46baae4923f83faf670d"); tools.data.set("token", "6b0e380b4a8f46baae4923f83faf670d");
if (routers.query.type) { if (routers.query.type) {
getData(routers.query.identNo); dataMyTag.identNo = routers.query.identNo;
jump.value = "detail"; jump.value = "detail";
getData(routers.query.identNo);
onClickTag2("出生"); onClickTag2("出生");
} else { } else {
jump.value = "map"; jump.value = "map";

View File

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

View File

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