| | |
| | | <template> |
| | | <div class="layout-navbars-breadcrumb-user pr15" :style="{ flex: layoutUserFlexNum }"> |
| | | <div class="logo"> |
| | | <img src="../../../assets/menu/companyLogo.png" /> |
| | | <!-- <img src="../../../assets/menu/companyLogo.png" />--> |
| | | <h2>智能安全数字化平台</h2> |
| | | <span>{{ systemName }}</span> |
| | | </div> |
| | | <div style="display: flex; align-items: center; padding-right: 5px"> |
| | |
| | | </div> |
| | | <template #dropdown> |
| | | <el-dropdown-menu> |
| | | <el-dropdown-item command="large" :disabled="disabledSize === 'large'">{{ $t('message.user.dropdownLarge') }}</el-dropdown-item> |
| | | <el-dropdown-item command="default" :disabled="disabledSize === 'default'">{{ $t('message.user.dropdownDefault') }}</el-dropdown-item> |
| | | <el-dropdown-item command="small" :disabled="disabledSize === 'small'">{{ $t('message.user.dropdownSmall') }}</el-dropdown-item> |
| | | <el-dropdown-item command="large" :disabled="disabledSize === 'large'">{{ |
| | | $t('message.user.dropdownLarge') |
| | | }} |
| | | </el-dropdown-item> |
| | | <el-dropdown-item command="default" :disabled="disabledSize === 'default'"> |
| | | {{ $t('message.user.dropdownDefault') }} |
| | | </el-dropdown-item> |
| | | <el-dropdown-item command="small" :disabled="disabledSize === 'small'">{{ |
| | | $t('message.user.dropdownSmall') |
| | | }} |
| | | </el-dropdown-item> |
| | | </el-dropdown-menu> |
| | | </template> |
| | | </el-dropdown> |
| | |
| | | <!-- </el-popover>--> |
| | | <!-- </div>--> |
| | | <div class="layout-navbars-breadcrumb-user-icon mr10" @click="onScreenfullClick"> |
| | | <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i> |
| | | <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" |
| | | :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i> |
| | | </div> |
| | | <el-dropdown :show-timeout="70" :hide-timeout="50" @command="onHandleCommandClick"> |
| | | <span class="layout-navbars-breadcrumb-user-link"> |
| | | <img src="../../../assets/avator.png" class="layout-navbars-breadcrumb-user-link-photo mr5" style="width: 24px;height: 24px"/> |
| | | <img src="../../../assets/avator.png" class="layout-navbars-breadcrumb-user-link-photo mr5" |
| | | style="width: 24px;height: 24px"/> |
| | | {{ userInfos.userName }} |
| | | <el-icon class="el-icon--right"> |
| | | <ele-ArrowDown /> |
| | |
| | | import { useMenuApi } from '/@/api/systemManage/menu/index'; |
| | | |
| | | const menuApi = useMenuApi(); |
| | | import { backEndComponent, getBackEndControlRoutes, initBackEndControlRoutes, setAddRoute, setFilterMenuAndCacheTagsViewRoutes } from '../../../router/backEnd'; |
| | | import { |
| | | backEndComponent, |
| | | getBackEndControlRoutes, |
| | | initBackEndControlRoutes, |
| | | setAddRoute, |
| | | setFilterMenuAndCacheTagsViewRoutes |
| | | } from '../../../router/backEnd'; |
| | | import { NextLoading } from '/@/utils/loading'; |
| | | import { useRequestOldRoutes } from '/@/stores/requestOldRoutes'; |
| | | import { dynamicRoutes } from '/@/router/route'; |
| | |
| | | }); |
| | | } |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => { |
| | | }); |
| | | } else if (path === 'wareHouse') { |
| | | window.open('https://gitee.com/lyt-top/vue-next-admin'); |
| | | } else { |
| | |
| | | <style scoped lang="scss"> |
| | | @media screen and (min-width: 1400px) { |
| | | .logo{ |
| | | display: flex; |
| | | align-items: center; |
| | | img { |
| | | height: 100%; |
| | | } |
| | | span{ |
| | | font-size: 32px; |
| | | |
| | | h2 { |
| | | width: 220px; |
| | | font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem); |
| | | font-weight: bolder; |
| | | text-align: center; |
| | | color: #409eff; |
| | | } |
| | | |
| | | span { |
| | | font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem); |
| | | color: #333; |
| | | font-weight: bolder; |
| | | border-left: 2px solid #409eff; |
| | | padding-left: 10px |
| | | padding-left: 15px |
| | | } |
| | | } |
| | | .backBtn { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | @media screen and (min-width: 1200px) and (max-width: 1400px) { |
| | | .logo{ |
| | | display: flex; |
| | | align-items: center; |
| | | img { |
| | | height: 90%; |
| | | height: 100%; |
| | | } |
| | | span{ |
| | | font-size: 28px; |
| | | |
| | | h2 { |
| | | width: 220px; |
| | | font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem); |
| | | font-weight: bolder; |
| | | text-align: center; |
| | | color: #409eff; |
| | | } |
| | | |
| | | span { |
| | | font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem); |
| | | color: #333; |
| | | font-weight: bolder; |
| | | border-left: 2px solid #409eff; |
| | | padding-left: 10px |
| | | padding-left: 15px |
| | | } |
| | | } |
| | | .backBtn { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | @media screen and (max-width: 1024px) { |
| | | .logo{ |
| | | display: flex; |
| | | align-items: center; |
| | | img { |
| | | width: 60%; |
| | | height: auto; |
| | | height: 100%; |
| | | } |
| | | span{ |
| | | font-size: 22px; |
| | | |
| | | h2 { |
| | | width: 220px; |
| | | font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem); |
| | | font-weight: bolder; |
| | | text-align: center; |
| | | color: #409eff; |
| | | } |
| | | |
| | | span { |
| | | font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem); |
| | | color: #333; |
| | | font-weight: bolder; |
| | | border-left: 2px solid #409eff; |
| | | padding-left: 10px |
| | | padding-left: 15px |
| | | } |
| | | } |
| | | .backBtn { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .layout-navbars-breadcrumb-user { |
| | | display: flex; |
| | | align-items: center; |
| | |
| | | |
| | | .logo { |
| | | height: 75%; |
| | | padding: 5px 10px; |
| | | padding: 5px 0; |
| | | display: flex; |
| | | align-items: center; |
| | | overflow: hidden; |
| | | box-sizing: border-box; |
| | | } |
| | | |
| | | &-link { |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | white-space: nowrap; |
| | | |
| | | &-photo { |
| | | width: 25px; |
| | | height: 25px; |
| | | border-radius: 100%; |
| | | } |
| | | } |
| | | |
| | | &-icon { |
| | | padding: 0 10px; |
| | | cursor: pointer; |
| | |
| | | line-height: 80px; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | &:hover { |
| | | background: var(--next-color-user-hover); |
| | | |
| | | i { |
| | | display: inline-block; |
| | | animation: logoAnimation 0.3s ease-in-out; |
| | | } |
| | | } |
| | | } |
| | | |
| | | ::v-deep(.el-dropdown) { |
| | | color: var(--next-bg-topBarColor); |
| | | } |
| | | |
| | | ::v-deep(.el-badge) { |
| | | height: 40px; |
| | | line-height: 40px; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | ::v-deep(.el-badge__content.is-fixed) { |
| | | top: 12px; |
| | | } |
| | |
| | | } |
| | | } |
| | | state.depList = newList |
| | | console.log(state.depList,'3434') |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | <div class="topPanelBg"></div> |
| | | <div class="topPanelCont"> |
| | | <div class="topLogo"> |
| | | <img src="../../assets/newMenu/toplogo.png" /> |
| | | <!-- <img src="../../assets/newMenu/toplogo.png" />--> |
| | | <span style="font-size: 18px;color: #fff">智能安全数字化平台</span> |
| | | </div> |
| | | <div class="userInfo"> |
| | | <div @click="onScreenfullClick" style="margin-right: 15px; cursor: pointer"> |
| | | <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i> |
| | | <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" |
| | | :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i> |
| | | </div> |
| | | <div class="loginOut" @click="onLoginOut">退出登录</div> |
| | | <span></span> |
| | |
| | | <!-- </div>--> |
| | | <!-- <img class="bgImg" src="../../assets/newMenu/card-13.png" />--> |
| | | <!-- </div>--> |
| | | <div class="grid-content cont-bg-2" @click="render('1')"> |
| | | <div class="grid-content cont-bg-1" @click="render('1')"> |
| | | <div class="toplayer"> |
| | | <img class="iconImg" src="../../assets/newMenu/icon11.png" /> |
| | | <div> |
| | |
| | | }); |
| | | } |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => { |
| | | }); |
| | | }; |
| | | //选择菜单 |
| | | const render = (value: string) => { |
| | |
| | | top: 60px; |
| | | } |
| | | } |
| | | |
| | | @keyframes moveDown { |
| | | 100% { |
| | | position: absolute; |
| | | top: 0; |
| | | } |
| | | } |
| | | |
| | | @keyframes moveRight { |
| | | 100% { |
| | | position: absolute; |
| | | left: 0; |
| | | } |
| | | } |
| | | |
| | | @keyframes upDown { |
| | | 50% { |
| | | -webkit-transform: translateY(-8px); |
| | |
| | | transform: translateY(0); |
| | | } |
| | | } |
| | | |
| | | @media screen and (min-width: 1600px) { |
| | | .gridCont { |
| | | width: 100%; |
| | | display: grid; |
| | | grid-gap: 20px; |
| | | grid-template-columns: repeat(3, 1fr); |
| | | grid-template-columns: repeat(2, 1fr); |
| | | grid-template-rows: repeat(5, 200px); |
| | | grid-auto-flow: row; |
| | | justify-content: center; |
| | | |
| | | .toplayer { |
| | | width: 100%; |
| | | height: 100%; |
| | |
| | | height: 40%; |
| | | color: #072270; |
| | | } |
| | | |
| | | .enTit { |
| | | font-size: 16px; |
| | | line-height: 20px; |
| | |
| | | margin-right: 20px; |
| | | } |
| | | } |
| | | |
| | | .bgImg { |
| | | position: absolute; |
| | | width: 30%; |
| | |
| | | color: #072270; |
| | | margin-bottom: 12px; |
| | | } |
| | | |
| | | .enTit1 { |
| | | font-size: 18px; |
| | | line-height: 24px; |
| | | color: #072270; |
| | | } |
| | | } |
| | | |
| | | .bgImg1 { |
| | | position: absolute; |
| | | width: 45%; |
| | |
| | | width: 100%; |
| | | display: grid; |
| | | grid-gap: 15px; |
| | | grid-template-columns: repeat(3, 1fr); |
| | | grid-template-columns: repeat(2, 1fr); |
| | | grid-template-rows: repeat(5, 120px); |
| | | grid-auto-flow: row; |
| | | justify-content: center; |
| | |
| | | color: #072270; |
| | | margin-bottom: 2px; |
| | | } |
| | | |
| | | .enTit { |
| | | font-size: 12px; |
| | | color: #072270; |
| | |
| | | margin-right: 10px; |
| | | } |
| | | } |
| | | |
| | | .bgImg { |
| | | position: absolute; |
| | | width: 30%; |
| | |
| | | color: #072270; |
| | | margin-bottom: 12px; |
| | | } |
| | | |
| | | .enTit1 { |
| | | font-size: 14px; |
| | | color: #072270; |
| | | } |
| | | } |
| | | |
| | | .bgImg1 { |
| | | position: absolute; |
| | | width: 45%; |
| | |
| | | color: #333; |
| | | } |
| | | } |
| | | |
| | | @media screen and (max-width: 1200px) { |
| | | .gridCont { |
| | | width: 100%; |
| | | display: grid; |
| | | grid-gap: 10px; |
| | | grid-template-columns: repeat(3, 1fr); |
| | | grid-template-columns: repeat(2, 1fr); |
| | | grid-template-rows: repeat(5, 96px); |
| | | grid-auto-flow: row; |
| | | justify-content: center; |
| | |
| | | line-height: 22px; |
| | | color: #072270; |
| | | } |
| | | |
| | | .enTit { |
| | | font-size: 10px; |
| | | line-height: 14px; |
| | |
| | | margin-right: 10px; |
| | | } |
| | | } |
| | | |
| | | .bgImg { |
| | | position: absolute; |
| | | width: 45%; |
| | |
| | | color: #072270; |
| | | margin-bottom: 12px; |
| | | } |
| | | |
| | | .enTit1 { |
| | | font-size: 12px; |
| | | color: #072270; |
| | | } |
| | | } |
| | | |
| | | .bgImg1 { |
| | | position: absolute; |
| | | width: 45%; |
| | |
| | | color: #333; |
| | | } |
| | | } |
| | | |
| | | .login-container { |
| | | width: 100%; |
| | | height: 100%; |
| | | position: relative; |
| | | background: #fff; |
| | | |
| | | .topPanel { |
| | | width: 100%; |
| | | height: 260px; |
| | |
| | | justify-content: center; |
| | | box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1); |
| | | } |
| | | |
| | | .topPanelBg { |
| | | position: absolute; |
| | | width: 100%; |
| | |
| | | z-index: 9; |
| | | animation: moveDown 0.6s 1 ease forwards; |
| | | } |
| | | |
| | | .topPanelCont { |
| | | position: absolute; |
| | | width: 100%; |
| | | height: 60px; |
| | | padding: 0 50px; |
| | | padding: 0 50px 0 0; |
| | | top: -60px; |
| | | left: 0; |
| | | display: flex; |
| | |
| | | .topLogo { |
| | | display: flex; |
| | | align-items: center; |
| | | width: 220px; |
| | | |
| | | |
| | | img { |
| | | width: 146px; |
| | | height: auto; |
| | | } |
| | | |
| | | span { |
| | | width: 100%; |
| | | text-align: center; |
| | | } |
| | | } |
| | | |
| | |
| | | height: 20px; |
| | | border-radius: 10px; |
| | | } |
| | | |
| | | div { |
| | | font-size: 15px; |
| | | color: #333333; |
| | |
| | | margin-left: 6px; |
| | | } |
| | | } |
| | | |
| | | span { |
| | | width: 1px; |
| | | height: 20px; |
| | | background: #999; |
| | | margin: 0 15px; |
| | | } |
| | | |
| | | .loginOut { |
| | | font-size: 15px; |
| | | color: #333; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .leftCont { |
| | | position: absolute; |
| | | left: -100px; |
| | |
| | | background-size: 100% 100%; |
| | | animation: moveRight .8s 1 ease forwards; |
| | | } |
| | | |
| | | .topCont { |
| | | position: absolute; |
| | | width: 100%; |
| | |
| | | .time { |
| | | font-size: 48px; |
| | | } |
| | | |
| | | & > span { |
| | | width: 1px; |
| | | height: 40px; |
| | | margin: 0 15px; |
| | | background: #fff; |
| | | } |
| | | |
| | | .today { |
| | | display: flex; |
| | | flex-direction: column; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .line { |
| | | width: 120px; |
| | | height: 6px; |
| | | background: #00eeff; |
| | | } |
| | | } |
| | | |
| | | .menuGrid { |
| | | width: calc(100vw - 220px); |
| | | height: calc(100vh - 320px); |
| | |
| | | position: absolute; |
| | | top: 260px; |
| | | left: 220px; |
| | | overflow: hidden; |
| | | overflow-y: scroll; |
| | | |
| | | .gridCont { |
| | | .grid-content { |
| | | border-radius: 16px; |
| | | border-radius: 8px; |
| | | position: relative; |
| | | overflow: hidden; |
| | | cursor: pointer; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .cont-bg-1 { |
| | | background: #d9eaff; |
| | | } |
| | | |
| | | .cont-bg-2 { |
| | | background: #cdd6ff; |
| | | } |
| | |
| | | /*}*/ |
| | | } |
| | | } |
| | | |
| | | .bot-rights { |
| | | width: calc(100vw - 240px); |
| | | height: 60px; |
| | |
| | | width: 248px; |
| | | height: 8px; |
| | | } |
| | | |
| | | div { |
| | | margin: 0 20px; |
| | | } |
| | |
| | | </div> |
| | | </div> |
| | | <el-table :data="tableData" style="width: 100%" :header-cell-style="{ background: '#fafafa' }"> |
| | | <el-table-column property="seDepName" label="事业部" align="center"/> |
| | | <el-table-column property="seDepName" label="部门" align="center"/> |
| | | <el-table-column property="totalCount" label="总数" align="center"/> |
| | | <el-table-column v-for="workType in workTypes" :key="workType.workType" :label="workType.workTypeDesc" :prop="`list.${workType.workType - 1}.count`"></el-table-column> |
| | | </el-table> |
| | |
| | | <el-row class="homeCard"> |
| | | <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px"> |
| | | <span>时间筛选:</span> |
| | | <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime()" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" /> |
| | | <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime()" |
| | | range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间"/> |
| | | </div> |
| | | <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px"> |
| | | <span>负责人:</span> |
| | | <el-input v-model.trim="searPara.headUserName" placeholder="负责人"/> |
| | | </div> |
| | | <div class="basic-line"> |
| | | <span>事业部:</span> |
| | | <el-select v-model="searPara.secondDepId"> |
| | | <el-option |
| | | v-for="item in dep4List" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | <span>部门:</span> |
| | | <!-- <el-select v-model="searPara.secondDepId">--> |
| | | <!-- <el-option--> |
| | | <!-- v-for="item in dep4List"--> |
| | | <!-- :key="item.id"--> |
| | | <!-- :label="item.name"--> |
| | | <!-- :value="item.id"--> |
| | | <!-- />--> |
| | | <!-- </el-select>--> |
| | | <el-cascader :teleported="false" v-model="searPara.secondDepId" :options="departmentList" :props="casProps" |
| | | :show-all-levels="false"/> |
| | | </div> |
| | | <div class="basic-line"> |
| | | <span>作业类型:</span> |
| | |
| | | </el-col> |
| | | <el-button type="primary" :icon="Refresh" size="default" @click="reLoadData()" /> |
| | | </el-row> |
| | | <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }"> |
| | | <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)" |
| | | :header-cell-style="{ background: '#fafafa' }"> |
| | | <el-table-column property="workPermitNo" label="作业编号" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.workPermitNo?scope.row.workPermitNo:'—'}} |
| | |
| | | <el-table-column property="workTypeDesc" label="作业类型" align="center"/> |
| | | <el-table-column label="作业单位" align="center"> |
| | | <template #default="scope"> |
| | | <span v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{scope.row.workDepList.map(i=>i.workDepName).join(',')}}</span> |
| | | <span |
| | | v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{ scope.row.workDepList.map(i => i.workDepName).join(',') }}</span> |
| | | <span v-else>{{scope.row.workDepName }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="headList" label="负责人及电话" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.headList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}} |
| | | {{ |
| | | scope.row.headList.map(i => { |
| | | return i.userName + '(' + i.phone + ')' |
| | | }).join(',') |
| | | }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="operatorList" label="作业人及电话" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.operatorList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}} |
| | | {{ |
| | | scope.row.operatorList.map(i => { |
| | | return i.userName + '(' + i.phone + ')' |
| | | }).join(',') |
| | | }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="guardianList" label="监护人及电话" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.guardianList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}} |
| | | {{ |
| | | scope.row.guardianList.map(i => { |
| | | return i.userName + '(' + i.phone + ')' |
| | | }).join(',') |
| | | }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="expStartTime" label="作业开始时间" align="center"/> |
| | |
| | | <template #default="scope"> |
| | | <!-- <el-button link type="danger" size="small" :icon="Delete" @click="deleteRecordBtn(scope.row)">作废</el-button>--> |
| | | <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button> |
| | | <el-button v-if="(scope.row.working?.workAllStatus == 3 || scope.row.working?.workAllStatus == 4 || scope.row.working?.workAllStatus == 5)&&!scope.row.renewalWorkApplyId" link type="primary" size="small" :icon="Edit" @click="continueRecord(scope.row)">一键续票</el-button> |
| | | <el-button |
| | | v-if="(scope.row.working?.workAllStatus == 3 || scope.row.working?.workAllStatus == 4 || scope.row.working?.workAllStatus == 5)&&!scope.row.renewalWorkApplyId" |
| | | link type="primary" size="small" :icon="Edit" @click="continueRecord(scope.row)">一键续票 |
| | | </el-button> |
| | | <!-- <el-button link type="success" size="small" :icon="Finished">修改</el-button>--> |
| | | <!-- <el-button link type="success" size="small" :icon="Download">正式办票</el-button>--> |
| | | <el-button link type="primary" size="small" :icon="Download" @click="downLoadRecord(scope.row)">作业票预览</el-button> |
| | | <el-button link type="primary" size="small" :icon="Download" @click="downLoadRecord(scope.row)"> |
| | | 作业票预览 |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="pageBtn"> |
| | | <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1" @size-change="handleSizeChange1" @current-change="handleCurrentChange1" /> |
| | | <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]" |
| | | small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1" |
| | | @size-change="handleSizeChange1" @current-change="handleCurrentChange1"/> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | searPara: {} |
| | | timeRange: Array<string>; |
| | | lists: {} |
| | | casProps: {} |
| | | } |
| | | |
| | | interface type { |
| | | id: number; |
| | | name: string; |
| | | } |
| | | |
| | | interface DepartmentState { |
| | | depId: number; |
| | | depName: string; |
| | | } |
| | | |
| | | export default defineComponent({ |
| | | name: 'applys', |
| | | components: { |
| | |
| | | lists: { |
| | | workerList: [], |
| | | departList: [], |
| | | departList2: [], |
| | | deviceList: [], |
| | | otherWorks: [], |
| | | spList: [], |
| | | riskList: [] |
| | | }, |
| | | casProps: { |
| | | emitPath: false, |
| | | value: 'depId', |
| | | label: 'depName', |
| | | checkStrictly: true |
| | | }, |
| | | pageIndex1: 1, |
| | | pageSize1: 10, |
| | |
| | | state.departmentList = JSON.parse(JSON.stringify(res.data.data)) |
| | | recursion(state.departmentList); |
| | | state.lists.departList = state.departmentList |
| | | state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47) |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | } |
| | | |
| | | const getOtherWork = async () => { |
| | | let res = await workApplyApi().getOtherWork({pageSize: 999, pageIndex: 1, searchParams: {workPermitNo: '', workType: null}}) |
| | | let res = await workApplyApi().getOtherWork({ |
| | | pageSize: 999, |
| | | pageIndex: 1, |
| | | searchParams: {workPermitNo: '', workType: null} |
| | | }) |
| | | if (res.data.code === '200') { |
| | | state.lists.otherWorks = JSON.parse(JSON.stringify(res.data.data)) |
| | | } else { |
| | |
| | | // 导出方法 |
| | | const downLoadRecord = (row: any) => { |
| | | // let res = await workApplyApi().postPrinting(data); |
| | | axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/down/load/pdf`,{ id: row.id},{headers:{'Content-Type': 'application/json','Authorization': `${Cookies.get('token')}`,'uid':`${Cookies.get('uid')}`},responseType: 'blob'}).then(res=>{ |
| | | axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/down/load/pdf`, {id: row.id}, { |
| | | headers: { |
| | | 'Content-Type': 'application/json', |
| | | 'Authorization': `${Cookies.get('token')}`, |
| | | 'uid': `${Cookies.get('uid')}` |
| | | }, responseType: 'blob' |
| | | }).then(res => { |
| | | if (res) { |
| | | const link = document.createElement('a') |
| | | let blob = new Blob([res.data],{type: 'application/pdf'}) |
| | |
| | | height: calc(100vh - 144px); |
| | | box-sizing: border-box; |
| | | overflow: hidden; |
| | | |
| | | .demo-tabs { |
| | | width: 100%; |
| | | height: 100%; |
| | |
| | | height: 100%; |
| | | } |
| | | } |
| | | |
| | | .homeCard { |
| | | width: 100%; |
| | | padding: 20px; |
| | |
| | | .main-card { |
| | | width: 100%; |
| | | height: 100%; |
| | | |
| | | .cardTop { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | margin-bottom: 20px; |
| | | |
| | | .mainCardBtn { |
| | | margin: 0; |
| | | } |
| | | } |
| | | |
| | | .pageBtn { |
| | | height: 60px; |
| | | display: flex; |
| | |
| | | .demo-pagination-block + .demo-pagination-block { |
| | | margin-top: 10px; |
| | | } |
| | | |
| | | .demo-pagination-block .demonstration { |
| | | margin-bottom: 16px; |
| | | } |
| | | } |
| | | } |
| | | |
| | | &:last-of-type { |
| | | height: calc(100% - 130px); |
| | | } |
| | | } |
| | | |
| | | .stepItem { |
| | | display: flex; |
| | | align-items: flex-start; |
| | |
| | | padding-left: 40px; |
| | | border-left: 1px solid #a0cfff; |
| | | position: relative; |
| | | |
| | | &:first-of-type { |
| | | margin-top: 30px; |
| | | } |
| | | |
| | | &:first-of-type { |
| | | margin-bottom: 0; |
| | | border-left: none; |
| | | } |
| | | |
| | | .stepNum { |
| | | position: absolute; |
| | | width: 40px; |
| | |
| | | top: -30px; |
| | | background: #d9ecff; |
| | | } |
| | | |
| | | .stepCard { |
| | | width: 100%; |
| | | margin-top: -30px; |
| | |
| | | margin-bottom: 0; |
| | | } |
| | | } |
| | | |
| | | .approveUnit { |
| | | width: 100%; |
| | | font-size: 14px; |
| | |
| | | border: 1px solid #fff; |
| | | background: #ecf8ff; |
| | | border-radius: 6px; |
| | | |
| | | .item-tit { |
| | | width: 100%; |
| | | display: flex; |
| | |
| | | |
| | | & > span { |
| | | flex: 1; |
| | | |
| | | &:last-of-type{ |
| | | text-align: center; |
| | | } |
| | | } |
| | | |
| | | & > div { |
| | | flex: 1; |
| | | text-align: center; |
| | | } |
| | | } |
| | | |
| | | .item-cont { |
| | | width: 100%; |
| | | display: flex; |
| | |
| | | |
| | | & > span { |
| | | flex: 1; |
| | | |
| | | &:last-of-type{ |
| | | text-align: center; |
| | | } |
| | | } |
| | | |
| | | & > div { |
| | | flex: 1; |
| | | text-align: center; |
| | |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | |
| | | span { |
| | | width: 45%; |
| | | |
| | | &:first-of-type { |
| | | width: 30%; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | &:last-of-type { |
| | | border-bottom: 0; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .approveItem { |
| | | width: 100%; |
| | | font-size: 14px; |
| | |
| | | background: #ecf8ff; |
| | | border: 1px solid #fff; |
| | | border-radius: 6px; |
| | | |
| | | .item-tit { |
| | | width: 100%; |
| | | display: flex; |
| | |
| | | & > span { |
| | | flex: 1; |
| | | } |
| | | |
| | | & > div { |
| | | flex: 2; |
| | | text-align: center; |
| | | } |
| | | } |
| | | |
| | | .item-cont { |
| | | width: 100%; |
| | | display: flex; |
| | |
| | | & > span { |
| | | flex: 1; |
| | | } |
| | | |
| | | & > div { |
| | | flex: 2; |
| | | text-align: center; |
| | |
| | | justify-content: center; |
| | | align-items: flex-start; |
| | | margin-bottom: 10px; |
| | | |
| | | span { |
| | | width: 50%; |
| | | |
| | | &:first-of-type { |
| | | width: 25%; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | &:last-of-type { |
| | | border-bottom: 0; |
| | | } |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | &:hover .card-header { |
| | | color: #0098f5; |
| | | } |
| | | |
| | | &:hover .stepNum { |
| | | border: 2px solid #0098f5; |
| | | color: #0098f5; |
| | | } |
| | | } |
| | | |
| | | .el-row { |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 20px; |
| | | |
| | | &:last-child { |
| | | margin-bottom: 0; |
| | | } |
| | | |
| | | .grid-content { |
| | | align-items: center; |
| | | min-height: 36px; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .el-card { |
| | | border: 0; |
| | | } |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | } |
| | | |
| | | const findParent = ()=>{ |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | function findTopLevelId(tree, targetId) { |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | const findParent = ()=>{ |
| | | // state.form.applyDepId = state.form.depIdList[state.form.depIdList.length - 1] |
| | | // state.form.seDepId = state.form.depIdList[0] |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | const singleSelect=(value,type)=>{ |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | } |
| | | |
| | | const findParent = ()=>{ |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | function findTopLevelId(tree, targetId) { |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | value: 6 |
| | | }, |
| | | { |
| | | label: "特级高处作业", |
| | | label: "四级高处作业", |
| | | value: 7 |
| | | } |
| | | ], |
| | |
| | | } |
| | | |
| | | const findParent = ()=>{ |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | function findTopLevelId(tree, targetId) { |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | } |
| | | |
| | | const findParent = ()=>{ |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | function findTopLevelId(tree, targetId) { |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | } |
| | | |
| | | const findParent = ()=>{ |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | function findTopLevelId(tree, targetId) { |
| | |
| | | } |
| | | |
| | | const findParent = ()=>{ |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | function findTopLevelId(tree, targetId) { |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="applyDepId"> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | } |
| | | |
| | | const findParent = ()=>{ |
| | | state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId) |
| | | state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId) |
| | | } |
| | | |
| | | function findTopLevelId(tree, targetId) { |
| | |
| | | <el-row class="homeCard"> |
| | | <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px"> |
| | | <span>时间筛选:</span> |
| | | <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" /> |
| | | <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime" |
| | | range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间"/> |
| | | </div> |
| | | <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px"> |
| | | <span>负责人:</span> |
| | | <el-input v-model="searPara.headUserName" placeholder="负责人"/> |
| | | </div> |
| | | <div class="basic-line"> |
| | | <span>事业部:</span> |
| | | <el-select v-model="searPara.secondDepId"> |
| | | <el-option |
| | | v-for="item in dep4List" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | <span>部门:</span> |
| | | <el-cascader :teleported="false" v-model="searPara.secondDepId" :options="departmentList" :props="casProps" :show-all-levels="false"/> |
| | | </div> |
| | | <div class="basic-line"> |
| | | <span>作业类型:</span> |
| | |
| | | </el-col> |
| | | <el-button type="primary" :icon="Refresh" size="default" @click="reLoadData()" /> |
| | | </el-row> |
| | | <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }"> |
| | | <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)" |
| | | :header-cell-style="{ background: '#fafafa' }"> |
| | | <el-table-column property="workPermitNo" label="作业编号" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.workPermitNo?scope.row.workPermitNo:'—'}} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="seDepName" label="事业部" align="center"/> |
| | | <el-table-column property="seDepName" label="部门" align="center"/> |
| | | <el-table-column property="applyDepName" label="作业所在车间" align="center"/> |
| | | <el-table-column property="workContent" label="作业内容" align="center"/> |
| | | <el-table-column property="workTypeDesc" label="作业类型" align="center"/> |
| | | <el-table-column label="作业单位" align="center"> |
| | | <template #default="scope"> |
| | | <span v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{scope.row.workDepList.map(i=>i.workDepName).join(',')}}</span> |
| | | <span |
| | | v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{ scope.row.workDepList.map(i => i.workDepName).join(',') }}</span> |
| | | <span v-else>{{scope.row.workDepName }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="headList" label="负责人及电话" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.headList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}} |
| | | {{ |
| | | scope.row.headList.map(i => { |
| | | return i.userName + '(' + i.phone + ')' |
| | | }).join(',') |
| | | }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="operatorList" label="作业人及电话" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.operatorList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}} |
| | | {{ |
| | | scope.row.operatorList.map(i => { |
| | | return i.userName + '(' + i.phone + ')' |
| | | }).join(',') |
| | | }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="guardianList" label="监护人及电话" align="center"> |
| | | <template #default="scope"> |
| | | {{scope.row.guardianList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}} |
| | | {{ |
| | | scope.row.guardianList.map(i => { |
| | | return i.userName + '(' + i.phone + ')' |
| | | }).join(',') |
| | | }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column property="expStartTime" label="作业开始时间" align="center"/> |
| | |
| | | </el-table-column> |
| | | <el-table-column label="风险研判" align="center"> |
| | | <template #default="scope"> |
| | | <el-button v-if="scope.row.status == 0" link type="primary" size="small" @click="openReport('上传', scope.row)">上传研判报告</el-button> |
| | | <el-button v-if="scope.row.status == 0" link type="primary" size="small" |
| | | @click="openReport('上传', scope.row)">上传研判报告 |
| | | </el-button> |
| | | <el-tag type="danger" v-else-if="scope.row.status == 15">已取消</el-tag> |
| | | <el-tag type="danger" v-else-if="scope.row.status == 16">已废止</el-tag> |
| | | <el-button v-else link type="primary" size="small" @click="openReport('查看', scope.row)">查看研判报告</el-button> |
| | | <el-button v-else link type="primary" size="small" @click="openReport('查看', scope.row)">查看研判报告 |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" label="操作" align="center" width="150"> |
| | | <template #default="scope"> |
| | | <span v-if="scope.row.status == 16">已废止</span> |
| | | <span v-if="scope.row.status == 15">已取消</span> |
| | | <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="danger" size="small" :icon="Delete" @click="abortRecordBtn(scope.row)">取消</el-button> |
| | | <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="danger" size="small" |
| | | :icon="Delete" @click="abortRecordBtn(scope.row)">取消 |
| | | </el-button> |
| | | <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button> |
| | | <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="primary" size="small" v-throttle :icon="Edit" @click="openEdit(scope.row)">修改</el-button> |
| | | <el-button link type="success" v-throttle v-if="scope.row.status == 0 || scope.row.status == 1" size="small" :icon="Download" @click="checkTicket(scope.row)">正式办票</el-button> |
| | | <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="primary" size="small" |
| | | v-throttle :icon="Edit" @click="openEdit(scope.row)">修改 |
| | | </el-button> |
| | | <el-button link type="success" v-throttle v-if="scope.row.status == 0 || scope.row.status == 1" |
| | | size="small" :icon="Download" @click="checkTicket(scope.row)">正式办票 |
| | | </el-button> |
| | | <!-- <el-button :disabled="scope.row.status == 7 ? false : true" link type="primary" size="small" :icon="Download" @click="downLoadBtn(scope.row)">导出作业票</el-button>--> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="pageBtn"> |
| | | <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1" @size-change="handleSizeChange1" @current-change="handleCurrentChange1" /> |
| | | <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]" |
| | | small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1" |
| | | @size-change="handleSizeChange1" @current-change="handleCurrentChange1"/> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | timeRange: Array<string>; |
| | | dep4List: Array<type>; |
| | | lists: {} |
| | | casProps: {} |
| | | } |
| | | |
| | | interface type { |
| | | id: number; |
| | | name: string; |
| | | } |
| | | |
| | | interface DepartmentState { |
| | | depId: number; |
| | | depName: string; |
| | | } |
| | | |
| | | export default defineComponent({ |
| | | name: 'myApply', |
| | | components: { |
| | |
| | | headUserName: '', |
| | | secondDepId: null |
| | | }, |
| | | casProps: { |
| | | emitPath: false, |
| | | value: 'depId', |
| | | label: 'depName', |
| | | checkStrictly: true |
| | | }, |
| | | timeRange: [], |
| | | applyData: [], |
| | | workTimeList: [], |
| | |
| | | spList: [], |
| | | riskList: [] |
| | | }, |
| | | dep4List: [ |
| | | {id:49,name:'电石事业部'}, |
| | | {id:50,name:'电力事业部'}, |
| | | {id:48,name:'有机化工事业部'}, |
| | | {id:32,name:'甲醇事业部'} |
| | | ], |
| | | dep4List: [], |
| | | statusList: [ |
| | | { |
| | | value: 0, |
| | |
| | | state.departmentList = JSON.parse(JSON.stringify(res.data.data)) |
| | | recursion(state.departmentList); |
| | | state.lists.departList = JSON.parse(JSON.stringify(res.data.data)) |
| | | state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47) |
| | | // state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47) |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | } |
| | | }; |
| | | const getOtherWork = async () => { |
| | | let res = await workApplyApi().getOtherWork({pageSize: 999, pageIndex: 1, searchParams: {workPermitNo: '', workType: null}}) |
| | | let res = await workApplyApi().getOtherWork({ |
| | | pageSize: 999, |
| | | pageIndex: 1, |
| | | searchParams: {workPermitNo: '', workType: null} |
| | | }) |
| | | if (res.data.code === '200') { |
| | | state.lists.otherWorks = JSON.parse(JSON.stringify(res.data.data)) |
| | | } else { |
| | |
| | | // 导出方法 |
| | | const exportSheet = async () => { |
| | | // let res = await workApplyApi().postPrinting(data); |
| | | axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/export/excel`,{startTime: state.searPara.startTime,endTime: state.searPara.endTime,secondDepId: state.searPara.secondDepId},{headers:{'Content-Type': 'application/json','Authorization': `${Cookies.get('token')}`,'uid':`${Cookies.get('uid')}`},responseType: 'blob'}).then(res=>{ |
| | | axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/export/excel`, { |
| | | startTime: state.searPara.startTime, |
| | | endTime: state.searPara.endTime, |
| | | secondDepId: state.searPara.secondDepId |
| | | }, { |
| | | headers: { |
| | | 'Content-Type': 'application/json', |
| | | 'Authorization': `${Cookies.get('token')}`, |
| | | 'uid': `${Cookies.get('uid')}` |
| | | }, responseType: 'blob' |
| | | }).then(res => { |
| | | if (res) { |
| | | const link = document.createElement('a') |
| | | let blob = new Blob([res.data],{type: 'application/excel'}) |
| | |
| | | height: calc(100vh - 144px); |
| | | box-sizing: border-box; |
| | | overflow: hidden; |
| | | |
| | | .demo-tabs { |
| | | width: 100%; |
| | | height: 100%; |
| | |
| | | height: 100%; |
| | | } |
| | | } |
| | | |
| | | .homeCard { |
| | | width: 100%; |
| | | padding: 20px; |
| | |
| | | .main-card { |
| | | width: 100%; |
| | | height: 100%; |
| | | |
| | | .cardTop { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | margin-bottom: 20px; |
| | | |
| | | .mainCardBtn { |
| | | margin: 0; |
| | | } |
| | | } |
| | | |
| | | .pageBtn { |
| | | height: 60px; |
| | | display: flex; |
| | |
| | | .demo-pagination-block + .demo-pagination-block { |
| | | margin-top: 10px; |
| | | } |
| | | |
| | | .demo-pagination-block .demonstration { |
| | | margin-bottom: 16px; |
| | | } |
| | | } |
| | | } |
| | | |
| | | &:last-of-type { |
| | | height: calc(100% - 130px); |
| | | } |
| | | } |
| | | |
| | | .el-row { |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 20px; |
| | | |
| | | &:last-child { |
| | | margin-bottom: 0; |
| | | } |
| | | |
| | | .grid-content { |
| | | align-items: center; |
| | | min-height: 36px; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .el-card { |
| | | border: 0; |
| | | } |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | value: 6 |
| | | }, |
| | | { |
| | | label: "特级高处作业", |
| | | label: "四级高处作业", |
| | | value: 7 |
| | | } |
| | | ], |
| | |
| | | headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple filterable clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="作业申请单位" prop="depIdList"> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="绑定执法仪" prop="cameraIds"> |
| | | <el-form-item label="绑定执法仪"> |
| | | <el-select v-model="form.cameraIds" multiple clearable> |
| | | <el-option |
| | | v-for="item in lists.deviceList" |
| | |
| | | analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | | safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }], |
| | |
| | | lists: { |
| | | workerList: [], |
| | | departList: [], |
| | | departList2: [], |
| | | deviceList: [], |
| | | otherWorks: [], |
| | | spList: [], |
| | |
| | | // state.departmentList = JSON.parse(JSON.stringify(res.data.data)) |
| | | // state.departmentList2 = state.departmentList[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50) |
| | | state.lists.departList = JSON.parse(JSON.stringify(res.data.data)) |
| | | state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47) |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | } else if (data.approveRuleForm.workType === 6) { |
| | | data.approveRuleForm.workLevel = null; |
| | | data.workLevelList = [ |
| | | { id: 7, name: '特级高处作业' }, |
| | | { id: 7, name: '四级高处作业' }, |
| | | { id: 4, name: '一级高处作业' }, |
| | | { id: 5, name: '二级高处作业' }, |
| | | { id: 6, name: '三级高处作业' }, |
| | |
| | | { id: 3, name: '特级动火作业' }, |
| | | { id: 1, name: '一级动火作业' }, |
| | | { id: 2, name: '二级动火作业' }, |
| | | { id: 7, name: '特级高处作业' }, |
| | | { id: 7, name: '四级高处作业' }, |
| | | { id: 4, name: '一级高处作业' }, |
| | | { id: 5, name: '二级高处作业' }, |
| | | { id: 6, name: '三级高处作业' }, |
| | |
| | | value: 6 |
| | | }, |
| | | { |
| | | label: "特级高处作业", |
| | | label: "四级高处作业", |
| | | value: 7 |
| | | } |
| | | ], |
| | |
| | | <el-col :span="4" style="display:flex;align-items: center"> |
| | | <span style="white-space: nowrap">申请事业部:</span> |
| | | <div class="grid-content topInfo"> |
| | | <el-cascader :teleported="false" v-model="searchParams.seDepId" @change="changeDep4()" :options="depList" :props="casProps" :show-all-levels="false" size="small"/> |
| | | <el-cascader :teleported="false" v-model="searchParams.seDepId" @change="changeDep4()" :options="departmentList" :props="casProps" :show-all-levels="false" size="small"/> |
| | | </div> |
| | | </el-col> |
| | | <el-button type="primary" style="margin-left: 20px" @click="searchRecord" size="small">查询</el-button> |
| | |
| | | workType1: Array<type>; |
| | | dialogType: number | null; |
| | | departmentList: Array<any>; |
| | | depList: Array<any>; |
| | | departmentRecursionList: Array<DepartmentState>; |
| | | reviewForm: object; |
| | | reviewRules: object; |
| | |
| | | }, |
| | | dialogReview: false, |
| | | departmentList: [], |
| | | depList: [], |
| | | departmentRecursionList: [], |
| | | searchStatus: null, |
| | | endTime: '', |
| | |
| | | let res = await teamManageApi().getAllDepartment(); |
| | | if (res.data.code === '200') { |
| | | state.departmentList = JSON.parse(JSON.stringify(res.data.data)) |
| | | state.depList = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47) |
| | | // state.depList = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47) |
| | | recursion(state.departmentList); |
| | | state.lists.departList = state.departmentList |
| | | state.lists.departList2 = state.depList |
| | | } else { |
| | | ElMessage({ |
| | | type: 'warning', |
| | |
| | | menuTableData: [], |
| | | projectList: [ |
| | | { id: '1', name: '安全基础信息系统', key: 0 }, |
| | | { id: '2', name: '智能安全双重预防系统', key: 1 }, |
| | | // { id: '2', name: '智能安全双重预防系统', key: 1 }, |
| | | { id: '3', name: '智能安全特殊作业系统', key: 2 }, |
| | | { id: '4', name: '智能安全巡检系统', key: 3 }, |
| | | { id: '5', name: '智能安全风险综合预警预报平台', key: 4 }, |
| | | { id: '6', name: '应急管理系统', key: 5 }, |
| | | { id: '12', name: '监管数据融合互通系统', key: 11 }, |
| | | { id: '7', name: '安全目标责任管理系统', key: 6 }, |
| | | { id: '8', name: '安全事故管理系统', key: 7 }, |
| | | { id: '9', name: '设备综合管控系统', key: 8 }, |
| | | { id: '10', name: '安全知识图谱系统', key: 9 }, |
| | | { id: '11', name: '智能安全危险化学品全生命周期管控系统', key: 10 } |
| | | // { id: '4', name: '智能安全巡检系统', key: 3 }, |
| | | // { id: '5', name: '智能安全风险综合预警预报平台', key: 4 }, |
| | | // { id: '6', name: '应急管理系统', key: 5 }, |
| | | // { id: '12', name: '监管数据融合互通系统', key: 11 }, |
| | | // { id: '7', name: '安全目标责任管理系统', key: 6 }, |
| | | // { id: '8', name: '安全事故管理系统', key: 7 }, |
| | | // { id: '9', name: '设备综合管控系统', key: 8 }, |
| | | // { id: '10', name: '安全知识图谱系统', key: 9 }, |
| | | // { id: '11', name: '智能安全危险化学品全生命周期管控系统', key: 10 } |
| | | ] |
| | | }); |
| | | // // 获取 vuex 中的路由 |