forked from xxhjsb/hbt-prevention-ui
130 lines
8.8 KiB
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> |