| | |
| | | <div class="home-container"> |
| | | <el-tabs type="border-card"> |
| | | <el-tab-pane label="动火作业"> |
| | | <fire-form></fire-form> |
| | | <fire-form :workerList = allWorkers></fire-form> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="受限空间作业"> |
| | | <space-form></space-form> |
| | | <space-form :workerList = allWorkers :departList = departmentList></space-form> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="吊装作业"> |
| | | <hoist-form></hoist-form> |
| | | <hoist-form :workerList = allWorkers></hoist-form> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="动土作业"> |
| | | <ground-form></ground-form> |
| | | <ground-form :workerList = allWorkers :departList = departmentList></ground-form> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="断路作业"> |
| | | <broken-form></broken-form> |
| | | <broken-form :workerList = allWorkers :departList = departmentList></broken-form> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="高处作业"> |
| | | <height-form></height-form> |
| | | <height-form :workerList = allWorkers :departList = departmentList></height-form> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="临时用电作业"> |
| | | <power-form></power-form> |
| | | <power-form :workerList = allWorkers></power-form> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="盲板抽堵作业"> |
| | | <plate-form></plate-form> |
| | | <plate-form :workerList = allWorkers></plate-form> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | </template> |
| | | |
| | | <script lang="ts"> |
| | | import { toRefs, reactive, defineComponent, ref, defineAsyncComponent } from 'vue'; |
| | | import {toRefs, reactive, defineComponent, ref, defineAsyncComponent, onMounted} from 'vue'; |
| | | import { storeToRefs } from 'pinia'; |
| | | import { initBackEndControlRoutes } from '/@/router/backEnd'; |
| | | import {useUserInfo} from "/@/stores/userInfo"; |
| | |
| | | import { ElMessage } from 'element-plus' |
| | | import type { FormInstance, FormRules } from 'element-plus' |
| | | import { workApplyApi } from '/@/api/specialWorkSystem/workApply'; |
| | | |
| | | import {teamManageApi} from "/@/api/systemManage/basicDateManage/personShiftManage/teamManage"; |
| | | |
| | | interface stateType { |
| | | |
| | | allWorkers: Array<any> |
| | | departmentList: Array<any> |
| | | } |
| | | export default defineComponent({ |
| | | name: 'workTicket', |
| | | components: { |
| | | fireForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/fire.vue')), |
| | | spaceForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/space.vue')), |
| | | hoistForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/hoist.vue')), |
| | | groundForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/ground.vue')), |
| | | brokenForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/broken.vue')), |
| | | heightForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/height.vue')), |
| | | powerForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/power.vue')), |
| | | plateForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/plate.vue')) |
| | | fireForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/fire.vue')), |
| | | spaceForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/space.vue')), |
| | | hoistForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/hoist.vue')), |
| | | groundForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/ground.vue')), |
| | | brokenForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/broken.vue')), |
| | | heightForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/height.vue')), |
| | | powerForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/power.vue')), |
| | | plateForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/workApply/components/plate.vue')) |
| | | }, |
| | | setup() { |
| | | const userInfo = useUserInfo() |
| | | const { userInfos } = storeToRefs(userInfo); |
| | | const state = reactive<stateType>({ |
| | | allWorkers: [], |
| | | departmentList: [] |
| | | }); |
| | | |
| | | // 获取用户列表 |
| | | const getAll = async ()=>{ |
| | | const res = await workApplyApi().getAllUsers() |
| | | if (res.data.code === '200') { |
| | | state.allWorkers = JSON.parse(JSON.stringify(res.data.data)) |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | | message: res.data.msg |
| | | }); |
| | | } |
| | | }; |
| | | |
| | | // 获取部门列表 |
| | | const getAllDepartment = async () => { |
| | | let res = await teamManageApi().getAllDepartment(); |
| | | if (res.data.code === '200') { |
| | | state.departmentList = JSON.parse(JSON.stringify(res.data.data)) |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | | message: res.data.msg |
| | | }); |
| | | } |
| | | }; |
| | | |
| | | // 页面载入时执行方法 |
| | | onMounted(() => { |
| | | getAll(); |
| | | getAllDepartment(); |
| | | }); |
| | | |
| | | return { |