From f93a3a605d6d949515bedbcdc633c5f454014f02 Mon Sep 17 00:00:00 2001 From: Admin <978517621@qq.com> Date: 星期二, 26 七月 2022 17:07:06 +0800 Subject: [PATCH] 添加修改页面 --- src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue | 2 src/views/riskWarningSys/accidentLevel/index.vue | 407 +++++++++++++++ src/views/IntelligentXjSys/basicDataManagement/facilityArea/index.vue | 2 src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveLinkSetting/index.vue | 2 src/views/basicRightsManagement/personnelShiftManagement/teamManagement/index.vue | 2 src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue | 2 src/router/route.ts | 32 + src/views/IntelligentXjSys/inspectionTaskManagement/index.vue | 30 src/views/specialWorkSystem/afterWorkManagement/workTicketCheck/index.vue | 2 src/views/riskWarningSys/educationAndTraining/index.vue | 343 +++++++++++++ src/views/specialWorkSystem/approveProcessManagement/approveProcessList/index.vue | 2 src/views/specialWorkSystem/workBasicManagementSetting/personalProtectDevices/index.vue | 2 src/views/basicRightsManagement/personnelShiftManagement/holidayManagement/index.vue | 2 src/views/riskWarningSys/emergencyDrills/index.vue | 342 +++++++++++++ src/views/IntelligentXjSys/basicDataManagement/indicator/index.vue | 2 src/views/basicRightsManagement/personnelShiftManagement/personnelManagement/index.vue | 2 src/views/specialWorkSystem/workPlan/workAppointSummary/index.vue | 2 src/views/specialWorkSystem/workPlan/workReservation/index.vue | 2 src/views/specialWorkSystem/workBasicManagementSetting/certificateFilterSetting/index.vue | 2 src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/reportTypeSetting/index.vue | 2 src/views/IntelligentXjSys/basicDataManagement/inspection/index.vue | 2 src/views/specialWorkSystem/afterWorkManagement/workTicketRecord/index.vue | 2 src/views/basicRightsManagement/personnelShiftManagement/workingHours/index.vue | 2 src/views/specialWorkSystem/workBasicManagementSetting/workTypeSetting/index.vue | 2 src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveTypeSetting/index.vue | 2 src/views/riskWarningSys/riskLevel/index.vue | 322 ++++++++++++ src/views/specialWorkSystem/workBasicManagementSetting/securityMeasuresManagement/index.vue | 2 27 files changed, 1,490 insertions(+), 28 deletions(-) diff --git a/src/router/route.ts b/src/router/route.ts index b3846c9..aaa0429 100644 --- a/src/router/route.ts +++ b/src/router/route.ts @@ -329,5 +329,37 @@ meta: { title: '巡检记录管理' }, + }, + { + path: '/educationAndTraining', + name: 'educationAndTraining', + component: () => import('/@/views/riskWarningSys/educationAndTraining/index.vue'), + meta: { + title: '教育培训' + }, + }, + { + path: '/emergencyDrills', + name: 'emergencyDrills', + component: () => import('/@/views/riskWarningSys/emergencyDrills/index.vue'), + meta: { + title: '应急演练' + }, + }, + { + path: '/accidentLevel', + name: 'accidentLevel', + component: () => import('/@/views/riskWarningSys/accidentLevel/index.vue'), + meta: { + title: '事故等级' + }, + }, + { + path: '/riskLevel', + name: 'riskLevel', + component: () => import('/@/views/riskWarningSys/riskLevel/index.vue'), + meta: { + title: '风险等级' + }, } ]; diff --git a/src/views/IntelligentXjSys/basicDataManagement/facilityArea/index.vue b/src/views/IntelligentXjSys/basicDataManagement/facilityArea/index.vue index a40b89f..5c490e7 100644 --- a/src/views/IntelligentXjSys/basicDataManagement/facilityArea/index.vue +++ b/src/views/IntelligentXjSys/basicDataManagement/facilityArea/index.vue @@ -238,7 +238,7 @@ if(chosenIndex.value == -1){ addRecord.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[chosenIndex.value] = addRecord.value diff --git a/src/views/IntelligentXjSys/basicDataManagement/indicator/index.vue b/src/views/IntelligentXjSys/basicDataManagement/indicator/index.vue index 63819f9..7af3854 100644 --- a/src/views/IntelligentXjSys/basicDataManagement/indicator/index.vue +++ b/src/views/IntelligentXjSys/basicDataManagement/indicator/index.vue @@ -245,7 +245,7 @@ if(chosenIndex.value == -1){ addRecord.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[chosenIndex.value] = addRecord.value diff --git a/src/views/IntelligentXjSys/basicDataManagement/inspection/index.vue b/src/views/IntelligentXjSys/basicDataManagement/inspection/index.vue index d558469..ef85413 100644 --- a/src/views/IntelligentXjSys/basicDataManagement/inspection/index.vue +++ b/src/views/IntelligentXjSys/basicDataManagement/inspection/index.vue @@ -238,7 +238,7 @@ if(chosenIndex.value == -1){ addRecord.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[chosenIndex.value] = addRecord.value diff --git a/src/views/IntelligentXjSys/inspectionTaskManagement/index.vue b/src/views/IntelligentXjSys/inspectionTaskManagement/index.vue index e2cd7d9..5f1e4a9 100644 --- a/src/views/IntelligentXjSys/inspectionTaskManagement/index.vue +++ b/src/views/IntelligentXjSys/inspectionTaskManagement/index.vue @@ -583,6 +583,8 @@ const addRef = ref<FormInstance>() const addShiftRef = ref<FormInstance>() const addInspectionRef = ref<FormInstance>() + + // 表单校验 const addRules = reactive<FormRules>({ name:[{required: true, message: '该内容不能为空',trigger:'blur'}], type:[{required: true, message: '该内容不能为空',trigger:'blur'}], @@ -611,10 +613,14 @@ const addShift = ref({}) const addInspection = ref({}) const details = ref({}) + + // 查看记录 const viewRecord = (row) =>{ details.value = JSON.parse(JSON.stringify(row)) dialogDetails.value = true } + + // 删除记录 const deleteRecord = (index) =>{ chosenIndex.value = index deleteDialog.value = true @@ -622,6 +628,13 @@ const conFirmDelete = ()=> { tableData.splice(chosenIndex.value,1) deleteDialog.value = false + } + + // 修改添加记录 + const editRecord =(index, row)=>{ + chosenIndex.value = index + dialogAddRecord.value = true + addRecord.value = JSON.parse(JSON.stringify(row)) } const confirmAddRecord = async (formEl: FormInstance | undefined) =>{ if (!formEl) return @@ -649,7 +662,7 @@ addRecord.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') addRecord.value.chainLength = addRecord.value.shiftSteps.length addRecord.value.status = '开启' - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) } }else{ if(addRecord.value.shiftSteps.length == 0){ @@ -680,9 +693,13 @@ }) } + + // 添加弹窗打开前预操作 const openAdd =()=>{ addRecord.value.unit = '小时' } + + // 弹窗关闭后判断数据初始化 const closeAdd =()=>{ addRecord.value={} chosenIndex.value = -1 @@ -699,11 +716,6 @@ chosenInspectionIndex.value = -1 chosenShiftIndex.value = -1 } - const editRecord =(index, row)=>{ - chosenIndex.value = index - dialogAddRecord.value = true - addRecord.value = JSON.parse(JSON.stringify(row)) - } // 排序 function compare(key){ @@ -719,6 +731,8 @@ dialogAddShift.value = true chosenShiftIndex.value = index } + + // 删除巡检区域 const deleteFlow = (index) => { deleteShiftDialog.value = true chosenShiftIndex.value = index @@ -727,6 +741,7 @@ addRecord.value.shiftSteps.splice( chosenShiftIndex.value,1) deleteShiftDialog.value = false } + const confirmAddShift = async (formEl: FormInstance | undefined) => { if (!formEl) return await formEl.validate((valid, fields) => { @@ -742,8 +757,9 @@ console.log('error submit!', fields) } }) - } + + const addSysInspection =(index)=>{ dialogAddInspection.value = true chosenShiftIndex.value = index diff --git a/src/views/basicRightsManagement/personnelShiftManagement/holidayManagement/index.vue b/src/views/basicRightsManagement/personnelShiftManagement/holidayManagement/index.vue index 1c82f55..5ffe431 100644 --- a/src/views/basicRightsManagement/personnelShiftManagement/holidayManagement/index.vue +++ b/src/views/basicRightsManagement/personnelShiftManagement/holidayManagement/index.vue @@ -244,7 +244,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/basicRightsManagement/personnelShiftManagement/personnelManagement/index.vue b/src/views/basicRightsManagement/personnelShiftManagement/personnelManagement/index.vue index 4679574..6274717 100644 --- a/src/views/basicRightsManagement/personnelShiftManagement/personnelManagement/index.vue +++ b/src/views/basicRightsManagement/personnelShiftManagement/personnelManagement/index.vue @@ -237,7 +237,7 @@ if(chosenIndex.value == -1){ addRecord.value.startTime = JSON.parse(JSON.stringify(addRecord.value.timeRange))[0] addRecord.value.endTime = JSON.parse(JSON.stringify(addRecord.value.timeRange))[1] - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.startTime = JSON.parse(JSON.stringify(addRecord.value.timeRange))[0] addRecord.value.endTimeTime = JSON.parse(JSON.stringify(addRecord.value.timeRange))[1] diff --git a/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue b/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue index c9dc0de..97994c2 100644 --- a/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue +++ b/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue @@ -330,7 +330,7 @@ }) return }else{ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) } }else{ if(addRecord.value.type == '循环班' && addRecord.value.shiftSteps.length == 0){ diff --git a/src/views/basicRightsManagement/personnelShiftManagement/teamManagement/index.vue b/src/views/basicRightsManagement/personnelShiftManagement/teamManagement/index.vue index d4f963a..04f674a 100644 --- a/src/views/basicRightsManagement/personnelShiftManagement/teamManagement/index.vue +++ b/src/views/basicRightsManagement/personnelShiftManagement/teamManagement/index.vue @@ -249,7 +249,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/basicRightsManagement/personnelShiftManagement/workingHours/index.vue b/src/views/basicRightsManagement/personnelShiftManagement/workingHours/index.vue index 1c4f628..bb15eed 100644 --- a/src/views/basicRightsManagement/personnelShiftManagement/workingHours/index.vue +++ b/src/views/basicRightsManagement/personnelShiftManagement/workingHours/index.vue @@ -208,7 +208,7 @@ addRecord.value.endTime = '次日' + addRecord.value.endTime } addRecord.value.range = addRecord.value.startTime + '\xa0-\xa0' + addRecord.value.endTime - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ if(addRecord.value.startTime >= addRecord.value.endTime){ addRecord.value.endTime = '次日' + addRecord.value.endTime diff --git a/src/views/riskWarningSys/accidentLevel/index.vue b/src/views/riskWarningSys/accidentLevel/index.vue new file mode 100644 index 0000000..a876414 --- /dev/null +++ b/src/views/riskWarningSys/accidentLevel/index.vue @@ -0,0 +1,407 @@ +<template> + <div class="home-container"> + <el-scrollbar height="100%"> + <div class="homeCard"> + <div class="main-card"> + <el-row class="cardTop"> + <el-col :span="12" class="mainCardBtn"> + <el-button type="primary" :icon="Plus" size="default" @click="dialogAddRecord=true">新建</el-button> +<!-- <el-button type="warning" :icon="Edit" size="default" plain>修改</el-button>--> + <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button> + </el-col> + <el-button type="primary" :icon="Refresh" size="default"/> + </el-row> + <el-table + ref="multipleTableRef" + :data="tableData" + style="width: 100%" + :header-cell-style="{background: '#fafafa'}" + @selection-change="handleSelectionChange" + > + <el-table-column type="selection" width="55" /> + <el-table-column type="index" label="编号" width="80"/> + <el-table-column property="month" label="所属月份"/> + <el-table-column property="level" label="事故类型"/> + <el-table-column property="amount" label="事故起数(起)"/> + <el-table-column property="death" label="死亡人数(人)"/> + <el-table-column property="injury" label="重伤人数(人)"/> + <el-table-column property="wound" label="轻伤人数(人)"/> + <el-table-column property="cost" label="直接经济损失(万)"/> + <el-table-column property="updateTime" label="提交时间"/> + <el-table-column fixed="right" label="操作" align="center" width="250"> + <template #default="scope"> + <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button> + <el-button link type="primary" size="small" :icon="Edit" @click="editRecord(scope.$index ,scope.row)">修改</el-button> + <el-button link type="danger" size="small" :icon="Delete" @click="deleteRecord(scope.$index)">删除</el-button> + </template> + </el-table-column> + </el-table> + </div> + <div class="pageBtn"> + <el-pagination + v-model:currentPage="currentPage" + v-model:page-size="pageSize" + :page-sizes="[10, 15]" + small=false + background + layout="total, sizes, prev, pager, next, jumper" + :total="100" + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + /> + </div> + </div> + </el-scrollbar> + <el-dialog v-model="dialogDetails" title="查看详情"> + <el-form :model="details" label-width="120px"> + <el-form-item label="所属月份"> + <el-input + v-model="details.month" + readonly + /> + </el-form-item> + <el-form-item label="事故类型"> + <el-input + v-model="details.level" + readonly + /> + </el-form-item> + <el-form-item label="事故起数(起)"> + <el-input + v-model="details.amount" + readonly + /> + </el-form-item> + <el-form-item label="死亡人数(人)"> + <el-input + v-model="details.death" + readonly + /> + </el-form-item> + <el-form-item label="重伤人数(人)"> + <el-input + v-model="details.injury" + readonly + /> + </el-form-item> + <el-form-item label="轻伤人数(人)"> + <el-input + v-model="details.wound" + readonly + /> + </el-form-item> + <el-form-item label="直接经济损失(万)"> + <el-input + v-model="details.cost" + readonly + /> + </el-form-item> + <el-form-item label="提交时间"> + <el-input + v-model="details.updateTime" + readonly + /> + </el-form-item> + <el-form-item> + <el-button type="primary" @click="dialogDetails = false" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="dialogAddRecord" title="事故等级编辑" @close="closeAdd"> + <el-form :model="addRecord" label-width="120px" ref="addRef" :rules="addRules"> + <el-form-item label="所属时间" prop="month"> + <el-date-picker + v-model="addRecord.month" + type="month" + placeholder="请选择日期" + format="YYYY-MM" value-format="YYYY-MM" + /> + </el-form-item> + <el-form-item label="事故类型" prop="level"> + <el-select v-model="addRecord.level" placeholder="请选择"> + <el-option label="特别重大事故" value="特别重大事故" /> + <el-option label="重大事故" value="重大事故" /> + <el-option label="较大事故" value="较大事故" /> + <el-option label="一般事故" value="一般事故" /> + <el-option label="未遂事故" value="未遂事故" /> + </el-select> + </el-form-item> + <el-form-item label="事故起数" prop="amount"> + <el-input + v-model="addRecord.amount" + placeholder="请填写事故次数" + type="number" + > + </el-input> + </el-form-item> + <el-form-item label="死亡人数" prop="death"> + <el-input + v-model="addRecord.death" + placeholder="请填写死亡人数" + type="number" + > + </el-input> + </el-form-item> + <el-form-item label="重伤人数" prop="injury"> + <el-input + v-model="addRecord.injury" + placeholder="请填写重伤人数" + type="number" + > + </el-input> + </el-form-item> + <el-form-item label="轻伤人数" prop="wound"> + <el-input + v-model="addRecord.wound" + placeholder="请填写轻伤人数" + type="number" + > + </el-input> + </el-form-item> + <el-form-item label="直接经济损失" prop="cost"> + <el-input + v-model="addRecord.cost" + placeholder="请填写直接经济损失" + type="number" + > + </el-input> + </el-form-item> + <el-form-item> + <el-button type="warning" @click="dialogAddRecord = false" size="default" plain>取消</el-button> + <el-button type="primary" @click="confirmAddRecord(addRef)" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="deleteDialog" title="提示" width="30%" center @close="indexClear"> + <span>您确定要删除该条记录吗?</span> + <template #footer> + <span class="dialog-footer"> + <el-button @click="deleteDialog = false" size="default">取消</el-button> + <el-button type="primary" @click="conFirmDelete" size="default">确认</el-button> + </span> + </template> + </el-dialog> + </div> +</template> + +<script lang="ts" setup> + import { toRefs, reactive, ref } from 'vue'; + import { storeToRefs } from 'pinia'; + import { initBackEndControlRoutes } from '/@/router/backEnd'; + import {useUserInfo} from "/@/stores/userInfo"; + import { Session } from '/@/utils/storage'; + import { Edit, View, Plus, Delete, Refresh, Search, Download } from '@element-plus/icons-vue' + import { ElTable } from 'element-plus' + import { FormInstance, FormRules } from 'element-plus' + let global: any = { + homeChartOne: null, + homeChartTwo: null, + homeCharThree: null, + dispose: [null, '', undefined], + }; + + interface stateType { + homeOne: Array <type> + } + interface type { + + } + const userInfo = useUserInfo() + const { userInfos } = storeToRefs(userInfo); + const state = reactive<stateType>({}); + const currentPage = ref(1) + const pageSize = ref(10) + const chosenIndex = ref(-1) + const handleSizeChange = (val: number) => { + console.log(`${val} items per page`) + } + const handleCurrentChange = (val: number) => { + console.log(`current page: ${val}`) + } + // 时间格式化 + const timeForm = { + hour12: false, + year: 'numeric', + month: '2-digit', + day: '2-digit', + hour: '2-digit', + minute: '2-digit', + second: '2-digit' + } + const tableData = reactive( + [ + { + month: '2022-07', + level: '未遂事故', + amount: 1, + death: 0, + injury: 0, + wound: 0, + cost: 1, + updateTime: '2022-07-26 15:55:00' + }, + { + month: '2022-06', + level: '未遂事故', + amount: 2, + death: 0, + injury: 0, + wound: 0, + cost: 15, + updateTime: '2022-07-26 15:55:00' + }, + { + month: '2022-05', + level: '一般事故', + amount: 1, + death: 0, + injury: 0, + wound: 1, + cost: 100, + updateTime: '2022-07-26 15:55:00' + } + ] + ) + const addRef = ref<FormInstance>() + const addRules = reactive<FormRules>({ + month:[{required: true, message: '该内容不能为空'}], + level:[{required: true, message: '该内容不能为空',trigger:'blur'}], + amount:[{required: true, message: '该内容不能为空',trigger:'blur'}], + death:[{required: true, message: '该内容不能为空',trigger:'blur'}], + injury:[{required: true, message: '该内容不能为空',trigger:'blur'}], + wound:[{required: true, message: '该内容不能为空',trigger:'blur'}], + cost:[{required: true, message: '该内容不能为空',trigger:'blur'}] + }) + const dialogDetails = ref(false) + const dialogAddRecord = ref(false) + const deleteDialog = ref(false) + const addRecord = ref({}) + const details = ref({}) + const viewRecord = (row) =>{ + details.value = JSON.parse(JSON.stringify(row)) + dialogDetails.value = true + } + const deleteRecord = (index) =>{ + chosenIndex.value = index + deleteDialog.value = true + } + const conFirmDelete = ()=> { + tableData.splice(chosenIndex.value,1) + deleteDialog.value = false + } + const confirmAddRecord = async (formEl: FormInstance | undefined) =>{ + if (!formEl) return + await formEl.validate((valid, fields) => { + if (valid) { + if(chosenIndex.value == -1){ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData.unshift(addRecord.value) + }else{ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData[chosenIndex.value] = addRecord.value + } + dialogAddRecord.value =false + } else { + console.log('error submit!', fields) + } + }) + + } + const closeAdd =()=>{ + addRecord.value={} + chosenIndex.value = -1 + } + const indexClear = ()=>{ + chosenIndex.value = -1 + } + const editRecord =(index, row)=>{ + dialogAddRecord.value = true + chosenIndex.value = index + addRecord.value = JSON.parse(JSON.stringify(row)) + } + // 折线图 + const renderMenu = async (value: string) => { + Session.set('projectId',value) + userInfos.value.projectId = value + await initBackEndControlRoutes(); + }; +</script> + +<style scoped lang="scss"> + $homeNavLengh: 8; + .home-container { + height: 100%; + overflow: hidden; + padding: 20px; + .homeCard{ + width: 100%; + padding: 20px; + background: #fff; + border-radius: 4px; + } + .el-row{ + display: flex; + align-items: center; + margin-bottom: 20px; + &:last-child { + margin-bottom: 0; + } + .grid-content{ + align-items: center; + min-height: 36px; + } + + .topInfo { + display: flex; + align-items: center; + font-size: 16px; + font-weight: bold; + + &>div{ + white-space: nowrap; + margin-right: 20px; + } + } + } + .mainPages{ + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + } + .main-card{ + width: 100%; + .cardTop{ + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 20px; + .mainCardBtn{ + margin: 0; + } + } + } + .pageBtn{ + display: flex; + align-items: center; + justify-content: right; + margin-top: 20px; + + .demo-pagination-block + .demo-pagination-block { + margin-top: 10px; + } + .demo-pagination-block .demonstration { + margin-bottom: 16px; + } + } + } + .el-input{ + width: 100% !important; + } + .el-date-editor::v-deep{ + width: 100%; + } + .el-select{ + width: 100%; + } +</style> diff --git a/src/views/riskWarningSys/educationAndTraining/index.vue b/src/views/riskWarningSys/educationAndTraining/index.vue new file mode 100644 index 0000000..39b1979 --- /dev/null +++ b/src/views/riskWarningSys/educationAndTraining/index.vue @@ -0,0 +1,343 @@ +<template> + <div class="home-container"> + <el-scrollbar height="100%"> + <div class="homeCard"> + <div class="main-card"> + <el-row class="cardTop"> + <el-col :span="12" class="mainCardBtn"> + <el-button type="primary" :icon="Plus" size="default" @click="dialogAddRecord=true">新建</el-button> +<!-- <el-button type="warning" :icon="Edit" size="default" plain>修改</el-button>--> + <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button> + </el-col> + <el-button type="primary" :icon="Refresh" size="default"/> + </el-row> + <el-table + ref="multipleTableRef" + :data="tableData" + style="width: 100%" + :header-cell-style="{background: '#fafafa'}" + @selection-change="handleSelectionChange" + > + <el-table-column type="selection" width="55" /> + <el-table-column type="index" label="编号" width="80"/> + <el-table-column property="month" label="所属月份"/> + <el-table-column property="level" label="级别"/> + <el-table-column property="amount" label="培训次数(次)"/> + <el-table-column property="eduTime" label="教育时间比" /> + <el-table-column property="updateTime" label="提交时间"/> + <el-table-column fixed="right" label="操作" align="center" width="250"> + <template #default="scope"> + <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button> + <el-button link type="primary" size="small" :icon="Edit" @click="editRecord(scope.$index ,scope.row)">修改</el-button> + <el-button link type="danger" size="small" :icon="Delete" @click="deleteRecord(scope.$index)">删除</el-button> + </template> + </el-table-column> + </el-table> + </div> + <div class="pageBtn"> + <el-pagination + v-model:currentPage="currentPage" + v-model:page-size="pageSize" + :page-sizes="[10, 15]" + small=false + background + layout="total, sizes, prev, pager, next, jumper" + :total="100" + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + /> + </div> + </div> + </el-scrollbar> + <el-dialog v-model="dialogDetails" title="查看详情"> + <el-form :model="details" label-width="120px"> + <el-form-item label="所属月份"> + <el-input + v-model="details.month" + readonly + /> + </el-form-item> + <el-form-item label="级别"> + <el-input + v-model="details.level" + readonly + /> + </el-form-item> + <el-form-item label="培训次数(次)"> + <el-input + v-model="details.amount" + readonly + /> + </el-form-item> + <el-form-item label="教育时间比"> + <el-input + v-model="details.eduTime" + readonly + /> + </el-form-item> + <el-form-item label="提交时间"> + <el-input + v-model="details.updateTime" + readonly + /> + </el-form-item> + <el-form-item> + <el-button type="primary" @click="dialogDetails = false" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="dialogAddRecord" title="教育培训记录编辑" @close="closeAdd"> + <el-form :model="addRecord" label-width="120px" ref="addRef" :rules="addRules"> + <el-form-item label="所属时间" prop="month"> + <el-date-picker + v-model="addRecord.month" + type="month" + placeholder="请选择日期" + format="YYYY-MM" value-format="YYYY-MM" + /> + </el-form-item> + <el-form-item label="选择级别" prop="level"> + <el-select v-model="addRecord.level" placeholder="请选择"> + <el-option label="公司级" value="公司级" /> + <el-option label="事业部级" value="事业部级" /> + <el-option label="车间级" value="车间级" /> + <el-option label="班组级" value="班组级" /> + </el-select> + </el-form-item> + <el-form-item label="培训次数" prop="amount"> + <el-input + v-model="addRecord.amount" + placeholder="请填写培训次数" + type="number" + > + </el-input> + </el-form-item> + <el-form-item label="教育时间比" prop="eduTime"> + <el-select v-model="addRecord.eduTime" placeholder="请选择"> + <el-option label="大于或等于100%" value="大于或等于100%" /> + <el-option label="大于或等于80%,小于100%" value="大于或等于80%,小于100%" /> + <el-option label="大于或等于50%,小于80%" value="大于或等于50%,小于80%" /> + <el-option label="大于或等于30%,小于50%" value="大于或等于30%,小于50%" /> + <el-option label="小于30%" value="小于30%" /> + </el-select> + </el-form-item> + <el-form-item> + <el-button type="warning" @click="dialogAddRecord = false" size="default" plain>取消</el-button> + <el-button type="primary" @click="confirmAddRecord(addRef)" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="deleteDialog" title="提示" width="30%" center @close="indexClear"> + <span>您确定要删除该条记录吗?</span> + <template #footer> + <span class="dialog-footer"> + <el-button @click="deleteDialog = false" size="default">取消</el-button> + <el-button type="primary" @click="conFirmDelete" size="default">确认</el-button> + </span> + </template> + </el-dialog> + </div> +</template> + +<script lang="ts" setup> + import { toRefs, reactive, ref } from 'vue'; + import { storeToRefs } from 'pinia'; + import { initBackEndControlRoutes } from '/@/router/backEnd'; + import {useUserInfo} from "/@/stores/userInfo"; + import { Session } from '/@/utils/storage'; + import { Edit, View, Plus, Delete, Refresh, Search, Download } from '@element-plus/icons-vue' + import { ElTable } from 'element-plus' + import { FormInstance, FormRules } from 'element-plus' + let global: any = { + homeChartOne: null, + homeChartTwo: null, + homeCharThree: null, + dispose: [null, '', undefined], + }; + + interface stateType { + homeOne: Array <type> + } + interface type { + + } + const userInfo = useUserInfo() + const { userInfos } = storeToRefs(userInfo); + const state = reactive<stateType>({}); + const currentPage = ref(1) + const pageSize = ref(10) + const chosenIndex = ref(-1) + const handleSizeChange = (val: number) => { + console.log(`${val} items per page`) + } + const handleCurrentChange = (val: number) => { + console.log(`current page: ${val}`) + } + // 时间格式化 + const timeForm = { + hour12: false, + year: 'numeric', + month: '2-digit', + day: '2-digit', + hour: '2-digit', + minute: '2-digit', + second: '2-digit' + } + const tableData = reactive( + [ + { + month: '2022-07', + level: '公司级', + amount: 10, + eduTime: '大于或等于100%', + updateTime: '2022-07-26 15:55:00' + }, + { + month: '2022-06', + level: '班组级', + amount: 10, + eduTime: '大于或等于100%', + updateTime: '2022-06-26 15:55:00' + } + ] + ) + const addRef = ref<FormInstance>() + const addRules = reactive<FormRules>({ + month:[{required: true, message: '该内容不能为空'}], + level:[{required: true, message: '该内容不能为空',trigger:'blur'}], + amount:[{required: true, message: '该内容不能为空',trigger:'blur'}], + eduTime:[{required: true, message: '该内容不能为空',trigger:'blur'}] + }) + const dialogDetails = ref(false) + const dialogAddRecord = ref(false) + const deleteDialog = ref(false) + const addRecord = ref({}) + const details = ref({}) + const viewRecord = (row) =>{ + details.value = JSON.parse(JSON.stringify(row)) + dialogDetails.value = true + } + const deleteRecord = (index) =>{ + chosenIndex.value = index + deleteDialog.value = true + } + const conFirmDelete = ()=> { + tableData.splice(chosenIndex.value,1) + deleteDialog.value = false + } + const confirmAddRecord = async (formEl: FormInstance | undefined) =>{ + if (!formEl) return + await formEl.validate((valid, fields) => { + if (valid) { + if(chosenIndex.value == -1){ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData.unshift(addRecord.value) + }else{ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData[chosenIndex.value] = addRecord.value + } + dialogAddRecord.value =false + } else { + console.log('error submit!', fields) + } + }) + + } + const closeAdd =()=>{ + addRecord.value={} + chosenIndex.value = -1 + } + const indexClear = ()=>{ + chosenIndex.value = -1 + } + const editRecord =(index, row)=>{ + dialogAddRecord.value = true + chosenIndex.value = index + addRecord.value = JSON.parse(JSON.stringify(row)) + } + // 折线图 + const renderMenu = async (value: string) => { + Session.set('projectId',value) + userInfos.value.projectId = value + await initBackEndControlRoutes(); + }; +</script> + +<style scoped lang="scss"> + $homeNavLengh: 8; + .home-container { + height: 100%; + overflow: hidden; + padding: 20px; + .homeCard{ + width: 100%; + padding: 20px; + background: #fff; + border-radius: 4px; + } + .el-row{ + display: flex; + align-items: center; + margin-bottom: 20px; + &:last-child { + margin-bottom: 0; + } + .grid-content{ + align-items: center; + min-height: 36px; + } + + .topInfo { + display: flex; + align-items: center; + font-size: 16px; + font-weight: bold; + + &>div{ + white-space: nowrap; + margin-right: 20px; + } + } + } + .mainPages{ + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + } + .main-card{ + width: 100%; + .cardTop{ + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 20px; + .mainCardBtn{ + margin: 0; + } + } + } + .pageBtn{ + display: flex; + align-items: center; + justify-content: right; + margin-top: 20px; + + .demo-pagination-block + .demo-pagination-block { + margin-top: 10px; + } + .demo-pagination-block .demonstration { + margin-bottom: 16px; + } + } + } + .el-input{ + width: 100% !important; + } + .el-date-editor::v-deep{ + width: 100%; + } + .el-select{ + width: 100%; + } +</style> diff --git a/src/views/riskWarningSys/emergencyDrills/index.vue b/src/views/riskWarningSys/emergencyDrills/index.vue new file mode 100644 index 0000000..76722d5 --- /dev/null +++ b/src/views/riskWarningSys/emergencyDrills/index.vue @@ -0,0 +1,342 @@ +<template> + <div class="home-container"> + <el-scrollbar height="100%"> + <div class="homeCard"> + <div class="main-card"> + <el-row class="cardTop"> + <el-col :span="12" class="mainCardBtn"> + <el-button type="primary" :icon="Plus" size="default" @click="dialogAddRecord=true">新建</el-button> +<!-- <el-button type="warning" :icon="Edit" size="default" plain>修改</el-button>--> + <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button> + </el-col> + <el-button type="primary" :icon="Refresh" size="default"/> + </el-row> + <el-table + ref="multipleTableRef" + :data="tableData" + style="width: 100%" + :header-cell-style="{background: '#fafafa'}" + @selection-change="handleSelectionChange" + > + <el-table-column type="selection" width="55" /> + <el-table-column type="index" label="编号" width="80"/> + <el-table-column property="month" label="所属月份"/> + <el-table-column property="level" label="级别"/> + <el-table-column property="amount" label="演练次数(次)"/> + <el-table-column property="aftTime" label="应急演练后时间" /> + <el-table-column property="updateTime" label="提交时间"/> + <el-table-column fixed="right" label="操作" align="center" width="250"> + <template #default="scope"> + <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button> + <el-button link type="primary" size="small" :icon="Edit" @click="editRecord(scope.$index ,scope.row)">修改</el-button> + <el-button link type="danger" size="small" :icon="Delete" @click="deleteRecord(scope.$index)">删除</el-button> + </template> + </el-table-column> + </el-table> + </div> + <div class="pageBtn"> + <el-pagination + v-model:currentPage="currentPage" + v-model:page-size="pageSize" + :page-sizes="[10, 15]" + small=false + background + layout="total, sizes, prev, pager, next, jumper" + :total="100" + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + /> + </div> + </div> + </el-scrollbar> + <el-dialog v-model="dialogDetails" title="查看详情"> + <el-form :model="details" label-width="120px"> + <el-form-item label="所属月份"> + <el-input + v-model="details.month" + readonly + /> + </el-form-item> + <el-form-item label="级别"> + <el-input + v-model="details.level" + readonly + /> + </el-form-item> + <el-form-item label="演练次数(次)"> + <el-input + v-model="details.amount" + readonly + /> + </el-form-item> + <el-form-item label="应急演练后时间"> + <el-input + v-model="details.aftTime" + readonly + /> + </el-form-item> + <el-form-item label="提交时间"> + <el-input + v-model="details.updateTime" + readonly + /> + </el-form-item> + <el-form-item> + <el-button type="primary" @click="dialogDetails = false" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="dialogAddRecord" title="应急演练编辑" @close="closeAdd"> + <el-form :model="addRecord" label-width="120px" ref="addRef" :rules="addRules"> + <el-form-item label="所属时间" prop="month"> + <el-date-picker + v-model="addRecord.month" + type="month" + placeholder="请选择日期" + format="YYYY-MM" value-format="YYYY-MM" + /> + </el-form-item> + <el-form-item label="选择级别" prop="level"> + <el-select v-model="addRecord.level" placeholder="请选择"> + <el-option label="公司级" value="公司级" /> + <el-option label="事业部级" value="事业部级" /> + <el-option label="车间级" value="车间级" /> + <el-option label="班组级" value="班组级" /> + </el-select> + </el-form-item> + <el-form-item label="培训次数" prop="amount"> + <el-input + v-model="addRecord.amount" + placeholder="请填写培训次数" + type="number" + > + </el-input> + </el-form-item> + <el-form-item label="应急演练后时间" prop="aftTime"> + <el-select v-model="addRecord.aftTime" placeholder="请选择"> + <el-option label="小于或等于一周" value="小于或等于一周" /> + <el-option label="大于一周,小于或等于二周" value="大于一周,小于或等于二周" /> + <el-option label="大于二周,小于或等于三周" value="大于二周,小于或等于三周" /> + <el-option label="大于三周" value="大于三周" /> + </el-select> + </el-form-item> + <el-form-item> + <el-button type="warning" @click="dialogAddRecord = false" size="default" plain>取消</el-button> + <el-button type="primary" @click="confirmAddRecord(addRef)" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="deleteDialog" title="提示" width="30%" center @close="indexClear"> + <span>您确定要删除该条记录吗?</span> + <template #footer> + <span class="dialog-footer"> + <el-button @click="deleteDialog = false" size="default">取消</el-button> + <el-button type="primary" @click="conFirmDelete" size="default">确认</el-button> + </span> + </template> + </el-dialog> + </div> +</template> + +<script lang="ts" setup> + import { toRefs, reactive, ref } from 'vue'; + import { storeToRefs } from 'pinia'; + import { initBackEndControlRoutes } from '/@/router/backEnd'; + import {useUserInfo} from "/@/stores/userInfo"; + import { Session } from '/@/utils/storage'; + import { Edit, View, Plus, Delete, Refresh, Search, Download } from '@element-plus/icons-vue' + import { ElTable } from 'element-plus' + import { FormInstance, FormRules } from 'element-plus' + let global: any = { + homeChartOne: null, + homeChartTwo: null, + homeCharThree: null, + dispose: [null, '', undefined], + }; + + interface stateType { + homeOne: Array <type> + } + interface type { + + } + const userInfo = useUserInfo() + const { userInfos } = storeToRefs(userInfo); + const state = reactive<stateType>({}); + const currentPage = ref(1) + const pageSize = ref(10) + const chosenIndex = ref(-1) + const handleSizeChange = (val: number) => { + console.log(`${val} items per page`) + } + const handleCurrentChange = (val: number) => { + console.log(`current page: ${val}`) + } + // 时间格式化 + const timeForm = { + hour12: false, + year: 'numeric', + month: '2-digit', + day: '2-digit', + hour: '2-digit', + minute: '2-digit', + second: '2-digit' + } + const tableData = reactive( + [ + { + month: '2022-07', + level: '公司级', + amount: 10, + aftTime: '小于或等于一周', + updateTime: '2022-07-26 15:55:00' + }, + { + month: '2022-06', + level: '班组级', + amount: 10, + aftTime: '大于一周,小于或等于二周', + updateTime: '2022-06-26 15:55:00' + } + ] + ) + const addRef = ref<FormInstance>() + const addRules = reactive<FormRules>({ + month:[{required: true, message: '该内容不能为空'}], + level:[{required: true, message: '该内容不能为空',trigger:'blur'}], + amount:[{required: true, message: '该内容不能为空',trigger:'blur'}], + aftTime:[{required: true, message: '该内容不能为空',trigger:'blur'}] + }) + const dialogDetails = ref(false) + const dialogAddRecord = ref(false) + const deleteDialog = ref(false) + const addRecord = ref({}) + const details = ref({}) + const viewRecord = (row) =>{ + details.value = JSON.parse(JSON.stringify(row)) + dialogDetails.value = true + } + const deleteRecord = (index) =>{ + chosenIndex.value = index + deleteDialog.value = true + } + const conFirmDelete = ()=> { + tableData.splice(chosenIndex.value,1) + deleteDialog.value = false + } + const confirmAddRecord = async (formEl: FormInstance | undefined) =>{ + if (!formEl) return + await formEl.validate((valid, fields) => { + if (valid) { + if(chosenIndex.value == -1){ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData.unshift(addRecord.value) + }else{ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData[chosenIndex.value] = addRecord.value + } + dialogAddRecord.value =false + } else { + console.log('error submit!', fields) + } + }) + + } + const closeAdd =()=>{ + addRecord.value={} + chosenIndex.value = -1 + } + const indexClear = ()=>{ + chosenIndex.value = -1 + } + const editRecord =(index, row)=>{ + dialogAddRecord.value = true + chosenIndex.value = index + addRecord.value = JSON.parse(JSON.stringify(row)) + } + // 折线图 + const renderMenu = async (value: string) => { + Session.set('projectId',value) + userInfos.value.projectId = value + await initBackEndControlRoutes(); + }; +</script> + +<style scoped lang="scss"> + $homeNavLengh: 8; + .home-container { + height: 100%; + overflow: hidden; + padding: 20px; + .homeCard{ + width: 100%; + padding: 20px; + background: #fff; + border-radius: 4px; + } + .el-row{ + display: flex; + align-items: center; + margin-bottom: 20px; + &:last-child { + margin-bottom: 0; + } + .grid-content{ + align-items: center; + min-height: 36px; + } + + .topInfo { + display: flex; + align-items: center; + font-size: 16px; + font-weight: bold; + + &>div{ + white-space: nowrap; + margin-right: 20px; + } + } + } + .mainPages{ + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + } + .main-card{ + width: 100%; + .cardTop{ + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 20px; + .mainCardBtn{ + margin: 0; + } + } + } + .pageBtn{ + display: flex; + align-items: center; + justify-content: right; + margin-top: 20px; + + .demo-pagination-block + .demo-pagination-block { + margin-top: 10px; + } + .demo-pagination-block .demonstration { + margin-bottom: 16px; + } + } + } + .el-input{ + width: 100% !important; + } + .el-date-editor::v-deep{ + width: 100%; + } + .el-select{ + width: 100%; + } +</style> diff --git a/src/views/riskWarningSys/riskLevel/index.vue b/src/views/riskWarningSys/riskLevel/index.vue new file mode 100644 index 0000000..c4cfb64 --- /dev/null +++ b/src/views/riskWarningSys/riskLevel/index.vue @@ -0,0 +1,322 @@ +<template> + <div class="home-container"> + <el-scrollbar height="100%"> + <div class="homeCard"> + <div class="main-card"> + <el-row class="cardTop"> + <el-col :span="12" class="mainCardBtn"> + <el-button type="primary" :icon="Plus" size="default" @click="dialogAddRecord=true">新建</el-button> +<!-- <el-button type="warning" :icon="Edit" size="default" plain>修改</el-button>--> + <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button> + </el-col> + <el-button type="primary" :icon="Refresh" size="default"/> + </el-row> + <el-table + ref="multipleTableRef" + :data="tableData" + style="width: 100%" + :header-cell-style="{background: '#fafafa'}" + @selection-change="handleSelectionChange" + > + <el-table-column type="selection" width="55" /> + <el-table-column type="index" label="编号" width="80"/> + <el-table-column property="month" label="所属月份"/> + <el-table-column property="level" label="风险类型"/> + <el-table-column property="amount" label="风险个数(个)"/> + <el-table-column property="updateTime" label="提交时间"/> + <el-table-column fixed="right" label="操作" align="center" width="250"> + <template #default="scope"> + <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button> + <el-button link type="primary" size="small" :icon="Edit" @click="editRecord(scope.$index ,scope.row)">修改</el-button> + <el-button link type="danger" size="small" :icon="Delete" @click="deleteRecord(scope.$index)">删除</el-button> + </template> + </el-table-column> + </el-table> + </div> + <div class="pageBtn"> + <el-pagination + v-model:currentPage="currentPage" + v-model:page-size="pageSize" + :page-sizes="[10, 15]" + small=false + background + layout="total, sizes, prev, pager, next, jumper" + :total="100" + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + /> + </div> + </div> + </el-scrollbar> + <el-dialog v-model="dialogDetails" title="查看详情"> + <el-form :model="details" label-width="120px"> + <el-form-item label="所属月份"> + <el-input + v-model="details.month" + readonly + /> + </el-form-item> + <el-form-item label="风险类型"> + <el-input + v-model="details.level" + readonly + /> + </el-form-item> + <el-form-item label="风险个数(个)"> + <el-input + v-model="details.amount" + readonly + /> + </el-form-item> + <el-form-item label="提交时间"> + <el-input + v-model="details.updateTime" + readonly + /> + </el-form-item> + <el-form-item> + <el-button type="primary" @click="dialogDetails = false" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="dialogAddRecord" title="风险等级编辑" @close="closeAdd"> + <el-form :model="addRecord" label-width="120px" ref="addRef" :rules="addRules"> + <el-form-item label="所属时间" prop="month"> + <el-date-picker + v-model="addRecord.month" + type="month" + placeholder="请选择日期" + format="YYYY-MM" value-format="YYYY-MM" + /> + </el-form-item> + <el-form-item label="风险类型" prop="level"> + <el-select v-model="addRecord.level" placeholder="请选择"> + <el-option label="高风险" value="高风险" /> + <el-option label="低风险" value="低风险" /> + </el-select> + </el-form-item> + <el-form-item label="风险个数" prop="amount"> + <el-input + v-model="addRecord.amount" + placeholder="请填写风险个数" + type="number" + > + </el-input> + </el-form-item> + <el-form-item> + <el-button type="warning" @click="dialogAddRecord = false" size="default" plain>取消</el-button> + <el-button type="primary" @click="confirmAddRecord(addRef)" size="default">确认</el-button> + </el-form-item> + </el-form> + </el-dialog> + <el-dialog v-model="deleteDialog" title="提示" width="30%" center @close="indexClear"> + <span>您确定要删除该条记录吗?</span> + <template #footer> + <span class="dialog-footer"> + <el-button @click="deleteDialog = false" size="default">取消</el-button> + <el-button type="primary" @click="conFirmDelete" size="default">确认</el-button> + </span> + </template> + </el-dialog> + </div> +</template> + +<script lang="ts" setup> + import { toRefs, reactive, ref } from 'vue'; + import { storeToRefs } from 'pinia'; + import { initBackEndControlRoutes } from '/@/router/backEnd'; + import {useUserInfo} from "/@/stores/userInfo"; + import { Session } from '/@/utils/storage'; + import { Edit, View, Plus, Delete, Refresh, Search, Download } from '@element-plus/icons-vue' + import { ElTable } from 'element-plus' + import { FormInstance, FormRules } from 'element-plus' + let global: any = { + homeChartOne: null, + homeChartTwo: null, + homeCharThree: null, + dispose: [null, '', undefined], + }; + + interface stateType { + homeOne: Array <type> + } + interface type { + + } + const userInfo = useUserInfo() + const { userInfos } = storeToRefs(userInfo); + const state = reactive<stateType>({}); + const currentPage = ref(1) + const pageSize = ref(10) + const chosenIndex = ref(-1) + const handleSizeChange = (val: number) => { + console.log(`${val} items per page`) + } + const handleCurrentChange = (val: number) => { + console.log(`current page: ${val}`) + } + // 时间格式化 + const timeForm = { + hour12: false, + year: 'numeric', + month: '2-digit', + day: '2-digit', + hour: '2-digit', + minute: '2-digit', + second: '2-digit' + } + const tableData = reactive( + [ + { + month: '2022-07', + level: '低风险', + amount: 1, + updateTime: '2022-07-26 15:55:00' + }, + { + month: '2022-06', + level: '高风险', + amount: 2, + updateTime: '2022-07-26 15:55:00' + } + ] + ) + const addRef = ref<FormInstance>() + const addRules = reactive<FormRules>({ + month:[{required: true, message: '该内容不能为空'}], + level:[{required: true, message: '该内容不能为空',trigger:'blur'}], + amount:[{required: true, message: '该内容不能为空',trigger:'blur'}] + }) + const dialogDetails = ref(false) + const dialogAddRecord = ref(false) + const deleteDialog = ref(false) + const addRecord = ref({}) + const details = ref({}) + const viewRecord = (row) =>{ + details.value = JSON.parse(JSON.stringify(row)) + dialogDetails.value = true + } + const deleteRecord = (index) =>{ + chosenIndex.value = index + deleteDialog.value = true + } + const conFirmDelete = ()=> { + tableData.splice(chosenIndex.value,1) + deleteDialog.value = false + } + const confirmAddRecord = async (formEl: FormInstance | undefined) =>{ + if (!formEl) return + await formEl.validate((valid, fields) => { + if (valid) { + if(chosenIndex.value == -1){ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData.unshift(addRecord.value) + }else{ + addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') + tableData[chosenIndex.value] = addRecord.value + } + dialogAddRecord.value =false + } else { + console.log('error submit!', fields) + } + }) + + } + const closeAdd =()=>{ + addRecord.value={} + chosenIndex.value = -1 + } + const indexClear = ()=>{ + chosenIndex.value = -1 + } + const editRecord =(index, row)=>{ + dialogAddRecord.value = true + chosenIndex.value = index + addRecord.value = JSON.parse(JSON.stringify(row)) + } + // 折线图 + const renderMenu = async (value: string) => { + Session.set('projectId',value) + userInfos.value.projectId = value + await initBackEndControlRoutes(); + }; +</script> + +<style scoped lang="scss"> + $homeNavLengh: 8; + .home-container { + height: 100%; + overflow: hidden; + padding: 20px; + .homeCard{ + width: 100%; + padding: 20px; + background: #fff; + border-radius: 4px; + } + .el-row{ + display: flex; + align-items: center; + margin-bottom: 20px; + &:last-child { + margin-bottom: 0; + } + .grid-content{ + align-items: center; + min-height: 36px; + } + + .topInfo { + display: flex; + align-items: center; + font-size: 16px; + font-weight: bold; + + &>div{ + white-space: nowrap; + margin-right: 20px; + } + } + } + .mainPages{ + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + } + .main-card{ + width: 100%; + .cardTop{ + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 20px; + .mainCardBtn{ + margin: 0; + } + } + } + .pageBtn{ + display: flex; + align-items: center; + justify-content: right; + margin-top: 20px; + + .demo-pagination-block + .demo-pagination-block { + margin-top: 10px; + } + .demo-pagination-block .demonstration { + margin-bottom: 16px; + } + } + } + .el-input{ + width: 100% !important; + } + .el-date-editor::v-deep{ + width: 100%; + } + .el-select{ + width: 100%; + } +</style> diff --git a/src/views/specialWorkSystem/afterWorkManagement/workTicketCheck/index.vue b/src/views/specialWorkSystem/afterWorkManagement/workTicketCheck/index.vue index dc12704..35df32c 100644 --- a/src/views/specialWorkSystem/afterWorkManagement/workTicketCheck/index.vue +++ b/src/views/specialWorkSystem/afterWorkManagement/workTicketCheck/index.vue @@ -256,7 +256,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/specialWorkSystem/afterWorkManagement/workTicketRecord/index.vue b/src/views/specialWorkSystem/afterWorkManagement/workTicketRecord/index.vue index a84f6be..13b184e 100644 --- a/src/views/specialWorkSystem/afterWorkManagement/workTicketRecord/index.vue +++ b/src/views/specialWorkSystem/afterWorkManagement/workTicketRecord/index.vue @@ -210,7 +210,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveLinkSetting/index.vue b/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveLinkSetting/index.vue index e0c5c65..5eb9a0b 100644 --- a/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveLinkSetting/index.vue +++ b/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveLinkSetting/index.vue @@ -225,7 +225,7 @@ if(chosenIndex.value == -1){ addRecord.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[chosenIndex.value] = addRecord.value diff --git a/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveTypeSetting/index.vue b/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveTypeSetting/index.vue index 57f1527..3e6b942 100644 --- a/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveTypeSetting/index.vue +++ b/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/approveTypeSetting/index.vue @@ -227,7 +227,7 @@ if(chosenIndex.value == -1){ addRecord.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[chosenIndex.value] = addRecord.value diff --git a/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/reportTypeSetting/index.vue b/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/reportTypeSetting/index.vue index 30844ac..440ed57 100644 --- a/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/reportTypeSetting/index.vue +++ b/src/views/specialWorkSystem/approveProcessManagement/approveLinkSettings/reportTypeSetting/index.vue @@ -149,7 +149,7 @@ if(rowIndex.value == -1){ reportForm.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') reportForm.value.editeTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(reportForm.value) + tableData.unshift(reportForm.value) }else{ reportForm.value.editeTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[rowIndex.value] = reportForm.value diff --git a/src/views/specialWorkSystem/approveProcessManagement/approveProcessList/index.vue b/src/views/specialWorkSystem/approveProcessManagement/approveProcessList/index.vue index 2bf2079..6b0615c 100644 --- a/src/views/specialWorkSystem/approveProcessManagement/approveProcessList/index.vue +++ b/src/views/specialWorkSystem/approveProcessManagement/approveProcessList/index.vue @@ -301,7 +301,7 @@ if (valid) { if(chosenIndex.value == -1){ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[chosenIndex.value] = addRecord.value diff --git a/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue b/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue index 7d2d26b..272e899 100644 --- a/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue +++ b/src/views/specialWorkSystem/workApplyManagement/workApplyForm/index.vue @@ -522,7 +522,7 @@ if (!formEl) return await formEl.validate((valid, fields) => { if (valid) { - form.workerList.push(addWorkerForm.value) + form.workerList.unshift(addWorkerForm.value) addWorkerForm.value = { worker: '', role: '', diff --git a/src/views/specialWorkSystem/workBasicManagementSetting/certificateFilterSetting/index.vue b/src/views/specialWorkSystem/workBasicManagementSetting/certificateFilterSetting/index.vue index ae0fccf..4d8d77a 100644 --- a/src/views/specialWorkSystem/workBasicManagementSetting/certificateFilterSetting/index.vue +++ b/src/views/specialWorkSystem/workBasicManagementSetting/certificateFilterSetting/index.vue @@ -197,7 +197,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/specialWorkSystem/workBasicManagementSetting/personalProtectDevices/index.vue b/src/views/specialWorkSystem/workBasicManagementSetting/personalProtectDevices/index.vue index 9421d04..8a5eb25 100644 --- a/src/views/specialWorkSystem/workBasicManagementSetting/personalProtectDevices/index.vue +++ b/src/views/specialWorkSystem/workBasicManagementSetting/personalProtectDevices/index.vue @@ -174,7 +174,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/specialWorkSystem/workBasicManagementSetting/securityMeasuresManagement/index.vue b/src/views/specialWorkSystem/workBasicManagementSetting/securityMeasuresManagement/index.vue index 5c3c5a4..ae00ade 100644 --- a/src/views/specialWorkSystem/workBasicManagementSetting/securityMeasuresManagement/index.vue +++ b/src/views/specialWorkSystem/workBasicManagementSetting/securityMeasuresManagement/index.vue @@ -278,7 +278,7 @@ if (valid) { if(chosenIndex.value == -1){ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-') tableData[chosenIndex.value] = addRecord.value diff --git a/src/views/specialWorkSystem/workBasicManagementSetting/workTypeSetting/index.vue b/src/views/specialWorkSystem/workBasicManagementSetting/workTypeSetting/index.vue index 27e072f..7e9af1a 100644 --- a/src/views/specialWorkSystem/workBasicManagementSetting/workTypeSetting/index.vue +++ b/src/views/specialWorkSystem/workBasicManagementSetting/workTypeSetting/index.vue @@ -220,7 +220,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/specialWorkSystem/workPlan/workAppointSummary/index.vue b/src/views/specialWorkSystem/workPlan/workAppointSummary/index.vue index 2aebc33..d787438 100644 --- a/src/views/specialWorkSystem/workPlan/workAppointSummary/index.vue +++ b/src/views/specialWorkSystem/workPlan/workAppointSummary/index.vue @@ -427,7 +427,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } diff --git a/src/views/specialWorkSystem/workPlan/workReservation/index.vue b/src/views/specialWorkSystem/workPlan/workReservation/index.vue index 2c14f8a..7a1cc8d 100644 --- a/src/views/specialWorkSystem/workPlan/workReservation/index.vue +++ b/src/views/specialWorkSystem/workPlan/workReservation/index.vue @@ -318,7 +318,7 @@ await formEl.validate((valid, fields) => { if (valid) { if(chosenIndex.value == -1){ - tableData.push(addRecord.value) + tableData.unshift(addRecord.value) }else{ tableData[chosenIndex.value] = addRecord.value } -- Gitblit v1.9.2