From 4076c14a8eac96cd716522f2cb15dcda0eb4fcef Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期三, 10 四月 2024 08:37:53 +0800 Subject: [PATCH] 新修改 --- src/views/warningManage/warningPeople/index.vue | 151 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 145 insertions(+), 6 deletions(-) diff --git a/src/views/warningManage/warningPeople/index.vue b/src/views/warningManage/warningPeople/index.vue index c1d2ba9..e3c1063 100644 --- a/src/views/warningManage/warningPeople/index.vue +++ b/src/views/warningManage/warningPeople/index.vue @@ -1,15 +1,154 @@ <template> - <div> - 预警通知 - </div> + <div class="system-gas-container"> + <el-card shadow="hover"> + <div class="system-menu-search mb15"> + <el-form :inline="true" > + <el-form-item label="姓名:"> + <el-input v-model="state.tableData.listQuery.searchParams.realName" placeholder="请输入姓名" ></el-input> + </el-form-item> + <el-button size="default" type="primary" class="ml10" @click="search()"> + <el-icon> + <ele-Search /> + </el-icon> + 查询 + </el-button> + <el-button size="default" class="ml10" @click="reset()"> + <el-icon> + <RefreshLeft /> + </el-icon> + 重置 + </el-button> + </el-form> + </div> + <el-button size="default" class="mb10" type="success" @click="openDialog('新增',{})"> + <el-icon> + <ele-FolderAdd /> + </el-icon> + 新增预警人员 + </el-button> + + <el-table :data="state.tableData.data" style="width: 100%"> + <el-table-column align="center" prop="realName" label="预警人员"/> + <el-table-column align="center" prop="phone" label="手机号"/> + <el-table-column label="操作" show-overflow-tooltip align="center" width="240"> + <template #default="scope"> + <el-button size="small" text type="primary" @click="openDialog('查看', scope.row)">查看</el-button> + <el-button size="small" text type="primary" @click="openDialog('修改', scope.row)">修改</el-button> + <el-button size="small" text type="primary" style="color:red;" @click="del(scope.row)">删除</el-button> + </template> + </el-table-column> + </el-table> + <br /> + <el-pagination + @size-change="onHandleSizeChange" + @current-change="onHandleCurrentChange" + class="page-position" + :pager-count="5" + :page-sizes="[10, 20, 30]" + v-model:current-page="state.tableData.listQuery.pageIndex" + background + v-model:page-size="state.tableData.listQuery.pageSize" + layout="total, sizes, prev, pager, next, jumper" + :total="state.tableData.total"> + </el-pagination> + <br /> + <br /> + </el-card> + <people-dialog ref="peopleRef" @getPeopleData = initPeopleData></people-dialog> + </div> </template> <script setup lang="ts"> +import {reactive, ref, onMounted} from "vue"; +import { ElMessage, ElMessageBox } from 'element-plus' +import { PeopleDataState } from "/@/types/warning"; +import peopleDialog from "./component/peopleDialog.vue"; +import { warningPeopleApi } from "/@/api/warningManage/warningPeople"; +const peopleRef = ref(); +const state = reactive<PeopleDataState>({ + tableData: { + data: [], + total: 0, + loading: false, + listQuery: { + pageIndex: 1, + pageSize: 10, + searchParams:{ + realName: '' + } + } + } +}); + +//页面加载 +onMounted(() => { + initPeopleData(); +}); + +const initPeopleData = async () => { + let res = await warningPeopleApi().getWarnUserPage(state.tableData.listQuery); + if(res.data.code == 100) { + state.tableData.listQuery.pageIndex = res.data.pageIndex; + state.tableData.listQuery.pageSize = res.data.pageSize; + state.tableData.total = res.data.total; + state.tableData.data = res.data.data; + }else { + ElMessage({ + type: 'error', + message: res.data.msg + }); + } +}; +const onHandleSizeChange = (val: number) => { + state.tableData.listQuery.pageSize = val; + initPeopleData(); +}; +// 分页改变 +const onHandleCurrentChange = (val: number) => { + state.tableData.listQuery.pageIndex = val; + initPeopleData(); +}; +const openDialog = (type: string, value: any) => { + peopleRef.value.openDialog(type, value); +}; +const del = (val: any) => { + ElMessageBox.confirm( + '确定删除此条数据?', + '提示', + { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning', + } + ) + .then(async () => { + let res = await warningPeopleApi().delWarnUser({id: val.id}) + if(res.data.code == 100) { + ElMessage({ + type: 'success', + message: '删除成功', + }) + state.tableData.listQuery.pageIndex = 1; + initPeopleData(); + }else { + ElMessage({ + type: 'error', + message: res.data.msg + }); + } + }) +}; +const search = () => { + state.tableData.listQuery.pageIndex = 1; + initPeopleData(); +}; +const reset = () => { + state.tableData.listQuery.pageIndex = 1; + state.tableData.listQuery.searchParams.realName = ''; + initPeopleData(); +} </script> - - - <style scoped lang="scss"> </style> \ No newline at end of file -- Gitblit v1.9.2