hbt-prevention-ui/src/views/hiddenDanger/common.component.html

130 lines
8.8 KiB
HTML

<div class="common-box dis-flex ">
<div class="common-content-box dis-flex flex-col flex-1">
<div class="search-box">
<FormComponent :options="formOptions" :data.sync="params" @actionCallback="callback" :actions="formActions"
:full-btn="false" @change="callback" btn-position="end"></FormComponent>
</div>
<div class="table-box flex-1">
<div class="full" v-if="isManager">
<el-radio-group text-color="#409EFF" fill="transparent" size="medium" v-model="params.type"
@change="tabTableChange">
<el-radio-button :label="item.value" v-for="item in tabs"
:key="item.value">{{item.name}}</el-radio-button>
</el-radio-group>
</div>
<TableComponent style="flex: 1; height: 1px;" :tableData="tableData" :tableColumn="tableColumn"
@actionCallback="callback($event)" @pageNumberChange="callback($event,'pageNum')"
@pageSizeChange="callback($event,'pageSize')" :footerActions="footerActions" :actions="tableActions">
<el-table ref="multipleTable" :data="tableData.datas" height="100%" border row-key="checked"
@selection-change="handleSelectionChange" style="width: 100%" @sort-change="sortChange($event)">
<el-table-column v-if="!(isManager)" type="selection" :selectable="selectable"
fixed label="全选" width="40">
</el-table-column>
<el-table-column label="序号" width="60">
<div slot-scope="scope">{{scope.$index+1}}</div>
</el-table-column>
<template v-for="item in tableColumn">
<el-table-column v-if="item.render" :label="item.name" :filters="item.filters"
:filter-method="item.filterMethod" :width="item.width" :key="item.key"
:sortable="item.sortable">
<div slot-scope="scope" @click="" v-html="item.render(scope.row)"
style="pointer-events: none;" @click="rowCallback($event,scope.row)"></div>
</el-table-column>
<el-table-column v-else :prop="item.key" :label="item.name" :filters="item.filters"
:filter-method="item.filterMethod" :width="item.width" :key="item.key"
:sortable="item.sortable">
</el-table-column>
</template>
<el-table-column label="操作" fixed="right" :width="tableActionWidth">
<template slot-scope="scope">
<el-button type="text" v-if="isBase || isFile || isManager"
@click="showUpdateModel(scope.row,true)">查看</el-button>
<el-button type="text" v-if="isBase && !(isClap && scope.row.status)"
@click="showUpdateModel(scope.row)">修改</el-button>
<el-button type="text" v-if="isBase && !(isClap && scope.row.status)"
@click="deleteData([scope.row.id])">删除</el-button>
<!-- <el-button type="text" v-if="isManager" @click="showUpdateModel(0)">抄送</el-button>
<el-button type="text" v-if="isManager" @click="showUpdateModel(0)">移交</el-button> -->
<el-button type="text" v-if="isManager && params.type===3 && scope.row.taskInfo.processStatus === 1"
@click="changeStatus(scope.row, 1)">中断</el-button>
<el-button type="text" v-if="isManager && params.type===3 && scope.row.taskInfo.processStatus === 2"
@click="changeStatus(scope.row, 2)">恢复</el-button>
<el-button type="text" v-if="isManager && params.type===3 && scope.row.taskInfo.processStatus === 1"
@click="changeStatus(scope.row, 3)">作废</el-button>
<!-- <el-button type="text" v-if="isManager" @click="showUpdateModel(0)">处理</el-button> -->
</template>
</el-table-column>
</el-table>
</TableComponent>
</div>
</div>
<el-dialog :close-on-click-modal="false" :title="isReadonly?'详情':!updateParams.id?'新增':'编辑'"
:visible.sync="showUpdate" width="980px" :before-close="handleClose" destroy-on-close>
<div class="sub-title" v-if="isManager || isFile">隐患信息</div>
<FormComponent ref="form" :options="updateOptions"
:isReadonly="isReadonly || ((isManager || isFile) && updateParams.status>1)" labelWidth="98px"
labelAlign="right" :data.sync="updateParams" @actionCallback="callback" :actions="updateActions"
:full-btn="true" @change="change" btn-position="center"></FormComponent>
<div class="sub-title"
v-if="((isManager || isFile) && updateParams.status>1 && !(updateParams.status===2 && isReadonly))
|| ((isManager || isFile) && updateParams.reformConfirmFlag!==null && updateParams.reformConfirmFlag!==undefined)">隐患确认</div>
<FormComponent
v-if="(isManager || isFile) && updateParams.status>1 && !(updateParams.status===2 && isReadonly)
|| ((isManager || isFile) && updateParams.reformConfirmFlag!==null && updateParams.reformConfirmFlag!==undefined)"
:options="updateOptions2"
:isReadonly="isReadonly || (isManager && updateParams.status>2)
|| ((isManager || isFile) && updateParams.status!==2 && updateParams.reformConfirmFlag!==null && updateParams.reformConfirmFlag!==undefined)"" labelWidth="
110px" labelAlign="right" :data.sync="updateParams" @actionCallback="callback" :actions="updateActions"
:full-btn="true" @change="change" btn-position="center"></FormComponent>
<div class="sub-title"
v-if="((isManager || isFile) && updateParams.status>2 && !(updateParams.status===3 && isReadonly))
|| ((isManager || isFile) && updateParams.executeConfirmFlag!==null && updateParams.executeConfirmFlag!==undefined)">隐患整改
</div>
<FormComponent
v-if="((isManager || isFile) && updateParams.status>2 && !(updateParams.status===3 && isReadonly))
|| ((isManager || isFile) && updateParams.executeConfirmFlag!==null && updateParams.executeConfirmFlag!==undefined)"
:options="updateOptions3"
:isReadonly="isReadonly || (isManager && updateParams.status>3)
|| ((isManager || isFile) && updateParams.status!==3 && updateParams.executeConfirmFlag!==null && updateParams.executeConfirmFlag!==undefined)"
labelWidth="110px" labelAlign="right" :data.sync="updateParams" @actionCallback="callback"
:actions="updateActions" :full-btn="true" @change="change" btn-position="center"></FormComponent>
<div class="sub-title"
v-if="((isManager || isFile) && updateParams.status>3 && !(updateParams.status===4 && isReadonly))
|| ((isManager || isFile) && updateParams.verifyConfirmFlag!==null && updateParams.verifyConfirmFlag!==undefined)">隐患验证</div>
<FormComponent
v-if="(isManager && updateParams.status>3 && !(updateParams.status===4 && isReadonly))
|| ((isManager || isFile) && updateParams.verifyConfirmFlag!==null && updateParams.verifyConfirmFlag!==undefined)"
:options="updateOptions4"
:isReadonly="isReadonly || (isManager && updateParams.status>4)
|| ((isManager || isFile) && updateParams.status!==4 && updateParams.verifyConfirmFlag!==null && updateParams.verifyConfirmFlag!==undefined)"
labelWidth="110px" labelAlign="right" :data.sync="updateParams" @actionCallback="callback"
:actions="updateActions" :full-btn="true" @change="change" btn-position="center"></FormComponent>
</el-dialog>
<el-dialog v-if="showMap" :close-on-click-modal="false" destroy-on-close title="地图定位" :visible.sync="showMap"
width="980px" :before-close="handleClose" destroy-on-close>
<MapComponent @onLoad="getMap"></MapComponent>
<div class="full" style="margin-top: 20px; text-align: center;">
<el-button @click="handleClose">取消</el-button>
<el-button type="primary" @click="onDragEnd">确定</el-button>
</div>
</el-dialog>
<el-dialog v-if="showFile" :close-on-click-modal="false" title="查看图片" :visible.sync="showFile" destroy-on-close
width="680px">
<img :src="currentUrl" style="width: 100%;" alt="">
</el-dialog>
</div>