From c21f3d6df8746ec55ab9e7a64e4e130577c49fea Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: Mon, 25 Jul 2022 09:25:53 +0800
Subject: [PATCH] 接口对接
---
src/views/contingencyManagement/panManagement/index.vue | 265 ++++++++++++++++++++++++----------------------------
1 files changed, 123 insertions(+), 142 deletions(-)
diff --git a/src/views/contingencyManagement/panManagement/index.vue b/src/views/contingencyManagement/panManagement/index.vue
index fecf1bd..b083b2d 100644
--- a/src/views/contingencyManagement/panManagement/index.vue
+++ b/src/views/contingencyManagement/panManagement/index.vue
@@ -2,19 +2,27 @@
<div class="system-user-container">
<el-card shadow="hover">
<div class="system-user-search mb15">
- <el-input size="default" placeholder="预案名称" style="max-width: 215px;"> </el-input>
- <el-select size="default" v-model="value" placeholder="请选择预案类型" class="ml10" style="max-width: 215px;">
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
- </el-select>
- <el-button size="default" type="primary" class="ml10">
- 查询
- </el-button>
- <el-button size="default" class="ml10" @click="submitReset">
- 重置
- </el-button>
+ <el-form :inline="true" :model="formInline" class="demo-form-inline">
+ <el-form-item>
+ <el-input size="default" v-model="formInline.searchParams.name" placeholder="预案名称" style="max-width: 215px;"> </el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-select size="default" v-model="formInline.searchParams.type" placeholder="请选择预案类型" class="ml10" style="max-width: 215px;">
+ <el-option label="综合应急预案" value="admin"></el-option>
+ <el-option label="现场处置方案" value="common"></el-option>
+ <el-option label="专项应急预案" value="common"></el-option>
+ <el-option label="其他预案" value="common"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item>
+ <el-button size="default" type="primary" class="ml10" @click="onSubmit">
+ 查询
+ </el-button>
+ <el-button size="default" class="ml10">
+ 重置
+ </el-button>
+ </el-form-item>
+ </el-form>
</div>
<div class="button_Line">
<div class="button_Left">
@@ -38,17 +46,17 @@
</el-button>
</div>
<div class="button_Right">
- <el-button @click="upButton">
+ <el-button size="default" @click="upButton">
<el-icon>
<Upload />
</el-icon>
</el-button>
- <el-button>
+ <el-button size="default">
<el-icon>
<Download />
</el-icon>
</el-button>
- <el-button>
+ <el-button size="default">
<el-icon>
<Refresh />
</el-icon>
@@ -56,7 +64,7 @@
</div>
</div>
<el-table
- :data="tableData"
+ :data="tableData.data"
style="width: 100%"
ref="multipleTableRef"
>
@@ -96,40 +104,27 @@
</template>
</el-table-column>
</el-table>
- <!-- <el-pagination-->
- <!-- @size-change="onHandleSizeChange"-->
- <!-- @current-change="onHandleCurrentChange"-->
- <!-- class="mt15"-->
- <!-- :pager-count="5"-->
- <!-- :page-sizes="[10, 20, 30]"-->
- <!-- v-model:current-page="tableData.param.pageNum"-->
- <!-- background-->
- <!-- v-model:page-size="tableData.param.pageSize"-->
- <!-- layout="total, sizes, prev, pager, next, jumper"-->
- <!-- :total="tableData.total"-->
- <!-- >-->
- <!-- </el-pagination>-->
<div class="pages">
<el-pagination
- v-model:currentPage="pageIndex"
- v-model:page-size="pageSize"
+ v-if="tableData.length == 0 ? false : true"
+ v-model:currentPage="formInline.pageIndex"
+ v-model:page-size="formInline.pageSize"
:page-sizes="[10, 20, 30]"
:pager-count="5"
- :small="small"
- :disabled="disabled"
- :background="background"
+ class="mt15"
+ background
layout="total, sizes, prev, pager, next, jumper"
- :total="40"
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
+ :total="tableData.total"
+ @size-change="onHandleSizeChange"
+ @current-change="onHandleCurrentChange"
/>
</div>
</el-card>
- <OpenAdd ref="addRef" />
+ <OpenAdd ref="addRef" @refreshRoleList="initTableData"/>
<AbolishLibrary ref="abolishRef"/>
- <OpenEdit ref="editRef" />
<upData ref="upShow"></upData>
- <el-dialog v-model="dialogFormVisible" width="30%" title="启动">
+ <el-dialog v-model="dialogFormVisible" width="30%" title="启动" :fullscreen="full">
+ <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
<el-form :model="form" label-width="80px">
<el-form-item label="备注" >
<el-input v-model="form.remarks" type="textarea" autocomplete="off" />
@@ -149,9 +144,9 @@
<script lang="ts">
import {
- // toRefs,
+ toRefs,
reactive,
- // onMounted,
+ onMounted,
ref,
defineComponent
} from 'vue';
@@ -167,16 +162,15 @@
Upload,
Download,
Refresh,
- View,
VideoPause,
VideoPlay,
EditPen,
+ FullScreen
} from '@element-plus/icons-vue'
import OpenAdd from '/@/views/contingencyManagement/panManagement/component/openAdd.vue';
import AbolishLibrary from '/@/views/contingencyManagement/panManagement/component/abolishLibrary.vue';
-import OpenEdit from '/@/views/contingencyManagement/panManagement/component/openEdit.vue';
import UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';
-
+import {emergencyPlanApi} from "/@/api/emergencyPlan";
// 定义表格数据类型
interface User {
teamName: string
@@ -204,14 +198,19 @@
// // describe: string;
// createTime: string;
}
-
+//
+interface TableDataState {
+ tableData: {
+ data: Array<TableDataRow>;
+ total: number;
+ loading: boolean;
+ };
+}
export default defineComponent({
name: 'systemUser',
components: {
OpenAdd,
AbolishLibrary,
- OpenEdit,
- View,
EditPen,
Plus,
Edit,
@@ -221,18 +220,53 @@
Refresh,
VideoPause,
VideoPlay,
- UpData
+ UpData,
+ emergencyPlanApi
},
setup() {
- // const seeRef = ref();
- const editRef = ref();
- // 选择框
- // const value = ref('');
- // const options =
- // {
- // value: 'Option1',
- // label: 'Option1',
- // };
+ // 定义表单搜索
+ const formInline = reactive({
+ pageIndex: 1,
+ pageSize: 10,
+ searchParams: {
+ name: "",
+ type: "",
+ }
+ })
+ // 搜索按钮
+ const onSubmit = async () => {
+ let res = await emergencyPlanApi().getEmergencyPlanList(formInline)
+ if(res.data.code === '200'){
+ state.tableData.data = res.data.data;
+ state.tableData.total = state.tableData.data.length;
+ }else{
+ ElMessage({
+ type:'warning',
+ message:res.data.msg
+ })
+ }
+ }
+ // 定义表格数据
+ const state = reactive<TableDataState>({
+ tableData: {
+ data: [],
+ total: 0,
+ loading: false,
+ },
+ })
+ // 初始化表格数据
+ const initTableData = async () => {
+ let res = await emergencyPlanApi().getEmergencyPlanList(formInline)
+ if(res.data.code === '200'){
+ state.tableData.data = res.data.data;
+ state.tableData.total = state.tableData.data.length;
+ }else{
+ ElMessage({
+ type:'warning',
+ message:res.data.msg
+ })
+ }
+ };
const multipleTableRef = ref<InstanceType<typeof ElTable>>()
const multipleSelection = ref<User[]>([])
@@ -241,61 +275,6 @@
const upButton=()=>{
upShow.value.openDialog()
}
- // 定义表格数据
- const tableData: User[] = [
- {
- teamName: '应急救援组',
- teamLevel: '公司',
- teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
- teamPhone: '051383830321',
- phone: '13603812900',
- describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
- '(2)负责现场被困人员、受伤人员抢救工作;\n' +
- '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
- '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
- responsibleDepartment: '仪表班',
- teamLeader: '王磊',
- },
- {
- teamName: '应急救援组',
- teamLevel: '公司',
- teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
- teamPhone: '051383830321',
- phone: '13603812900',
- describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
- '(2)负责现场被困人员、受伤人员抢救工作;\n' +
- '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
- '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
- responsibleDepartment: '仪表班',
- teamLeader: '王磊',
- },
- {
- teamName: '应急救援组',
- teamLevel: '公司',
- teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
- teamPhone: '051383830321',
- phone: '13603812900',
- describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
- '(2)负责现场被困人员、受伤人员抢救工作;\n' +
- '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
- '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
- responsibleDepartment: '仪表班',
- teamLeader: '王磊',
- },
- {
- teamName: '应急救援组',
- teamLevel: '公司',
- teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
- teamPhone: '051383830321',
- phone: '13603812900',
- describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
- '(2)负责现场被困人员、受伤人员抢救工作;\n' +
- '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
- '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
- responsibleDepartment: '仪表班',
- teamLeader: '王磊',
- }
- ]
// 启动弹窗
const dialogTableVisible = ref(false)
const dialogFormVisible = ref(false)
@@ -312,10 +291,6 @@
const onabolishLibrary = () => {
abolishRef.value.openDialog();
};
- // 打开修改用户弹窗
- const onOpenEdit = (row: TableDataRow) => {
- editRef.value.openDialog(row);
- };
// 删除用户
const onRowDel = (row: TableDataRow) => {
ElMessageBox.confirm(`此操作将永久删除账户名称:“${row}”,是否继续?`, '提示', {
@@ -329,19 +304,16 @@
.catch(() => {});
};
// 页面加载时
- // onMounted(() => {
- // initTableData();
- // });
- // 分页
- const pageIndex = ref(4);
- const pageSize = ref(10);
+ onMounted(() => {
+ initTableData();
+ });
// 分页改变
- const handleSizeChange = (val: number) => {
- console.log(`${val} items per page`);
+ const onHandleSizeChange = (val: number) => {
+ formInline.pageSize = val;
};
// 分页未改变
- const handleCurrentChange = (val: number) => {
- console.log(`current page: ${val}`);
+ const onHandleCurrentChange = (val: number) => {
+ formInline.pageIndex = val;
};
const router=useRouter()
@@ -363,35 +335,41 @@
}
})
}
+ //全屏
+ const full = ref(false);
+ const toggleFullscreen = () => {
+ if (full.value == false) {
+ full.value = true;
+ } else {
+ full.value = false;
+ }
+ };
return {
- // value,
- // options,
multipleSelection,
multipleTableRef,
upButton,
upShow,
- tableData,
+ initTableData,
dialogTableVisible,
dialogFormVisible,
form,
- // seeRef,
- onOpenEdit, //编辑
- editRef,
+ onSubmit,
onOpenAdd, //新增
onabolishLibrary,
addRef,
abolishRef,
onRowDel,
- pageIndex,
- pageSize,
- handleSizeChange,
- handleCurrentChange,
+ onHandleSizeChange,
+ onHandleCurrentChange,
jumpFrom,
abolish,
router,
- // onHandleSizeChange,
- // onHandleCurrentChange,
- // ...toRefs(state),
+ toggleFullscreen,
+ FullScreen,
+ full,
+ formInline,
+ onMounted,
+ ...toRefs(state),
};
},
});
@@ -409,8 +387,11 @@
display: flex;
flex-direction: row;
justify-content: space-between;
+ margin-bottom: 10px;
}
-
+.el-form .el-form-item {
+ margin-bottom: 0 !important;
+}
.el-button--text {
margin-right: 15px;
}
--
Gitblit v1.9.2