| | |
| | | <div class="pt--35 px--20 pb--54"> |
| | | <!-- 返回 --> |
| | | <div> |
| | | <img |
| | | @click="backFun" |
| | | src="../../assets/img/back.png" |
| | | class="w--22 h--20 shrink0 mr--13 cursor-pointer" |
| | | /> |
| | | <img @click="backFun" src="../../assets/img/back.png" class="w--22 h--20 shrink0 mr--13 cursor-pointer" /> |
| | | </div> |
| | | <!-- tab --> |
| | | <div |
| | | class="flex a-center absolute postion-center br--16 top--130 br--16 c-fff fs--14 bgcolor4 SSHR" |
| | | > |
| | | <div class="flex a-center absolute postion-center br--16 top--130 br--16 c-fff fs--14 bgcolor4 SSHR"> |
| | | <div @click="activeTab = 1" class="lh--32 px--20 cursor-pointer z-10"> |
| | | 重大隐患 |
| | | </div> |
| | |
| | | <!-- 搜索 --> |
| | | <div class="flex a-center gap--16 mt--24 mb--20"> |
| | | <!-- 项目选择(非项目端才显示) --> |
| | | <div |
| | | v-if="!isProjectMode" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox" |
| | | > |
| | | <el-select |
| | | filterable |
| | | v-model="searchForm.projectId" |
| | | placeholder="请选择项目" |
| | | class="flex1" |
| | | @change="handleSelectChange" |
| | | > |
| | | <el-option |
| | | v-for="item in projectList" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | <div v-if="!isProjectMode" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox"> |
| | | <el-select filterable v-model="searchForm.projectId" placeholder="请选择项目" class="flex1" |
| | | @change="handleSelectChange"> |
| | | <el-option v-for="item in projectList" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | <div class="flex a-center gap--5"> |
| | | <i |
| | | @click.stop="clearSelect('projectId')" |
| | | class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.projectId" |
| | | /> |
| | | <img |
| | | src="../../assets/img/down-circle@2x.png" |
| | | class="w--15 h--16 shrink0" |
| | | /> |
| | | <i @click.stop="clearSelect('projectId')" class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.projectId" /> |
| | | <img src="../../assets/img/down-circle@2x.png" class="w--15 h--16 shrink0" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 整改状态 --> |
| | | <div |
| | | v-if="showReformedFilter" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox" |
| | | > |
| | | <el-select |
| | | v-model="searchForm.state " |
| | | placeholder="请选择整改状态" |
| | | class="flex1" |
| | | @change="handleSelectChange" |
| | | > |
| | | <el-option |
| | | v-for="item in reformedOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | <div v-if="showReformedFilter" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox"> |
| | | <el-select v-model="searchForm.state" placeholder="请选择整改状态" class="flex1" @change="handleSelectChange"> |
| | | <el-option v-for="item in reformedOptions" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | <div class="flex a-center gap--5"> |
| | | <i |
| | | @click.stop="clearSelect('state')" |
| | | class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.state !== null" |
| | | /> |
| | | <img |
| | | src="../../assets/img/down-circle@2x.png" |
| | | class="w--15 h--16 shrink0" |
| | | /> |
| | | <i @click.stop="clearSelect('state')" class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.state !== null" /> |
| | | <img src="../../assets/img/down-circle@2x.png" class="w--15 h--16 shrink0" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 隐患类型(仅重大隐患显示) --> |
| | | <div |
| | | v-if="showTypeFilter" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox" |
| | | > |
| | | <el-select |
| | | v-model="searchForm.type" |
| | | placeholder="请选择隐患类型" |
| | | class="flex1" |
| | | @change="handleSelectChange" |
| | | > |
| | | <div v-if="showTypeFilter" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox"> |
| | | <el-select v-model="searchForm.type" placeholder="请选择隐患类型" class="flex1" @change="handleSelectChange"> |
| | | <el-option label="安全隐患" :value="1"></el-option> |
| | | <el-option label="设备隐患" :value="2"></el-option> |
| | | </el-select> |
| | | <div class="flex a-center gap--5"> |
| | | <i |
| | | @click.stop="clearSelect('type')" |
| | | class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.type !== null" |
| | | /> |
| | | <img |
| | | src="../../assets/img/down-circle@2x.png" |
| | | class="w--15 h--16 shrink0" |
| | | /> |
| | | <i @click.stop="clearSelect('type')" class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.type !== null" /> |
| | | <img src="../../assets/img/down-circle@2x.png" class="w--15 h--16 shrink0" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 隐患等级(安全和设备隐患显示) --> |
| | | <div |
| | | v-if="showLevelFilter" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox" |
| | | > |
| | | <el-select |
| | | v-model="searchForm.level" |
| | | placeholder="请选择隐患等级" |
| | | class="flex1" |
| | | @change="handleSelectChange" |
| | | > |
| | | <el-option |
| | | v-for="item in levelOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | <div v-if="showLevelFilter" |
| | | class="flex a-center j-between pl--18 pr--15 h--40 relative w--300 bgcolor1 searchBox"> |
| | | <el-select v-model="searchForm.level" placeholder="请选择隐患等级" class="flex1" @change="handleSelectChange"> |
| | | <el-option v-for="item in levelOptions" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | <div class="flex a-center gap--5"> |
| | | <i |
| | | @click.stop="clearSelect('level')" |
| | | class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.level !== null" |
| | | /> |
| | | <img |
| | | src="../../assets/img/down-circle@2x.png" |
| | | class="w--15 h--16 shrink0" |
| | | /> |
| | | <i @click.stop="clearSelect('level')" class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="searchForm.level !== null" /> |
| | | <img src="../../assets/img/down-circle@2x.png" class="w--15 h--16 shrink0" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 开始时间 --> |
| | | <div |
| | | class="flex a-center j-between px--20 w--300 h--40 relative bgcolor1 picker" |
| | | > |
| | | <el-date-picker |
| | | v-model="startDateTime" |
| | | ref="datetime1" |
| | | type="datetime" |
| | | placeholder="" |
| | | > |
| | | <div class="flex a-center j-between px--20 w--300 h--40 relative bgcolor1 picker"> |
| | | <el-date-picker v-model="startDateTime" ref="datetime1" type="datetime" placeholder=""> |
| | | </el-date-picker> |
| | | <div |
| | | @click.stop="handleClick(1)" |
| | | class="absolute h100 flex a-center c-fff fs--14 SHS pointer-events-none" |
| | | style="left: 20px; right: 60px; z-index: 1" |
| | | v-if="startDateTxt" |
| | | > |
| | | <div @click.stop="handleClick(1)" class="absolute h100 flex a-center c-fff fs--14 SHS pointer-events-none" |
| | | style="left: 20px; right: 60px; z-index: 1" v-if="startDateTxt"> |
| | | {{ startDateTxt }} |
| | | </div> |
| | | <div |
| | | @click.stop="handleClick(1)" |
| | | v-else |
| | | <div @click.stop="handleClick(1)" v-else |
| | | class="absolute h100 flex a-center c-fff fs--14 SHSR pointer-events-none" |
| | | style="left: 20px; right: 60px; z-index: 1" |
| | | > |
| | | style="left: 20px; right: 60px; z-index: 1"> |
| | | 开始时间 |
| | | </div> |
| | | <div |
| | | class="flex a-center gap--5" |
| | | style="position: relative; z-index: 2" |
| | | > |
| | | <i |
| | | @click.stop="clearDateTime('start')" |
| | | class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="startDateTxt" |
| | | /> |
| | | <img |
| | | @click="handleClick(1)" |
| | | src="../../assets/img/home/Shape@2x (6).png" |
| | | class="w--13 h--13 shrink0 cursor-pointer" |
| | | /> |
| | | <div class="flex a-center gap--5" style="position: relative; z-index: 2"> |
| | | <i @click.stop="clearDateTime('start')" class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="startDateTxt" /> |
| | | <img @click="handleClick(1)" src="../../assets/img/home/Shape@2x (6).png" |
| | | class="w--13 h--13 shrink0 cursor-pointer" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 结束时间 --> |
| | | <div |
| | | class="flex a-center j-between px--20 w--300 h--40 relative bgcolor1 picker" |
| | | > |
| | | <el-date-picker |
| | | v-model="endDateTime" |
| | | ref="datetime2" |
| | | type="datetime" |
| | | placeholder="" |
| | | > |
| | | <div class="flex a-center j-between px--20 w--300 h--40 relative bgcolor1 picker"> |
| | | <el-date-picker v-model="endDateTime" ref="datetime2" type="datetime" placeholder=""> |
| | | </el-date-picker> |
| | | <div |
| | | @click="handleClick(2)" |
| | | class="absolute h100 flex a-center c-fff fs--14 SHS pointer-events-none" |
| | | style="left: 20px; right: 60px; z-index: 1" |
| | | v-if="endDateTxt" |
| | | > |
| | | <div @click="handleClick(2)" class="absolute h100 flex a-center c-fff fs--14 SHS pointer-events-none" |
| | | style="left: 20px; right: 60px; z-index: 1" v-if="endDateTxt"> |
| | | {{ endDateTxt }} |
| | | </div> |
| | | <div |
| | | @click="handleClick(2)" |
| | | v-else |
| | | class="absolute h100 flex a-center c-fff fs--14 SHSR pointer-events-none" |
| | | style="left: 20px; right: 60px; z-index: 1" |
| | | > |
| | | <div @click="handleClick(2)" v-else class="absolute h100 flex a-center c-fff fs--14 SHSR pointer-events-none" |
| | | style="left: 20px; right: 60px; z-index: 1"> |
| | | 结束时间 |
| | | </div> |
| | | <div |
| | | class="flex a-center gap--5" |
| | | style="position: relative; z-index: 2" |
| | | > |
| | | <i |
| | | @click.stop="clearDateTime('end')" |
| | | class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="endDateTxt" |
| | | /> |
| | | <img |
| | | @click="handleClick(2)" |
| | | src="../../assets/img/home/Shape@2x (6).png" |
| | | class="w--13 h--13 shrink0 cursor-pointer" |
| | | /> |
| | | <div class="flex a-center gap--5" style="position: relative; z-index: 2"> |
| | | <i @click.stop="clearDateTime('end')" class="el-icon-circle-close c-fff cursor-pointer" |
| | | v-show="endDateTxt" /> |
| | | <img @click="handleClick(2)" src="../../assets/img/home/Shape@2x (6).png" |
| | | class="w--13 h--13 shrink0 cursor-pointer" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 搜索内容 --> |
| | | <div |
| | | class="flex a-center j-between w--300 pl--20 h--40 relative bgcolor1 searchBox" |
| | | > |
| | | <el-input |
| | | v-model="searchForm.content" |
| | | placeholder="请输入搜索内容" |
| | | class="flex1" |
| | | clearable |
| | | @keyup.enter.native="handleSearch" |
| | | > |
| | | <div class="flex a-center j-between w--300 pl--20 h--40 relative bgcolor1 searchBox"> |
| | | <el-input v-model="searchForm.content" placeholder="请输入搜索内容" class="flex1" clearable |
| | | @keyup.enter.native="handleSearch"> |
| | | </el-input> |
| | | <div class="btn SHSR" @click="handleSearch">搜索</div> |
| | | </div> |
| | |
| | | <el-table-column label="问题备注" prop="remark" min-width="150" show-overflow-tooltip /> |
| | | <el-table-column label="隐患等级" min-width="120" prop="level"> |
| | | <template #default="{ row }"> |
| | | <span>{{getLevelText(row.level) }}</span> |
| | | <span>{{ getLevelText(row.level) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column v-if="activeTab == 1" label="隐患类型" min-width="120"> |
| | |
| | | </el-table-column> |
| | | <el-table-column label="图片" min-width="100"> |
| | | <template #default="{ row }"> |
| | | <div |
| | | class="btnColor cursor-pointer" |
| | | :class=" |
| | | !row.userFiles || row.userFiles.length === 0 |
| | | ? 'disableColor' |
| | | : '' |
| | | " |
| | | @click="handlePreviewImages(row.userFiles)" |
| | | > |
| | | <div class="btnColor cursor-pointer" :class="!row.userFiles || row.userFiles.length === 0 |
| | | ? 'disableColor' |
| | | : '' |
| | | " @click="handlePreviewImages(row.userFiles)"> |
| | | {{ row.fileNum || 0 }}张 |
| | | </div> |
| | | </template> |
| | |
| | | <template #default="{ row }"> |
| | | <div class="flex a-center j-center"> |
| | | <div class="ripple"> |
| | | <div |
| | | class="ripple-wave wave-1" |
| | | :class="{ bgColor33: row.state == 3 }" |
| | | ></div> |
| | | <div |
| | | class="ripple-wave wave-2" |
| | | :class="{ bgColor44: row.state == 3 }" |
| | | ></div> |
| | | <div |
| | | class="ripple-wave wave-3" |
| | | :class="{ bgColor55: row.state == 3 }" |
| | | ></div> |
| | | <div class="ripple-wave wave-1" :class="{ bgColor33: row.state == 3 }"></div> |
| | | <div class="ripple-wave wave-2" :class="{ bgColor44: row.state == 3 }"></div> |
| | | <div class="ripple-wave wave-3" :class="{ bgColor55: row.state == 3 }"></div> |
| | | </div> |
| | | <div class="ml--6 SHSR">{{ getReformedText(row.state) }}</div> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="责任人" |
| | | prop="responsiblePerson" |
| | | min-width="120" |
| | | /> |
| | | <el-table-column label="责任人" prop="responsiblePerson" min-width="120" /> |
| | | <el-table-column label="操作" min-width="200" fixed="right"> |
| | | <template #default="{ row }"> |
| | | <el-button |
| | | @click="handleEditPeople(row)" |
| | | type="text" |
| | | class="btnColor" |
| | | > |
| | | <el-button @click="handleEditPeople(row)" type="text" class="btnColor"> |
| | | 编辑责任人 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | class="btnColor" |
| | | @click="handleViewDetail(row)" |
| | | > |
| | | <el-button type="text" class="btnColor" @click="handleViewDetail(row)"> |
| | | 详情 |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </CustomTable> |
| | | <CustomPagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="pageNum" |
| | | :page-sizes="[10, 20, 50, 100]" |
| | | :page-size="pageSize" |
| | | :total="total" |
| | | /> |
| | | <CustomPagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum" |
| | | :page-sizes="[10, 20, 50, 100]" :page-size="pageSize" :total="total" /> |
| | | </div> |
| | | <!-- 修改责任人 --> |
| | | <CustomDialog title="责任人" :visible.sync="updatePeople" width="600px"> |
| | | <div class="pt--37 px--45 pb--64"> |
| | | <input |
| | | v-model="peopleName" |
| | | placeholder="请输入" |
| | | class="w100 h--60 fs--14 SHSR py--23 px--21 bgcolor5 c-fff" |
| | | /> |
| | | <input v-model="peopleName" placeholder="请输入" class="w100 h--60 fs--14 SHSR py--23 px--21 bgcolor5 c-fff" /> |
| | | <div class="flex a-center j-center gap--30 mt--59 SHSR fs--16 c-fff"> |
| | | <div |
| | | @click="closeUpdatePeople" |
| | | class="w--150 lh--40 txt-center bgcolor2 br--4 cursor-pointer" |
| | | > |
| | | <div @click="closeUpdatePeople" class="w--150 lh--40 txt-center bgcolor2 br--4 cursor-pointer"> |
| | | 取消 |
| | | </div> |
| | | <div |
| | | @click="saveUpdatePeople" |
| | | class="w--150 lh--40 txt-center bgcolor3 br--4 cursor-pointer" |
| | | > |
| | | <div @click="saveUpdatePeople" class="w--150 lh--40 txt-center bgcolor3 br--4 cursor-pointer"> |
| | | 保存 |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </CustomDialog> |
| | | <!-- 隐患详情 --> |
| | | <CustomDialog |
| | | :title="detailData ? detailData.projectName || '隐患详情' : '隐患详情'" |
| | | :visible.sync="detailVisible" |
| | | width="1420px" |
| | | > |
| | | <CustomDialog :title="detailData ? detailData.projectName || '隐患详情' : '隐患详情'" :visible.sync="detailVisible" |
| | | width="1420px"> |
| | | <el-tabs v-model="activeName" type="card" @tab-click="handleClickTab"> |
| | | <el-tab-pane label="基本信息" name="first"> |
| | | <div class="oa" style="height: 700px"> |
| | |
| | | </div> |
| | | <div class="mt--30"> |
| | | <div class="SHSR fs--16 lh--16 mb--17 color1">规范条款:</div> |
| | | <div |
| | | class="min-h--60 py--20 px--19 c-fff SHSBold fs--18 w100 bgcolor6" |
| | | > |
| | | <template |
| | | v-if=" |
| | | detailData && |
| | | detailData.specificTerms && |
| | | detailData.specificTerms.length > 0 |
| | | " |
| | | > |
| | | <div |
| | | v-for="(term, index) in detailData.specificTerms" |
| | | :key="'term-' + index" |
| | | class="mb--10" |
| | | > |
| | | <div class="min-h--60 py--20 px--19 c-fff SHSBold fs--18 w100 bgcolor6"> |
| | | <template v-if=" |
| | | detailData && |
| | | detailData.specificTerms && |
| | | detailData.specificTerms.length > 0 |
| | | "> |
| | | <div v-for="(term, index) in detailData.specificTerms" :key="'term-' + index" class="mb--10"> |
| | | {{ index + 1 }}. {{ term }} |
| | | </div> |
| | | </template> |
| | |
| | | </div> |
| | | <div class="mt--30"> |
| | | <div class="SHSR fs--16 lh--16 mb--17 color1">建议措施:</div> |
| | | <div |
| | | class="min-h--60 py--20 px--19 c-fff SHSBold fs--18 w100 bgcolor6" |
| | | > |
| | | <template |
| | | v-if=" |
| | | detailData && |
| | | detailData.suggestActions && |
| | | detailData.suggestActions.length > 0 |
| | | " |
| | | > |
| | | <div |
| | | v-for="(action, index) in detailData.suggestActions" |
| | | :key="'action-' + index" |
| | | class="mb--10" |
| | | > |
| | | <div class="min-h--60 py--20 px--19 c-fff SHSBold fs--18 w100 bgcolor6"> |
| | | <template v-if=" |
| | | detailData && |
| | | detailData.suggestActions && |
| | | detailData.suggestActions.length > 0 |
| | | "> |
| | | <div v-for="(action, index) in detailData.suggestActions" :key="'action-' + index" class="mb--10"> |
| | | {{ index + 1 }}. {{ action }} |
| | | </div> |
| | | </template> |
| | |
| | | </div> |
| | | <div class="mt--30"> |
| | | <div class="SHSR fs--16 lh--16 mb--17 color1">备注:</div> |
| | | <div |
| | | class="min-h--60 py--20 px--19 c-fff SHSBold fs--18 w100 bgcolor6" |
| | | > |
| | | <div class="min-h--60 py--20 px--19 c-fff SHSBold fs--18 w100 bgcolor6"> |
| | | {{ (detailData && detailData.remark) || "-" }} |
| | | </div> |
| | | </div> |
| | |
| | | </el-tab-pane> |
| | | <el-tab-pane :label="getReviewRecordsLabel()" name="second"> |
| | | <div class="oa" style="height: 700px"> |
| | | <div |
| | | v-if="!detailData || !detailData.errorReview" |
| | | class="txt-center c-fff fs--16 mt--50" |
| | | > |
| | | <div v-if="!detailData || !detailData.errorReview" class="txt-center c-fff fs--16 mt--50"> |
| | | 暂无复查记录 |
| | | </div> |
| | | <div v-else> |
| | |
| | | <div class="flex j-between gap--30 mt--30"> |
| | | <div class="flex1"> |
| | | <div class="SHSR fs--16 lh--16 mb--17 color1">复查图片:</div> |
| | | <div |
| | | class="lh--60 px--19 btnColor SHSBold fs--18 w100 cursor-pointer" |
| | | :class=" |
| | | !detailData.errorReview.img || |
| | | detailData.errorReview.img.length === 0 |
| | | ? 'disableColor' |
| | | : '' |
| | | " |
| | | @click=" |
| | | <div class="lh--60 px--19 btnColor SHSBold fs--18 w100 cursor-pointer" :class="!detailData.errorReview.img || |
| | | detailData.errorReview.img.length === 0 |
| | | ? 'disableColor' |
| | | : '' |
| | | " @click=" |
| | | handlePreviewReviewImages(detailData.errorReview.img) |
| | | " |
| | | > |
| | | "> |
| | | {{ |
| | | (detailData.errorReview.img && |
| | | detailData.errorReview.img.length) || |
| | |
| | | </el-tabs> |
| | | </CustomDialog> |
| | | <!-- 图片预览 --> |
| | | <CustomPreview |
| | | :show="previewVisible" |
| | | :imgArr="previewImages" |
| | | @close="previewVisible = false" |
| | | /> |
| | | <CustomPreview :show="previewVisible" :imgArr="previewImages" @close="previewVisible = false" /> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | // 搜索条件 |
| | | searchForm: { |
| | | projectId: null, // 选中的项目ID |
| | | state : null, // 整改状态:1已整改 0未整改 |
| | | state: null, // 整改状态:1已整改 0未整改 |
| | | type: null, // 隐患类型:1=安全 2=设备 |
| | | level: null, // 隐患等级:0=一级 1=二级 2=三级 3=四级 |
| | | startTime: null, // 开始时间 |
| | |
| | | // bigHiddenDangerConfig: 1开启 2关闭 |
| | | // generalHiddenDangerConfig: 1开启 2关闭 |
| | | |
| | | if (this.activeTab === 1) { |
| | | // 重大隐患 tab,判断 bigHiddenDangerConfig |
| | | return this.bigHiddenDangerConfig === 1; |
| | | if (this.bigHiddenDangerConfig === 1) { |
| | | return false |
| | | } else if (this.generalHiddenDangerConfig === 1) { |
| | | return this.activeTab === 1 |
| | | } else { |
| | | // 安全隐患和设备隐患 tab,判断 generalHiddenDangerConfig |
| | | return this.generalHiddenDangerConfig === 1; |
| | | return true |
| | | } |
| | | }, |
| | | }, |
| | |
| | | // 加载表格数据 |
| | | this.loadTableData(); |
| | | }, |
| | | mounted() {}, |
| | | mounted() { }, |
| | | methods: { |
| | | // 从 localStorage 加载配置 |
| | | loadConfigFromLocalStorage() { |
| | |
| | | resetSearchForm() { |
| | | this.searchForm = { |
| | | projectId: this.projectId || null, |
| | | state : null, |
| | | state: null, |
| | | type: this.currentType, |
| | | level: null, |
| | | startTime: this.routeStartTime || null, // 保留路由传递的开始时间 |
| | |
| | | }, |
| | | |
| | | // 获取整改状态文本 |
| | | getReformedText(state ) { |
| | | return ["未复查","未整改", "部分整改", "已整改",'未复查' ][state ]; |
| | | getReformedText(state) { |
| | | return ["未复查", "未整改", "部分整改", "已整改", '未复查'][state]; |
| | | }, |
| | | |
| | | // 预览图片 |
| | |
| | | // 获取复查状态文本 |
| | | getReviewStateText(state) { |
| | | const stateMap = { |
| | | 0:'未复查', |
| | | 0: '未复查', |
| | | 1: "未整改", |
| | | 2: "部分整改", |
| | | 3: "已整改", |
| | |
| | | position: absolute; |
| | | top: -2px; |
| | | right: -2px; |
| | | background: linear-gradient( |
| | | 90deg, |
| | | #3467d0 0%, |
| | | #0d226a 50.35%, |
| | | #376fe0 100% |
| | | ); |
| | | background: linear-gradient(90deg, |
| | | #3467d0 0%, |
| | | #0d226a 50.35%, |
| | | #376fe0 100%); |
| | | height: 38px; |
| | | display: flex; |
| | | align-items: center; |