Merge remote-tracking branch 'origin/dev-shanao' into pet
commit
eaeb44860d
|
@ -29,7 +29,11 @@
|
|||
<el-col :span="4">
|
||||
<el-form-item label="是否标点" label-width="110px">
|
||||
<el-select v-model="IS_PUNCTUATION" clearable placeholder="请选择" style="width: 100%;">
|
||||
<el-option v-for="item in punctuationStatusList" :key="item.value" :label="item.label" :value="item.value" />
|
||||
<el-option
|
||||
v-for="item in punctuationStatusList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
@ -67,16 +71,22 @@
|
|||
<el-table-column prop="DEVICE_COUNT" label="点位下消防器材数"/>
|
||||
<el-table-column prop="DEPARTMENT_NAME" label="负责部门"/>
|
||||
<el-table-column prop="USERNAME" label="负责人"/>
|
||||
<el-table-column label="操作" width="380">
|
||||
<el-table-column prop="ISPUNCTUATION" label="是否标点">
|
||||
<template slot-scope="{row}">
|
||||
<el-button
|
||||
v-show="true"
|
||||
class="tiffany-btn"
|
||||
icon="el-icon-picture"
|
||||
type="primary"
|
||||
size="mini"
|
||||
@click="handleShowQr(row)">点位二维码
|
||||
</el-button>
|
||||
<el-tag v-if="row.ISPUNCTUATION == 0" type="success">是</el-tag>
|
||||
<el-tag v-else type="danger">否</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="450">
|
||||
<template slot-scope="{row}">
|
||||
<!-- <el-button-->
|
||||
<!-- v-show="true"-->
|
||||
<!-- class="tiffany-btn"-->
|
||||
<!-- icon="el-icon-picture"-->
|
||||
<!-- type="primary"-->
|
||||
<!-- size="mini"-->
|
||||
<!-- @click="handleShowQr(row)">点位二维码-->
|
||||
<!-- </el-button>-->
|
||||
<el-button
|
||||
v-show="edit"
|
||||
type="primary"
|
||||
|
@ -91,6 +101,22 @@
|
|||
size="mini"
|
||||
@click="handleDelete(row)">删除
|
||||
</el-button>
|
||||
<!-- 新增按钮:检查记录二维码 -->
|
||||
<!-- <el-button-->
|
||||
<!-- class="tiffany-btn"-->
|
||||
<!-- icon="el-icon-document"-->
|
||||
<!-- type="info"-->
|
||||
<!-- size="mini"-->
|
||||
<!-- @click="handleShowRecordQr(row)">检查记录二维码-->
|
||||
<!-- </el-button>-->
|
||||
<el-button
|
||||
class="tiffany-btn"
|
||||
icon="el-icon-document"
|
||||
type="info"
|
||||
size="mini"
|
||||
@click="handleShowNotificationCard(row)">
|
||||
告知卡
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -98,6 +124,7 @@
|
|||
<div>
|
||||
<el-button type="primary" icon="el-icon-plus" @click="handleAdd">新增</el-button>
|
||||
<el-button type="danger" icon="el-icon-delete" @click="handleDelete">批量删除</el-button>
|
||||
<el-button type="info" icon="el-icon-plus" @click="handleEditUser">批量修改负责人</el-button>
|
||||
</div>
|
||||
<pagination
|
||||
:total="total"
|
||||
|
@ -108,27 +135,91 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<el-dialog :visible.sync="dialogFormShow" title="查看二维码" width="680px" class="top-dialog">
|
||||
<div id="printTest" style="border: 1px solid #fff;">
|
||||
<div class="level-title" style="margin-top:20px">
|
||||
<h1>消防点位信息</h1>
|
||||
<!-- <el-dialog :visible.sync="dialogFormShow" title="查看二维码" width="680px" class="top-dialog">-->
|
||||
<!-- <div id="printTest" style="border: 1px solid #fff;">-->
|
||||
<!-- <div class="level-title" style="margin-top:20px">-->
|
||||
<!-- <h1>消防点位信息</h1>-->
|
||||
<!-- </div>-->
|
||||
<!-- <table class="table-ui">-->
|
||||
<!-- <tr>-->
|
||||
<!-- <td class="tbg">消防区域</td>-->
|
||||
<!-- <td >{{ qrInfo.FIRE_REGION_NAME }}</td>-->
|
||||
<!-- <td class="tbg">消防点位</td>-->
|
||||
<!-- <td>{{ qrInfo.FIRE_POINT_NAME }}</td>-->
|
||||
<!-- </tr>-->
|
||||
<!-- <tr>-->
|
||||
<!-- <td class="tbg">负责部门</td>-->
|
||||
<!-- <td>{{ qrInfo.DEPARTMENT_NAME }}</td>-->
|
||||
<!-- <td class="tbg">负责人</td>-->
|
||||
<!-- <td>{{ qrInfo.USERNAME }}</td>-->
|
||||
<!-- </tr>-->
|
||||
<!-- </table>-->
|
||||
<!-- <div class="table-qrcode">-->
|
||||
<!-- <vue-qr :text="qrcodeStr" :margin="0" :size="300" color-dark="#000" color-light="#fff" />-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div slot="footer" class="dialog-footer">-->
|
||||
<!-- <el-button @click="dialogFormShow = false">关 闭</el-button>-->
|
||||
<!-- <el-button v-print="'#printTest'" type="primary">打 印</el-button>-->
|
||||
<!-- </div>-->
|
||||
<!-- </el-dialog>-->
|
||||
|
||||
<el-dialog :visible.sync="dialogFormShow" title="消防点位维护信息告知牌" width="780px" class="top-dialog">
|
||||
<el-tabs v-model="tabsActive">
|
||||
<el-tab-pane label="横版" name="horizontal"/>
|
||||
<el-tab-pane label="竖版" name="vertical"/>
|
||||
</el-tabs>
|
||||
<div id="printTest">
|
||||
<div class="main_title">消防点位维护信息告知牌</div>
|
||||
<div v-if="tabsActive === 'horizontal'" class="horizontal">
|
||||
<div class="info">
|
||||
<div class="row">
|
||||
<div class="title">消防点位</div>
|
||||
<div class="value">{{ qrInfo.FIRE_POINT_NAME }}</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="title">点位编号</div>
|
||||
<div class="value">{{ qrInfo.FIRE_POINT_CODE }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="qr_info">
|
||||
<div class="row">
|
||||
<div class="title">检查码</div>
|
||||
<div class="qr">
|
||||
<vue-qr :text="qrcodeStr_jianchama" :margin="0" :size="280" color-dark="#000" color-light="#fff"/>
|
||||
</div>
|
||||
<div class="title">查询码</div>
|
||||
<div class="qr">
|
||||
<vue-qr :text="qrcodeStr_chaxunma" :margin="0" :size="280" color-dark="#000" color-light="#fff"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<table class="table-ui">
|
||||
<tr>
|
||||
<td class="tbg">消防区域</td>
|
||||
<td >{{ qrInfo.FIRE_REGION_NAME }}</td>
|
||||
<td class="tbg">消防点位</td>
|
||||
<td>{{ qrInfo.FIRE_POINT_NAME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">负责部门</td>
|
||||
<td>{{ qrInfo.DEPARTMENT_NAME }}</td>
|
||||
<td class="tbg">负责人</td>
|
||||
<td>{{ qrInfo.USERNAME }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="table-qrcode">
|
||||
<vue-qr :text="qrcodeStr" :margin="0" :size="300" color-dark="#000" color-light="#fff" />
|
||||
<div v-if="tabsActive === 'vertical'" class="vertical">
|
||||
<div class="info">
|
||||
<div class="row">
|
||||
<div class="title">消防点位</div>
|
||||
<div class="value">{{ qrInfo.FIRE_POINT_NAME }}</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="title">点位编号</div>
|
||||
<div class="value">{{ qrInfo.FIRE_POINT_CODE }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="qr_info">
|
||||
<div class="row">
|
||||
<div class="title">检查码</div>
|
||||
<div class="qr">
|
||||
<vue-qr :text="qrcodeStr_jianchama" :margin="0" :size="280" color-dark="#000" color-light="#fff"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="title">查询码</div>
|
||||
<div class="qr">
|
||||
<vue-qr :text="qrcodeStr_chaxunma" :margin="0" :size="280" color-dark="#000" color-light="#fff"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
|
@ -136,6 +227,45 @@
|
|||
<el-button v-print="'#printTest'" type="primary">打 印</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog :visible.sync="dialogRecordFormShow" title="查看检查记录二维码" width="680px" class="top-dialog">
|
||||
<div id="recordPrintTest" style="border: 1px solid #fff;">
|
||||
<div class="level-title" style="margin-top:20px">
|
||||
<h1>检查记录二维码</h1>
|
||||
</div>
|
||||
<div class="table-qrcode">
|
||||
<vue-qr :text="recordQrcodeStr" :margin="0" :size="300" color-dark="#000" color-light="#fff"/>
|
||||
</div>
|
||||
</div>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogRecordFormShow = false">关 闭</el-button>
|
||||
<el-button v-print="'#recordPrintTest'" type="primary">打 印</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog v-loading="listLoading" :visible.sync="dialogEditUser" title="批量修改负责人" width="800px">
|
||||
<el-form
|
||||
ref="firefightingBatchEditDept"
|
||||
:model="dialogEditUserForm"
|
||||
:rules="dialogEditUserRules"
|
||||
label-width="150px">
|
||||
<el-row>
|
||||
<el-form-item label="负责人员" prop="USER_ID">
|
||||
<el-select
|
||||
v-model="dialogEditUserForm.USER_ID"
|
||||
placeholder="请选择人员"
|
||||
class="filter-item"
|
||||
style="width: 80%;">
|
||||
<el-option v-for="item in userList" :key="item.USER_ID" :label="item.NAME" :value="item.USER_ID"/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogEditUser = false">取 消</el-button>
|
||||
<el-button type="primary" @click="dialogEditUserConfirm">确 定</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -148,9 +278,7 @@ import waves from '@/directive/waves' // waves directive
|
|||
import SelectTree from '@/components/SelectTree'
|
||||
|
||||
export default {
|
||||
|
||||
components: { Pagination, SelectTree, vueQr },
|
||||
|
||||
directives: { waves },
|
||||
data() {
|
||||
return {
|
||||
|
@ -158,7 +286,11 @@ export default {
|
|||
addBtnType: true,
|
||||
listLoading: true,
|
||||
dialogFormShow: false,
|
||||
qrcodeStr: '',
|
||||
dialogRecordFormShow: false,
|
||||
qrcodeStr_jianchama: '',
|
||||
qrcodeStr_chaxunma: '',
|
||||
tabsActive: 'horizontal',
|
||||
recordQrcodeStr: '',
|
||||
qrInfo: {},
|
||||
add: false,
|
||||
del: false,
|
||||
|
@ -184,7 +316,28 @@ export default {
|
|||
value: 'id',
|
||||
children: 'nodes',
|
||||
label: 'name'
|
||||
}
|
||||
},
|
||||
editDataIds: [],
|
||||
dialogEditUser: false,
|
||||
dialogEditUserForm: {
|
||||
USER_ID: ''
|
||||
},
|
||||
dialogEditUserRules: {
|
||||
USER_ID: [{ required: true, message: '请选择负责人', trigger: 'change' }]
|
||||
},
|
||||
deptTreeData: [],
|
||||
userList: [],
|
||||
punctuationStatusList: [
|
||||
{
|
||||
value: 0,
|
||||
label: '是'
|
||||
},
|
||||
{
|
||||
value: 1,
|
||||
label: '否'
|
||||
}
|
||||
],
|
||||
IS_PUNCTUATION: ''
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
|
@ -196,36 +349,44 @@ export default {
|
|||
created() {
|
||||
this.getList()
|
||||
this.hasButton()
|
||||
this.getTreeData()
|
||||
},
|
||||
methods: {
|
||||
handleShowQr(ROW) {
|
||||
handleShowNotificationCard(ROW) {
|
||||
this.dialogFormShow = true
|
||||
this.qrInfo = ROW
|
||||
this.qrcodeStr = this.config.weburlWaiwang + 'static/qrcode/views/bsbw/point_list.html?id=' + ROW.FIRE_POINT_ID
|
||||
// 检查码
|
||||
this.qrcodeStr_chaxunma = JSON.stringify({
|
||||
MANAGER_TYPE: 'checkRecordManager',
|
||||
USER_ID: ROW.USER_ID,
|
||||
DEPARTMENT_ID: ROW.DEPARTMENT_ID,
|
||||
FIRE_POINT_ID: ROW.FIRE_POINT_ID
|
||||
})
|
||||
// 查询码
|
||||
this.qrcodeStr_jianchama = JSON.stringify({
|
||||
MANAGER_TYPE: 'fireListManager',
|
||||
FIRE_POINT_ID: ROW.FIRE_POINT_ID
|
||||
})
|
||||
},
|
||||
handleEdit(FIRE_POINT_ID) {
|
||||
this.$parent.FIRE_POINT_ID = FIRE_POINT_ID
|
||||
this.$parent.activeName = 'Edit'
|
||||
},
|
||||
selectable(row, index) {
|
||||
return row.DEVICE_COUNT == 0
|
||||
return true
|
||||
},
|
||||
getRowKey(row) {
|
||||
return row.FIRE_POINT_ID
|
||||
},
|
||||
// 添加
|
||||
handleAdd() {
|
||||
this.$parent.activeName = 'Edit'
|
||||
this.$parent.FIRE_POINT_ID = ''
|
||||
this.$parent.FIRE_POINT_CODE = ''
|
||||
this.$parent.FIRE_POINT_NAME = ''
|
||||
},
|
||||
// 搜索
|
||||
getQuery() {
|
||||
// this.$refs.multipleTable.clearSelection()
|
||||
this.getList()
|
||||
},
|
||||
// 获取列表
|
||||
getList(pid) {
|
||||
this.listLoading = true
|
||||
this.varList = []
|
||||
|
@ -234,7 +395,9 @@ export default {
|
|||
'/firePoint/list?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page,
|
||||
{
|
||||
FIRE_POINT_NAME: this.FIRE_POINT_NAME,
|
||||
FIRE_POINT_CODE: this.FIRE_POINT_CODE
|
||||
FIRE_POINT_CODE: this.FIRE_POINT_CODE,
|
||||
DEPARTMENT_ID: this.selectForm.DEPARTMENT_ID,
|
||||
IS_PUNCTUATION: this.IS_PUNCTUATION
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
|
@ -244,9 +407,14 @@ export default {
|
|||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
}, goKeyReset() {
|
||||
},
|
||||
goKeyReset() {
|
||||
this.FIRE_POINT_NAME = ''
|
||||
this.FIRE_POINT_CODE = ''
|
||||
this.IS_PUNCTUATION = ''
|
||||
this.selectForm = {
|
||||
DEPARTMENT_ID: ''
|
||||
}
|
||||
this.getList()
|
||||
},
|
||||
getDict() {
|
||||
|
@ -286,6 +454,88 @@ export default {
|
|||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
getTreeData() {
|
||||
requestFN(
|
||||
'/department/listTreeV2',
|
||||
{}
|
||||
).then((data) => {
|
||||
this.deptTreeData = JSON.parse(data.zTreeNodes)
|
||||
}).catch((e) => {
|
||||
})
|
||||
},
|
||||
handleEditUser(row) {
|
||||
this.editDataIds = []
|
||||
if (row.FIRE_POINT_ID) {
|
||||
this.editDataIds.push(row.FIRE_POINT_ID)
|
||||
} else {
|
||||
const selection = this.$refs.multipleTable.selection
|
||||
if (!selection.length > 0) {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '请选择要修改的数据'
|
||||
})
|
||||
return
|
||||
}
|
||||
selection.forEach(item => {
|
||||
this.editDataIds.push(item.FIRE_POINT_ID)
|
||||
})
|
||||
}
|
||||
const selection = this.$refs.multipleTable.selection
|
||||
const DEPARTMENT_ID = selection[0].DEPARTMENT_ID
|
||||
if (selection.length > 1) {
|
||||
let flag = false
|
||||
selection.forEach(item => {
|
||||
if (DEPARTMENT_ID !== item.DEPARTMENT_ID) {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '只能选择同一部门下的数据'
|
||||
})
|
||||
flag = true
|
||||
}
|
||||
})
|
||||
if (flag) {
|
||||
return
|
||||
}
|
||||
}
|
||||
this.getUserList(DEPARTMENT_ID)
|
||||
this.dialogEditUserForm = {
|
||||
USER_ID: ''
|
||||
}
|
||||
this.dialogEditUser = true
|
||||
},
|
||||
getUserList(DEPARTMENT_ID) {
|
||||
requestFN(
|
||||
'/user/listAll',
|
||||
{
|
||||
DEPARTMENT_ID: DEPARTMENT_ID
|
||||
}
|
||||
).then((data) => {
|
||||
this.userList = data.userList
|
||||
}).catch((e) => {
|
||||
})
|
||||
},
|
||||
dialogEditUserConfirm() {
|
||||
this.$refs.firefightingBatchEditDept.validate((valid) => {
|
||||
if (valid) {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/firePoint/batchEditFirePointUser',
|
||||
{
|
||||
DATA_IDS: this.editDataIds.join(','),
|
||||
USER_ID: this.dialogEditUserForm.USER_ID
|
||||
}
|
||||
).then(() => {
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success'
|
||||
})
|
||||
this.dialogEditUser = false
|
||||
this.getList()
|
||||
}).catch(() => {
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleDelete(row) {
|
||||
const DATA_IDS = []
|
||||
if (row.FIRE_POINT_ID) {
|
||||
|
@ -299,6 +549,19 @@ export default {
|
|||
})
|
||||
return
|
||||
}
|
||||
var flag = true
|
||||
selection.forEach(item => {
|
||||
if (item.DEVICE_COUNT > 0) {
|
||||
flag = false
|
||||
}
|
||||
})
|
||||
if (!flag) {
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '选择的点位中有子数据,不能删除'
|
||||
})
|
||||
return
|
||||
}
|
||||
selection.forEach(item => {
|
||||
DATA_IDS.push(item.FIRE_POINT_ID)
|
||||
})
|
||||
|
@ -350,15 +613,17 @@ export default {
|
|||
}
|
||||
</script>
|
||||
|
||||
<style scoped >
|
||||
<style scoped>
|
||||
.returnBtn {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.app-container {
|
||||
display: flex; /**/
|
||||
display: flex;
|
||||
align-items: baseline;
|
||||
}
|
||||
.table-qrcode{
|
||||
|
||||
.table-qrcode {
|
||||
text-align: center;
|
||||
padding-top: 20px;
|
||||
width: 100%;
|
||||
|
@ -368,3 +633,139 @@ export default {
|
|||
width: 100%
|
||||
}
|
||||
</style>
|
||||
|
||||
<style scoped lang="scss">
|
||||
#printTest {
|
||||
border: 1px solid #ccc;
|
||||
padding: 20px;
|
||||
margin: 10px;
|
||||
|
||||
.main_title {
|
||||
font-weight: bold;
|
||||
font-size: 30px;
|
||||
text-align: center;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.horizontal {
|
||||
.info {
|
||||
color: #000;
|
||||
font-size: 16px;
|
||||
margin-top: 30px;
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.title {
|
||||
width: 120px;
|
||||
text-align: center;
|
||||
border: 1px solid #000;
|
||||
padding: 5px;
|
||||
letter-spacing: 6px;
|
||||
}
|
||||
|
||||
.value {
|
||||
border: 1px solid #000;
|
||||
border-left: none;
|
||||
flex: 1;
|
||||
padding: 5px 5px 5px 10px;
|
||||
}
|
||||
|
||||
& + .row {
|
||||
.title, .value {
|
||||
border-top: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.qr_info {
|
||||
color: #000;
|
||||
font-size: 16px;
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
|
||||
.title {
|
||||
width: 30px;
|
||||
line-height: 22px;
|
||||
writing-mode: vertical-rl;
|
||||
text-align: center;
|
||||
letter-spacing: 15px;
|
||||
border: 1px solid #000;
|
||||
border-top: none;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.qr {
|
||||
flex: 1;
|
||||
border: 1px solid #000;
|
||||
border-top: none;
|
||||
border-left: none;
|
||||
padding: 5px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
& + .title {
|
||||
border-left: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.vertical {
|
||||
.info, .qr_info {
|
||||
color: #000;
|
||||
font-size: 16px;
|
||||
margin-top: 30px;
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
|
||||
.title {
|
||||
width: 200px;
|
||||
text-align: center;
|
||||
padding: 5px;
|
||||
border: 1px solid #000;
|
||||
letter-spacing: 6px;
|
||||
}
|
||||
|
||||
.value, .qr {
|
||||
padding: 5px 5px 5px 10px;
|
||||
border: 1px solid #000;
|
||||
border-left: none;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
& + .row {
|
||||
.title, .value, .qr {
|
||||
border-top: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.qr_info {
|
||||
margin-top: 0;
|
||||
|
||||
.row {
|
||||
.title {
|
||||
letter-spacing: 12px;
|
||||
line-height: 280px;
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
.qr {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-top: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -77,6 +77,7 @@
|
|||
<th>检查情况</th>
|
||||
<th>点位检查照片</th>
|
||||
<!-- <th>点位合格照片</th>-->
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
<template v-if="varList.length !== 0">
|
||||
<tr v-for="(data,index) in varList" :key="index">
|
||||
|
@ -108,6 +109,10 @@
|
|||
<a style="text-decoration: underline" @click="qualified(data.EQUIPMENT_POINT_ID,14)">点位检查照片</a>
|
||||
</td>
|
||||
</template>
|
||||
<template>
|
||||
<td v-if="data.ISCHECKED !== 2" class="text-center" ><a style="text-decoration: underline" @click="hitBackFunction(data.EQUIPMENT_RECORD_ID)">打回</a></td>
|
||||
<td v-else class="text-center" >已打回</td>
|
||||
</template>
|
||||
<!-- <template>-->
|
||||
<!-- <td v-if="data.INDEX_F == '1'" :rowspan="data.ROWSPAN" class="text-center">-->
|
||||
<!-- <a style="text-decoration: underline" @click="qualified(data.QUALIFIED_PHOTOS_ID,115)">点位合格照片</a>-->
|
||||
|
@ -201,6 +206,18 @@
|
|||
<el-button @click="dialogImgVisible = false">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- 打回 -->
|
||||
<el-dialog :visible.sync="hitBack" title="打回" width="80%">
|
||||
<el-form>
|
||||
<el-form-item label="说明" >
|
||||
<el-input v-model="hitBackReason" autocomplete="off"/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="hitBack = false">取 消</el-button>
|
||||
<el-button type="primary" @click="hitBackOK">确 定</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<information ref="information"/>
|
||||
<div v-html="styleText" />
|
||||
</div>
|
||||
|
@ -228,6 +245,12 @@ export default {
|
|||
qualifiedImgs: [],
|
||||
qualifiedFiles: [],
|
||||
dialogImgVisible: false,
|
||||
// 打回判断
|
||||
hitBack: false,
|
||||
// 详情id
|
||||
EQUIPMENT_POINT_ID: '',
|
||||
// 打回说明
|
||||
hitBackReason: '',
|
||||
defaultProps: {
|
||||
value: 'id',
|
||||
children: 'nodes',
|
||||
|
@ -349,8 +372,39 @@ export default {
|
|||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
hitBackFunction(id) {
|
||||
console.log(id)
|
||||
this.EQUIPMENT_POINT_ID = id
|
||||
this.hitBack = true
|
||||
},
|
||||
hitBackOK() {
|
||||
this.$confirm('确定要打回吗?', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
requestFN(
|
||||
'/fireRecord/cancel',
|
||||
{
|
||||
id: this.EQUIPMENT_POINT_ID,
|
||||
reason: this.hitBackReason
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
// 隐患待添加
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
this.FIRE_CHECK_ID = this.$parent.FIRE_CHECK_ID
|
||||
this.FIRE_RECORD_ID = this.$parent.FIRE_RECORD_ID
|
||||
this.SHOW_OR_EDIT = this.$parent.SHOW_OR_EDIT
|
||||
this.recordBase = Object.assign({}, this.$parent.row)
|
||||
this.getData()
|
||||
this.getSignImgs(this.FIRE_RECORD_ID)
|
||||
})
|
||||
this.hitBack = false
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -81,13 +81,23 @@
|
|||
<el-input v-model="condform.rectificationorName" placeholder="请输入关键字"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-form-item label="整改部门" prop="reorganizeDept">
|
||||
<el-cascader
|
||||
ref="deptTree_Select10"
|
||||
:options="hiddenCreatorDeptList"
|
||||
:props="defaultProps1"
|
||||
v-model="condform.reorganizeDept"
|
||||
clearable/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col v-if="hiddenVueType !='ignore'" :span="4" >
|
||||
<el-form-item label="验收人">
|
||||
<el-input v-model="condform.checkrecordName" placeholder="请输入关键字"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="4">
|
||||
<el-form-item label="隐患部位">
|
||||
<SelectTree
|
||||
|
@ -291,7 +301,8 @@ export default {
|
|||
hiddenpart: '', // 隐患部位
|
||||
hiddenType: '', // 隐患类型
|
||||
creatorUserDept: '', // 隐患发现部门
|
||||
isrelevant: '' // 是否相关方
|
||||
isrelevant: '', // 是否相关方
|
||||
reorganizeDept: [] // 整改部门
|
||||
},
|
||||
/** 条件中的字段,没有放在form表单中,是因为怕动态加载中出现问题 **/
|
||||
sourceList: [
|
||||
|
@ -318,6 +329,7 @@ export default {
|
|||
{ ID: '16', NAME: '确认打回' },
|
||||
{ ID: '10', NAME: '验收打回' }
|
||||
],
|
||||
defaultProps1: { value: 'id', children: 'nodes', label: 'name', multiple: true, emitPath: false, checkStrictly: true },
|
||||
defaultProps: { value: 'id', children: 'nodes', label: 'name', multiple: true, emitPath: false },
|
||||
pickerOptions0: { disabledDate(time) { return time.getTime() < Date.now() - 8.64e6 } },
|
||||
hiddenlevelList: [], // 隐患级别
|
||||
|
@ -405,11 +417,17 @@ export default {
|
|||
// 获取列表
|
||||
getList() {
|
||||
this.listLoading = true
|
||||
const reorganizeDept = this.condform.reorganizeDept
|
||||
let deptIds = ''
|
||||
if (reorganizeDept != null && reorganizeDept.length > 0) {
|
||||
reorganizeDept.forEach(item => { deptIds = deptIds + ',' + item })
|
||||
}
|
||||
requestFN(
|
||||
'/hiddenApi/getList?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page,
|
||||
{
|
||||
...this.condform,
|
||||
hiddenVueType: this.hiddenVueType,
|
||||
reorganizeDept: deptIds,
|
||||
STARTTIME: this.condform.creatTime[0],
|
||||
ENDTIME: this.condform.creatTime[1]
|
||||
}
|
||||
|
|
|
@ -0,0 +1,148 @@
|
|||
<template>
|
||||
<div>
|
||||
<div id="printTest" class="app-container print-work">
|
||||
<div class="level-title">
|
||||
<h1>动火安全作业票(证)</h1>
|
||||
</div>
|
||||
<table class="table-ui"/>
|
||||
<el-table ref="multipleTable" :data="varList" :header-cell-style="{'font-weight': 'bold','color': '#000'}" tooltip-effect="dark" border fit highlight-current-row>
|
||||
<el-table-column :reserve-selection="true" type="selection" width="55" align="center" />
|
||||
<el-table-column type="index" label="序号" width="50" align="center" />
|
||||
<el-table-column prop="userName" label="监火人" />
|
||||
<el-table-column prop="TIME" label="时间" />
|
||||
<el-table-column prop="WORK_LEVEL" label="照片" >
|
||||
<template slot-scope="{row}">
|
||||
<viewer>
|
||||
<img :src="config.fileUrl + row.FILEPATH" width="100" height="100">
|
||||
</viewer>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
</div>
|
||||
<div class="ui-height" />
|
||||
<div class="ui-foot">
|
||||
<el-button type="primary" @click="goBack">返 回</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { requestFN } from '@/utils/request'
|
||||
import dateformat from '@/utils/dateformat'
|
||||
import SelectTree from '@/components/SelectTree'
|
||||
export default {
|
||||
components: { SelectTree },
|
||||
data() {
|
||||
return {
|
||||
config: config,
|
||||
HOTWORKAPPLICATION_ID: this.$parent.HOTWORKAPPLICATION_ID, // 主键ID
|
||||
HOTWORKAPPLICATION_TYPE: this.$parent.HOTWORKAPPLICATION_TYPE,
|
||||
pd: [], // 存放字段参数
|
||||
measuresList: [],
|
||||
form: {},
|
||||
rules: {},
|
||||
myUserInfo: {},
|
||||
varList: [],
|
||||
defaultProps: {
|
||||
value: 'id',
|
||||
children: 'nodes',
|
||||
label: 'name',
|
||||
checkStrictly: true
|
||||
},
|
||||
rectificationDeptList: [],
|
||||
rectificationUserList: [],
|
||||
hImgs: [],
|
||||
hotUserList: [],
|
||||
dialogFormDelayed: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getListAllMeasures()
|
||||
this.getDelayed()
|
||||
},
|
||||
methods: {
|
||||
formatTime(date, column) {
|
||||
if (date) {
|
||||
return dateformat(date, 'YYYY年MM月DD日HH时mm分')
|
||||
} else {
|
||||
return ''
|
||||
}
|
||||
},
|
||||
formatDate(date, column) {
|
||||
if (date) {
|
||||
return dateformat(date, 'YYYY-MM-DD')
|
||||
} else {
|
||||
return ''
|
||||
}
|
||||
},
|
||||
getRowKey(row) {
|
||||
return row.HOTWORKAPPLICATION_ID
|
||||
},
|
||||
getData() {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/hotworkapplication/goEdit',
|
||||
{
|
||||
HOTWORKAPPLICATION_ID: this.HOTWORKAPPLICATION_ID
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
this.pd = data.pd // 参数map
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
getDelayed() {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/hotworkapplicationdelayed/list',
|
||||
{
|
||||
HOTWORKAPPLICATION_ID: this.HOTWORKAPPLICATION_ID
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
this.varList = data.varList // 参数map
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
getListAllMeasures() {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/app/hotworkapplication/listAllMeasures',
|
||||
{
|
||||
HOTWORKAPPLICATION_ID: this.HOTWORKAPPLICATION_ID
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
this.measuresList = data.varList // 参数map
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
goDetail() {
|
||||
this.dialogFormDelayed = true
|
||||
},
|
||||
goBack() {
|
||||
this.$parent.activeName = 'List'
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="sass" scoped>
|
||||
.print-approval-p10
|
||||
padding: 20px 0
|
||||
span
|
||||
vertical-align: middle
|
||||
|
||||
.print-approval-img
|
||||
width: 200px
|
||||
height: 97px
|
||||
display: inline-block
|
||||
img
|
||||
width: 100%
|
||||
height: 100%
|
||||
</style>
|
|
@ -0,0 +1,570 @@
|
|||
<template>
|
||||
<div>
|
||||
<div id="printContent" class="app-container print-work">
|
||||
<div>
|
||||
<table class="table-ui">
|
||||
<thead>
|
||||
<tr>
|
||||
<td colspan="6" style="border: none">
|
||||
<div class="no-print">
|
||||
<div class="level-title">
|
||||
<h1>动火申请审批许可证</h1>
|
||||
</div>
|
||||
</div>
|
||||
<h3 class="no-show" style="text-align: center">动火申请审批许可证</h3>
|
||||
</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="tbg" rowspan="2">动火申请人</td>
|
||||
<td rowspan="2">{{ pd.APPLY_USER_NAME }}</td>
|
||||
<td class="tbg" rowspan="2">动火申请单位/部门</td>
|
||||
<td rowspan="2">{{ pd.APPLY_DEPARTMENT_NAME }}</td>
|
||||
<td class="tbg" colspan="2" style="text-align: center;">动火许可证编号</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" style="text-align: center;">{{ pd.JOB_NUMBER }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">动火部位</td>
|
||||
<td>{{ pd.HOT_WORK_POSITION }}</td>
|
||||
<td class="tbg">动火方法</td>
|
||||
<td>{{ pd.HOT_WORK_METHOD_NAME }}</td>
|
||||
<td class="tbg">动火等级</td>
|
||||
<td>
|
||||
<template v-if="pd.HOT_WORK_LEVEL_INDEX == '0'">特级</template>
|
||||
<template v-else-if="pd.HOT_WORK_LEVEL_INDEX == '1'">一级</template>
|
||||
<template v-else-if="pd.HOT_WORK_LEVEL_INDEX == '2'">二级</template>
|
||||
<template v-else-if="pd.HOT_WORK_LEVEL_INDEX == '3'">三级</template>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">作业内容</td>
|
||||
<td colspan="5">{{ pd.JOB_CONTENT }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg" rowspan="2">现场负责人</td>
|
||||
<td>姓名:{{ pd.SITE_LEADER_NAME }}</td>
|
||||
<td class="tbg" rowspan="2">动火操作人</td>
|
||||
<td rowspan="2">{{ pd.HOT_WORK_OPERATOR_NAME }}</td>
|
||||
<td class="tbg" rowspan="2">动火监火人</td>
|
||||
<td rowspan="2">{{ pd.SUPERVISOR_OF_HOT_WORK_UNIT }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>电话:{{ pd.SITE_LEADER_PHONE }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">动火时间</td>
|
||||
<td colspan="5">{{ pd.HOT_WORK_TIME_START }} 至 {{ pd.HOT_WORK_TIME_END }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">
|
||||
动火要求<br>
|
||||
安全措施<br>
|
||||
安全提示
|
||||
</td>
|
||||
<td colspan="5">
|
||||
<table class="table-vi">
|
||||
<tr v-for="item in measuresList" :key="item.BUS_HOTWORK_MEASURES_ID">
|
||||
<td>
|
||||
{{ item.PROTECTIVE_MEASURES }}
|
||||
<template v-if="item.ANSWER1">及({{ item.ANSWER1 }}){{ item.QUESTION1 }}</template>
|
||||
<template v-if="item.QUESTION2">
|
||||
、{{ item.QUESTION2 }}({{ item.ANSWER2 }}) 、{{ item.QUESTION3 }}({{ item.ANSWER3 }}) 、{{ item.QUESTION4 }}({{ item.ANSWER4 }})
|
||||
</template>
|
||||
</td>
|
||||
</tr>
|
||||
<tr v-for="item in safetymethodrecordList" :key="item.HOTWORKSAFETYMETHODRECORD_ID">
|
||||
<td>{{ item.CONTENT }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">动火单位(部门)负责人意见</td>
|
||||
<td colspan="2">
|
||||
<img v-viewer v-if="pd.HOT_WORK_USER_PRINCIPAL" :src="config.fileUrl+pd.HOT_WORK_USER_PRINCIPAL" width="50px" height="50px">
|
||||
</td>
|
||||
<td class="tbg">项目发包单位(部门)人员意见</td>
|
||||
<td colspan="2">
|
||||
<img v-viewer v-if="pd.PROJECT_UNIT_LEADER_PRINCIPAL" :src="config.fileUrl+pd.PROJECT_UNIT_LEADER_PRINCIPAL" width="50px" height="50px">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">现场管辖单位(部门)负责人意见</td>
|
||||
<td colspan="2">
|
||||
<img v-viewer v-if="pd.UNIT_LEADER_PRINCIPAL" :src="config.fileUrl+pd.UNIT_LEADER_PRINCIPAL" width="50px" height="50px">
|
||||
</td>
|
||||
<td class="tbg">动火许可证签发单位意见</td>
|
||||
<td colspan="2">
|
||||
<img v-viewer v-if="pd.ISSUING_PRINCIPAL" :src="config.fileUrl+pd.ISSUING_PRINCIPAL" width="50px" height="50px">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg" rowspan="2">动火前管辖单位现场人员许可</td>
|
||||
<td colspan="2">
|
||||
姓名:
|
||||
<img v-viewer v-if="pd.HOT_WORK_PERSON_PRINCIPAL" :src="config.fileUrl+pd.HOT_WORK_PERSON_PRINCIPAL" width="50px" height="50px">
|
||||
</td>
|
||||
<td class="tbg" rowspan="2">动火后管辖单位现场人员验收</td>
|
||||
<td colspan="2">
|
||||
姓名:
|
||||
<img v-viewer v-if="pd.HOT_WORK_AFTER_PRINCIPAL" :src="config.fileUrl+pd.HOT_WORK_AFTER_PRINCIPAL" width="50px" height="50px">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">时间:{{ pd.HOT_WORK_PERSON_PRINCIPAL == ''?'':pd.HOT_WORK_PERSON_PRINCIPAL_TIME }}</td>
|
||||
<td colspan="2">时间:{{ pd.HOT_WORK_AFTER_PRINCIPAL == ''?'':pd.HOT_WORK_AFTER_PRINCIPAL_TIME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">延时监火记录</td>
|
||||
<td colspan="5">
|
||||
<table class="table-vi">
|
||||
<tr>
|
||||
<td>监火人</td>
|
||||
<td>时间</td>
|
||||
<td>照片</td>
|
||||
</tr>
|
||||
<tr v-for="item in delayedList" :key="item.HOTWORKAPPLICATIONDELAYED_ID">
|
||||
<td>{{ item.userName }}</td>
|
||||
<td>{{ item.TIME }}</td>
|
||||
<td>
|
||||
<viewer>
|
||||
<img v-viewer v-if="item.FILEPATH" :src="config.fileUrl+item.FILEPATH" width="50px" height="50px">
|
||||
</viewer>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!--<div v-if="pd.HOT_WORK_LEVEL_INDEX =='0'">
|
||||
<table class="table-ui">
|
||||
<thead>
|
||||
<tr>
|
||||
<td colspan="6" style="border: none">
|
||||
<div class="no-print">
|
||||
<div class="level-title">
|
||||
<h1>动火申请审批许可证</h1>
|
||||
</div>
|
||||
</div>
|
||||
<h3 class="no-show" style="text-align: center">动火申请审批许可证</h3>
|
||||
</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td colspan="4" style="padding: 0;">
|
||||
<table class="table-vi">
|
||||
<tr>
|
||||
<td class="bbg">申请单位</td>
|
||||
<td>{{ pd.APPLY_DEPARTMENT_NAME }}</td>
|
||||
<td class="bbg">申请人</td>
|
||||
<td>{{ pd.APPLY_USER_NAME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="bbg">作业证编号</td>
|
||||
<td>{{ pd.JOB_NUMBER }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="bbg">申请日期</td>
|
||||
<td>{{ formatTime(pd.APPLICATION_DATE) }}</td>
|
||||
<td class="bbg">作业类型</td>
|
||||
<td>{{ pd.JOB_TYPE_NAME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="bbg">动火部位</td>
|
||||
<td>{{ pd.HOT_WORK_POSITION }}</td>
|
||||
<td class="bbg">动火方法</td>
|
||||
<td>{{ pd.HOT_WORK_METHOD_NAME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="bbg">动火作业级别</td>
|
||||
<td>{{ pd.HOT_WORK_LEVEL_NAME }}</td>
|
||||
<td class="bbg">动火时间:</td>
|
||||
<td>{{ pd.HOT_WORK_TIME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="bbg">作业内容</td>
|
||||
<td>{{ pd.JOB_CONTENT }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="bbg">动火操作人:</td>
|
||||
<td>{{ pd.HOT_WORK_OPERATOR_NAME }}</td>
|
||||
</tr>
|
||||
<tr v-if="pd.IS_GAS_TESTING =='1'">
|
||||
<td class="bbg">气体检测人:</td>
|
||||
<td>{{ pd.GAS_TESTING_USER_NAME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="bbg">延时监火:</td>
|
||||
<td>{{ pd.HOT_WORK_OPERATOR_NAME }}</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4" style="padding: 0;">
|
||||
<table class="table-vi">
|
||||
<tr>
|
||||
<th>主要安全措施</th>
|
||||
<!– <th class="tcenter select">选项√</th>–>
|
||||
</tr>
|
||||
<tr v-for="item in measuresList" :key="item.BUS_HOTWORK_MEASURES_ID">
|
||||
<td>
|
||||
{{ item.PROTECTIVE_MEASURES }}
|
||||
<template v-if="item.QUESTION1">
|
||||
{{ item.QUESTION1 }}({{ item.ANSWER1 }})
|
||||
</template>
|
||||
<template v-if="item.QUESTION2">
|
||||
、{{ item.QUESTION2 }}({{ item.ANSWER2 }}) 、{{ item.QUESTION3 }}({{ item.ANSWER3 }}) 、{{ item.QUESTION4 }}({{ item.ANSWER4 }})
|
||||
</template>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<template v-if="HOTWORKAPPLICATION_TYPE=='see'">
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div><span>动火单位负责人:{{ pd.HOT_WORK_USER_NAME }}</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.HOT_WORK_USER_PRINCIPAL" :src="config.fileUrl+pd.HOT_WORK_USER_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.HOT_WORK_USER_PRINCIPAL_TIME">{{ formatTime(pd.HOT_WORK_USER_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr v-if="pd.JOB_TYPE_INDEX == '1'">
|
||||
<td colspan="4">
|
||||
<div><span>项目发包单位负责人:</span>
|
||||
<span>
|
||||
{{ pd.PROJECT_UNIT_LEADER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.PROJECT_UNIT_LEADER_PRINCIPAL" :src="config.fileUrl+pd.PROJECT_UNIT_LEADER_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.PROJECT_UNIT_LEADER_PRINCIPAL_TIME">{{ formatTime(pd.PROJECT_UNIT_LEADER_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div><span>现场管辖单位负责人:</span>
|
||||
<span>
|
||||
{{ pd.UNIT_LEADER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.UNIT_LEADER_PRINCIPAL" :src="config.fileUrl+pd.UNIT_LEADER_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.UNIT_LEADER_PRINCIPAL_TIME">{{ formatTime(pd.UNIT_LEADER_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div><span>动火许可签发单位负责人:</span>
|
||||
<span>
|
||||
{{ pd.ISSUING_USER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.ISSUING_PRINCIPAL" :src="config.fileUrl+pd.ISSUING_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.ISSUING_PRINCIPAL_TIME">{{ formatTime(pd.ISSUING_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td v-if="pd.IS_SAFETY_DIRECTOR =='1'" colspan="4">
|
||||
<div><span>安全总监负责人:</span>
|
||||
<span>
|
||||
{{ pd.SAFETY_DIRECTOR_USER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.SAFETY_DIRECTOR_PRINCIPAL" :src="config.fileUrl+pd.SAFETY_DIRECTOR_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.SAFETY_DIRECTOR_PRINCIPAL_TIME">{{ formatTime(pd.SAFETY_DIRECTOR_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div><span>现场负责人接收负责人:</span>
|
||||
<span>
|
||||
{{ pd.SITE_LEADER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.SITE_DIRECTOR_PRINCIPAL" :src="config.fileUrl+pd.SITE_DIRECTOR_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.SITE_DIRECTOR_PRINCIPAL_TIME">{{ formatTime(pd.SITE_DIRECTOR_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div><span>动火前现场管辖单位确认:</span>
|
||||
<span>
|
||||
{{ pd.HOT_WORK_PERSON_USER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.HOT_WORK_PERSON_PRINCIPAL" :src="config.fileUrl+pd.HOT_WORK_PERSON_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.HOT_WORK_PERSON_PRINCIPAL_TIME">{{ formatTime(pd.HOT_WORK_PERSON_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div><span>现场负责人确认:</span>
|
||||
<span>
|
||||
{{ pd.PERSON_CONFIRM_USER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.PERSON_CONFIRM_PRINCIPAL" :src="config.fileUrl+pd.PERSON_CONFIRM_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.PERSON_CONFIRM_PRINCIPAL_TIME">{{ formatTime(pd.PERSON_CONFIRM_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div><span>动火后现场管辖人:</span>
|
||||
<span>
|
||||
{{ pd.HOT_WORK_AFTER_USER_NAME }}
|
||||
</span>
|
||||
</div>
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.HOT_WORK_AFTER_PRINCIPAL" :src="config.fileUrl+pd.HOT_WORK_AFTER_PRINCIPAL">
|
||||
</span>
|
||||
<span v-if="pd.HOT_WORK_AFTER_PRINCIPAL_TIME">{{ formatTime(pd.HOT_WORK_AFTER_PRINCIPAL_TIME) }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tbg">延时监火</td>
|
||||
<td class="img-select">
|
||||
<!– <viewer :images="hImgs">–>
|
||||
<!– <img v-for="item in hImgs" :src="config.fileUrl + item.FILEPATH" :key="item.HOTWORKAPPLICATIONDELAYED_ID" width="100" height="100">–>
|
||||
<!– </viewer>–>
|
||||
<el-button type="primary" icon="el-icon-document" size="mini" @click="goDetail(pd.HOTWORKAPPLICATION_ID)">记录</el-button>
|
||||
</td>
|
||||
</tr>
|
||||
</template>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<div class="level-title">
|
||||
<h1>分公司动火审批</h1>
|
||||
</div>
|
||||
<div class="mb-20">
|
||||
<table class="table-ui">
|
||||
<tr>
|
||||
<td class="abg">动火负责确认人部门</td>
|
||||
<td >{{ pd.projectCompetent_DEPT_NAME }}</td>
|
||||
<td class="abg">动火负责确认人</td>
|
||||
<td >{{ pd.projectCompetent_USER_NAME }}</td>
|
||||
<td class="abg">审批结果</td>
|
||||
<td >{{ pd.projectCompetent_TYPE=='2'?'通过':'未通过' }}</td>
|
||||
<td class="abg">审批时间</td>
|
||||
<td colspan="2">{{ pd.projectCompetent_OPERATTIME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="abg">项目主管初审人员部门</td>
|
||||
<td v-if="pd.projectCompetent_DEPT_NAME">{{ pd.projectCompetent_DEPT_NAME }}</td>
|
||||
<td class="abg">项目主管初审人员</td>
|
||||
<td >{{ pd.projectSupervisor_USER_NAME }}</td>
|
||||
<td class="abg">审批结果</td>
|
||||
<td >{{ pd.projectSupervisor_TYPE=='2'?'通过':'未通过' }}</td>
|
||||
<td class="abg">审批时间</td>
|
||||
<td colspan="2">{{ pd.projectCompetent_OPERATTIME }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="abg">项目主管负责人部门</td>
|
||||
<td >{{ pd.projectPreliminarily_DEPT_NAME }}</td>
|
||||
<td class="abg">项目主管负责人</td>
|
||||
<td >{{ pd.projectPreliminarily_USER_NAME }}</td>
|
||||
<td class="abg">审批结果</td>
|
||||
<td >{{ pd.projectPreliminarily_TYPE=='2'?'通过':'未通过' }}</td>
|
||||
<td class="abg">审批时间</td>
|
||||
<td >{{ pd.projectPreliminarily_OPERATTIME }}</td>
|
||||
<td v-if="pd.projectPreliminarily_PRINCIPAL">
|
||||
<span class="print-approval-img">
|
||||
<img v-if="pd.projectPreliminarily_PRINCIPAL" :src="config.fileUrl+pd.projectPreliminarily_PRINCIPAL">
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="abg">分公司安全总监部门</td>
|
||||
<td >{{ pd.inspectorGeneral_DEPT_NAME }}</td>
|
||||
<td class="abg">分公司安全总监人员</td>
|
||||
<td >{{ pd.inspectorGeneral_USER_NAME }}</td>
|
||||
<td class="abg">审批结果</td>
|
||||
<td >{{ pd.inspectorGeneral_TYPE=='2'?'通过':'未通过' }}</td>
|
||||
<td class="abg">审批时间</td>
|
||||
<td >{{ pd.inspectorGeneral_OPERATTIME }}</td>
|
||||
<td v-if="pd.inspectorGeneral_PRINCIPAL">
|
||||
<span class="print-approval-img">
|
||||
<img :src="config.fileUrl+pd.inspectorGeneral_PRINCIPAL">
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="abg">分公司主要负责人</td>
|
||||
<td >{{ pd.OFFICE_RESPOMSIBLE_DEPT_NAME }}</td>
|
||||
<td class="abg">分公司主要负责人</td>
|
||||
<td >{{ pd.OFFICE_RESPOMSIBLE_USER_NAME }}</td>
|
||||
<td class="abg">审批结果</td>
|
||||
<td >{{ pd.OFFICE_RESPOMSIBLE_TYPE=='2'?'通过':'未通过' }}</td>
|
||||
<td class="abg">审批时间</td>
|
||||
<td >{{ pd.OFFICE_RESPOMSIBLE_OPERATTIME }}</td>
|
||||
<td v-if="pd.OFFICE_RESPOMSIBLE_PRINCIPAL">
|
||||
<span class="print-approval-img">
|
||||
<img :src="config.fileUrl+pd.OFFICE_RESPOMSIBLE_PRINCIPAL">
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>-->
|
||||
</div>
|
||||
<div class="ui-height" />
|
||||
<div class="ui-foot">
|
||||
<el-button @click="goBack">返 回</el-button>
|
||||
<el-button v-print="'#printContent'" type="primary">打印</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { requestFN } from '@/utils/request'
|
||||
import dateformat from '@/utils/dateformat'
|
||||
import SelectTree from '@/components/SelectTree'
|
||||
export default {
|
||||
components: { SelectTree },
|
||||
data() {
|
||||
return {
|
||||
config: config,
|
||||
HOTWORKAPPLICATION_ID: this.$parent.HOTWORKAPPLICATION_ID, // 主键ID
|
||||
HOTWORKAPPLICATION_TYPE: this.$parent.HOTWORKAPPLICATION_TYPE,
|
||||
pd: [], // 存放字段参数
|
||||
measuresList: [],
|
||||
form: {},
|
||||
rules: {},
|
||||
myUserInfo: {},
|
||||
defaultProps: {
|
||||
value: 'id',
|
||||
children: 'nodes',
|
||||
label: 'name',
|
||||
checkStrictly: true
|
||||
},
|
||||
rectificationDeptList: [],
|
||||
rectificationUserList: [],
|
||||
hImgs: [],
|
||||
hotUserList: [],
|
||||
safetymethodrecordList: [],
|
||||
delayedList: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getData()
|
||||
this.getListAllMeasures()
|
||||
this.getDelayed()
|
||||
},
|
||||
methods: {
|
||||
formatTime(date, column) {
|
||||
if (date) {
|
||||
return dateformat(date, 'YYYY年MM月DD日HH时mm分')
|
||||
} else {
|
||||
return ''
|
||||
}
|
||||
},
|
||||
formatDate(date, column) {
|
||||
if (date) {
|
||||
return dateformat(date, 'YYYY-MM-DD')
|
||||
} else {
|
||||
return ''
|
||||
}
|
||||
},
|
||||
getRowKey(row) {
|
||||
return row.HOTWORKAPPLICATION_ID
|
||||
},
|
||||
getData() {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/hotworkapplication/goEdit',
|
||||
{
|
||||
HOTWORKAPPLICATION_ID: this.HOTWORKAPPLICATION_ID
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
if (data.pd && data.pd.HOT_WORK_OPERATOR_NAME && data.pd.HOT_WORK_OPERATOR_NAME.length > 0) {
|
||||
data.pd.HOT_WORK_OPERATOR_NAME = data.pd.HOT_WORK_OPERATOR_NAME.substring(0, data.pd.HOT_WORK_OPERATOR_NAME.length - 1)
|
||||
}
|
||||
this.pd = data.pd // 参数map
|
||||
this.safetymethodrecordList = data.safetymethodrecordList
|
||||
this.delayedList = data.delayedList
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
getDelayed() {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/hotworkapplicationdelayed/list',
|
||||
{
|
||||
HOTWORKAPPLICATION_ID: this.HOTWORKAPPLICATION_ID
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
this.hImgs = data.varList // 参数map
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
getListAllMeasures() {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/app/hotworkapplication/listAllMeasures',
|
||||
{
|
||||
HOTWORKAPPLICATION_ID: this.HOTWORKAPPLICATION_ID
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
this.measuresList = data.varList // 参数map
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
goDetail(id) {
|
||||
console.log(id)
|
||||
this.$parent.HOTWORKAPPLICATION_ID = id
|
||||
this.$parent.activeName = 'Delayed'
|
||||
},
|
||||
goBack() {
|
||||
this.$parent.activeName = 'List'
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="sass" scoped>
|
||||
.print-approval-p10
|
||||
padding: 20px 0
|
||||
span
|
||||
vertical-align: middle
|
||||
|
||||
.print-approval-img
|
||||
width: 200px
|
||||
height: 97px
|
||||
display: inline-block
|
||||
img
|
||||
width: 100%
|
||||
height: 100%
|
||||
</style>
|
|
@ -0,0 +1,279 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="searchForm" :model="searchForm" label-width="80px">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="作业编号" prop="keySource">
|
||||
<el-input v-model="searchForm.keyJobNumber" placeholder="请输入作业编号" class="filter-item" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="特级动火审批状态" prop="keyHiddenDescr" label-width="130px">
|
||||
<el-select v-model="searchForm.keyState" placeholder="请选择">
|
||||
<el-option v-for="item in statusSuperList" :key="item.id" :label="item.name" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="动火等级" prop="HOT_WORK_LEVEL_INDEX" >
|
||||
<el-select v-model="searchForm.HOT_WORK_LEVEL_INDEX" placeholder="请选择" style="width: 80%">
|
||||
<el-option v-for="item in hotworklevelList" :key="item.id" :label="item.name" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="动火内容" prop="keySource">
|
||||
<el-input v-model="searchForm.JOB_CONTENT" placeholder="请输入动火内容" class="filter-item" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="动火部位" prop="keySource">
|
||||
<el-input v-model="searchForm.HOT_WORK_POSITION" placeholder="请输入动火部位" class="filter-item" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="动火区域管辖单位" prop="keySource" label-width="130px">
|
||||
<SelectTree
|
||||
ref="deptTree_Inspected"
|
||||
:clearable="false"
|
||||
:options="treeData"
|
||||
:props="defaultProps"
|
||||
v-model="searchForm.UNIT_LEADER_DEPARTMENT_ID"
|
||||
placeholder="请选择动火区域管辖单位"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getList">
|
||||
搜索
|
||||
</el-button>
|
||||
<el-button v-waves class="filter-item" type="success" icon="el-icon-refresh" @click="chongzhi">
|
||||
重置
|
||||
</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-table v-loading="listLoading" ref="multipleTable" :data="varList" :row-key="getRowKey" :header-cell-style="{'font-weight': 'bold','color': '#000'}" tooltip-effect="dark" border fit highlight-current-row>
|
||||
<el-table-column :reserve-selection="true" type="selection" width="55" align="center" />
|
||||
<el-table-column type="index" label="序号" width="50" align="center" />
|
||||
<el-table-column prop="JOB_NUMBER" label="作业编号" />
|
||||
<el-table-column prop="JOB_TYPE_INDEX" label="作业类型" >
|
||||
<template slot-scope="{row}">
|
||||
{{ translate(row.JOB_TYPE_INDEX, jobTypeList) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="HOT_WORK_LEVEL_NAME" label="动火等级" />
|
||||
<el-table-column prop="JOB_CONTENT" label="动火内容" />
|
||||
<el-table-column prop="HOT_WORK_POSITION" label="动火部位" />
|
||||
<el-table-column prop="UNIT_LEADER_DEPARTMENT_NAME" label="动火区域管辖单位" />
|
||||
<el-table-column prop="WORK_LEVEL" label="申请单位" >
|
||||
<template slot-scope="{row}">
|
||||
{{ getUserName('deptName', row.HOT_WORK_APPLICATION_List) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="APPLY_USER_NAME" label="申请人" />
|
||||
<el-table-column prop="APPLY_USER_NAME" label="申请时间" >
|
||||
<template slot-scope="{row}">
|
||||
{{ getUserName('OPERATTIME', row.HOT_WORK_APPLICATION_List) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="STATE" label="审核状态" >
|
||||
<template slot-scope="{row}">
|
||||
{{ translate(row.STATE.toString(), statusList) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" width="120">
|
||||
<template slot-scope="{row}">
|
||||
<el-button icon="el-icon-view" size="mini" @click="goDetail(row.HOTWORKAPPLICATION_ID,'see')">查看</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="page-btn-group">
|
||||
<pagination :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit" @pagination="getList" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import Pagination from '@/components/Pagination' // 通过 el-pagination二次打包
|
||||
import { requestFN } from '@/utils/request'
|
||||
import waves from '@/directive/waves' // waves directive
|
||||
import SelectTree from '@/components/SelectTree'
|
||||
|
||||
export default {
|
||||
components: { Pagination, SelectTree },
|
||||
directives: { waves },
|
||||
data() {
|
||||
return {
|
||||
listLoading: true,
|
||||
add: false,
|
||||
del: false,
|
||||
edit: false,
|
||||
listQuery: {
|
||||
page: 1,
|
||||
limit: 20
|
||||
},
|
||||
total: 0,
|
||||
KEYWORDS: '',
|
||||
varList: [],
|
||||
pd: [],
|
||||
|
||||
multipleSelectionAll: [], // 所有选中的数据包含跨页数据
|
||||
multipleSelection: [], // 当前页选中的数据
|
||||
treeData: [], // 动火前管辖单位
|
||||
dialogFormShow: false,
|
||||
dialogFormEdit: false,
|
||||
dialogType: 'add',
|
||||
replyListQuery: {
|
||||
page: 1,
|
||||
limit: 20
|
||||
},
|
||||
jobTypeList: [
|
||||
{ id: '0', name: '内部作业' },
|
||||
{ id: '1', name: '相关方作业' }
|
||||
],
|
||||
statusList: [
|
||||
{ id: '0', name: '请选择' },
|
||||
{ id: '11', name: '已归档' },
|
||||
{ id: '-3', name: '关闭归档' }
|
||||
],
|
||||
statusSuperList: [
|
||||
{ id: '0', name: '请选择' },
|
||||
{ id: '1', name: '待提交' },
|
||||
{ id: '2', name: '待审批' },
|
||||
{ id: '3', name: '审批通过' },
|
||||
{ id: '4', name: '已打回' }
|
||||
],
|
||||
hotworklevelList: [
|
||||
{ id: '0', name: '特级' },
|
||||
{ id: '1', name: '一级' },
|
||||
{ id: '2', name: '二级' },
|
||||
{ id: '3', name: '三级' }
|
||||
],
|
||||
defaultProps: {
|
||||
value: 'id',
|
||||
children: 'nodes',
|
||||
label: 'name'
|
||||
},
|
||||
STATUS: '0',
|
||||
DEPTIDS: '',
|
||||
searchForm: {
|
||||
keyJobNumber: '',
|
||||
keyState: '',
|
||||
keyApplyUserName: '',
|
||||
keyApproveUserName: '',
|
||||
keyApproveTime: '',
|
||||
HOT_WORK_LEVEL_INDEX: '',
|
||||
JOB_CONTENT: '',
|
||||
HOT_WORK_POSITION: '',
|
||||
UNIT_LEADER_DEPARTMENT_ID: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getList()
|
||||
this.getDictTreeData()
|
||||
},
|
||||
methods: {
|
||||
getRowKey(row) {
|
||||
return row.HOTWORK_ID
|
||||
},
|
||||
// 搜索
|
||||
getQuery() {
|
||||
this.$refs.multipleTable.clearSelection()
|
||||
this.getList()
|
||||
},
|
||||
// 获取列表
|
||||
getList() {
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/hotworkapplication/hotWorkData?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page,
|
||||
{
|
||||
...this.searchForm,
|
||||
keyState: 11,
|
||||
isForceBack: 2,
|
||||
DEPTIDS: this.DEPTIDS, tm: new Date().getTime()
|
||||
}
|
||||
).then((data) => {
|
||||
this.listLoading = false
|
||||
this.varList = data.varList
|
||||
this.total = data.page.totalResult
|
||||
this.hasButton()
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
// 判断按钮权限,用于是否显示按钮
|
||||
hasButton() {
|
||||
var keys = 'hotwork:add,hotwork:del,hotwork:edit,toExcel'
|
||||
requestFN(
|
||||
'/head/hasButton',
|
||||
{
|
||||
keys: keys
|
||||
}
|
||||
).then((data) => {
|
||||
this.add = data.hotworkfhadminadd // 新增权限
|
||||
this.del = data.hotworkfhadmindel // 删除权限
|
||||
this.edit = data.hotworkfhadminedit // 修改权限
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
translate(id, list) {
|
||||
for (let i = 0; i < list.length; i++) {
|
||||
if (list[i].BIANMA === id || list[i].value === id || list[i].id === id) return list[i].NAME || list[i].label || list[i].name
|
||||
}
|
||||
},
|
||||
getUserName(keyName, list) {
|
||||
var keyVal = ''
|
||||
for (let i = 0; i < list.length; i++) {
|
||||
if (list[i][keyName]) {
|
||||
keyVal += list[i][keyName] + ','
|
||||
}
|
||||
}
|
||||
return keyVal.substring(0, (keyVal.length - 1))
|
||||
},
|
||||
goDetail(id, type) {
|
||||
this.$parent.activeName = 'Detail'
|
||||
this.$parent.HOTWORKAPPLICATION_ID = id
|
||||
this.$parent.HOTWORKAPPLICATION_TYPE = type
|
||||
},
|
||||
getDictTreeData() {
|
||||
return new Promise((resolve) => {
|
||||
requestFN(
|
||||
'/department/listTreeCorpDept',
|
||||
{}
|
||||
).then((data) => {
|
||||
this.treeData = this.listTransTree(JSON.parse(data.zTreeNodes), 'id', 'pId', 'nodes')
|
||||
resolve('ok')
|
||||
}).catch((e) => {
|
||||
})
|
||||
})
|
||||
},
|
||||
chongzhi() {
|
||||
this.searchForm = {
|
||||
stateConfirm: '',
|
||||
keySource: '',
|
||||
keyHiddenDescr: '',
|
||||
keyFindUserName: '',
|
||||
keyFindUserDept: '',
|
||||
keyHiddenType: '',
|
||||
keyHiddenPart: '',
|
||||
keyHiddenlevel: '',
|
||||
keyFindTime: [],
|
||||
keyFindStateTime: '',
|
||||
keyFindEndTime: '',
|
||||
keyConfirmUser: '',
|
||||
HOT_WORK_LEVEL_INDEX: '',
|
||||
JOB_CONTENT: '',
|
||||
HOT_WORK_POSITION: ''
|
||||
}
|
||||
this.$refs.deptTree_Inspected.clearHandle()
|
||||
this.$refs.searchForm.resetFields()
|
||||
this.getList()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
|
@ -0,0 +1,37 @@
|
|||
<template>
|
||||
<div>
|
||||
<List v-show="activeName==='List'" ref="list" />
|
||||
<Detail v-if="activeName==='Detail'"/>
|
||||
<Delayed v-if="activeName==='Delayed'"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import List from './components/list'
|
||||
import Detail from './components/detail'
|
||||
import Delayed from './components/delayed'
|
||||
export default {
|
||||
components: {
|
||||
List: List,
|
||||
Detail: Detail,
|
||||
Delayed: Delayed
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeName: 'List',
|
||||
HOTWORKAPPLICATION_ID: '',
|
||||
HOTWORKAPPLICATION_TYPE: ''
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
activeName(val) {
|
||||
if (val === 'List') {
|
||||
this.$refs.list.getList()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
</style>
|
|
@ -1289,7 +1289,7 @@ export default {
|
|||
const collection = new Cesium.CustomDataSource('trajectoryEntityCollection')
|
||||
collection.entities.add(entity)
|
||||
viewer.dataSources.add(collection)
|
||||
this.trajectoryEntityCollection = collection
|
||||
this.trajectoryEntityCollection = Object.freeze(collection)
|
||||
}
|
||||
})
|
||||
},
|
||||
|
@ -2450,8 +2450,8 @@ export default {
|
|||
const wsUrl = config.NoDwSysUrl + '/ltLocation/DW_' + new Date().getTime() + '_98'
|
||||
_this.fwebsocket = new WebSocket(encodeURI(wsUrl))
|
||||
_this.fwebsocket.onmessage = function(message) {
|
||||
console.info('接收消息')
|
||||
const peopleList = JSON.parse(message.data)
|
||||
viewer.entities.suspendEvents()
|
||||
for (let i = 0; i < peopleList.length; i++) {
|
||||
const item = peopleList[i]
|
||||
if ((!item)) continue
|
||||
|
@ -2484,6 +2484,7 @@ export default {
|
|||
_this.mqttPoint[_this.subscription.topic.substring(0, _this.subscription.topic.lastIndexOf('+')) + item.id] = item.id
|
||||
}
|
||||
}
|
||||
viewer.entities.resumeEvents()
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -376,6 +376,7 @@
|
|||
<div class="ui-height" />
|
||||
<div class="ui-foot">
|
||||
<el-button type="primary" @click="confirm">确 定</el-button>
|
||||
<el-button type="success" @click="staging">暂 存</el-button>
|
||||
<el-button @click="goBack">取 消</el-button>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1173,6 +1174,89 @@ export default {
|
|||
this.form.CONFIRM_MESSAGE_SIGN = information.INSPECTION_USER_SIGN_IMG
|
||||
this.form.CONFIRM_MESSAGE_TIME = information.INSPECTION_USER_SIGN_TIME
|
||||
this.$forceUpdate()
|
||||
},
|
||||
/**
|
||||
* 先缓存
|
||||
*/
|
||||
staging() {
|
||||
let flag = false
|
||||
this.form.situationList.forEach(item => {
|
||||
if (!this.validStr(item.SITUATION)) {
|
||||
flag = true
|
||||
return
|
||||
}
|
||||
})
|
||||
if (flag) {
|
||||
this.$message({
|
||||
message: '检查情况不能为空',
|
||||
type: 'warning'
|
||||
})
|
||||
return false
|
||||
}
|
||||
flag = false
|
||||
this.form.inspectorList.forEach(item => {
|
||||
if (!this.validStr(item.INSPECTION_USER_ID)) {
|
||||
flag = true
|
||||
return
|
||||
}
|
||||
})
|
||||
if (flag) {
|
||||
this.$message({
|
||||
message: '检查人员不能为空',
|
||||
type: 'warning'
|
||||
})
|
||||
return false
|
||||
}
|
||||
|
||||
this.$refs.form.validate(valid => {
|
||||
if (valid) {
|
||||
const loading = this.$loading({
|
||||
lock: true,
|
||||
text: '数据保存中...',
|
||||
spinner: 'el-icon-loading',
|
||||
background: 'rgba(0, 0, 0, 0.7)'
|
||||
})
|
||||
for (var x in this.form.inspectorList) {
|
||||
var vector = 0
|
||||
for (var y in this.form.inspectorList) {
|
||||
if (this.form.inspectorList[y].INSPECTION_USER_ID === this.form.inspectorList[x].INSPECTION_USER_ID) vector++
|
||||
}
|
||||
if (vector > 1) {
|
||||
this.$message.error('检查人重复!请检查相关数据')
|
||||
return
|
||||
}
|
||||
}
|
||||
const index = this.form.inspectorList.findIndex(item => item.INSPECTION_USER_ID === JSON.parse(sessionStorage.getItem('user')).USER_ID)
|
||||
if (index < 0) {
|
||||
this.form.inspectorList.push({ INSPECTION_INSPECTOR_ID: '', INSPECTION_DEPARTMENT_ID: JSON.parse(sessionStorage.getItem('user')).DEPARTMENT_ID, INSPECTION_USER_ID: JSON.parse(sessionStorage.getItem('user')).USER_ID })
|
||||
}
|
||||
this.$set(this.form, 'INSPECTORJSON', JSON.stringify(this.form.inspectorList))
|
||||
this.$set(this.form, 'SITUATIONJSON', JSON.stringify(this.form.situationList))
|
||||
this.$set(this.form, 'HIDDENJSON', JSON.stringify(this.form.hiddenList))
|
||||
this.listLoading = true
|
||||
requestFN(
|
||||
'/safetyenvironmental/' + this.dialogType,
|
||||
{ ...this.form, INSPECTION_STATUS: '99' }
|
||||
).then((data) => {
|
||||
for (let i = 0; i < data.pd.hiddenList.length; i++) {
|
||||
this.uploadImg(this.hdFile[i]['fileHdImgList'], data.pd.hiddenList[i].HIDDEN_ID)
|
||||
this.uploadVideo(this.hdFile[i]['fileVideoList'], data.pd.hiddenList[i].HIDDEN_ID)
|
||||
}
|
||||
this.$message({
|
||||
message: '保存成功',
|
||||
type: 'success'
|
||||
})
|
||||
this.listLoading = false
|
||||
loading.close()
|
||||
this.goBack()
|
||||
}).catch((e) => {
|
||||
this.listLoading = false
|
||||
loading.close()
|
||||
})
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -167,7 +167,7 @@
|
|||
<el-button icon="el-icon-view" size="mini" @click="goDetail(row)">查看</el-button>
|
||||
<el-button type="success" icon="el-icon-view" size="mini" @click="checkFlow(row)">流程图</el-button>
|
||||
<el-button
|
||||
v-show="edit && ( row.INSPECTION_STATUS == '-1')"
|
||||
v-show="edit && ( row.INSPECTION_STATUS == '-1' || row.INSPECTION_STATUS === '99')"
|
||||
type="primary"
|
||||
icon="el-icon-edit"
|
||||
size="mini"
|
||||
|
@ -295,7 +295,8 @@ export default {
|
|||
{ ID: '7', NAME: '检查已验收' },
|
||||
{ ID: '8', NAME: '已归档' },
|
||||
{ ID: '-1', NAME: '检查人核实打回' },
|
||||
{ ID: '-2', NAME: '被检查人申辩' }
|
||||
{ ID: '-2', NAME: '被检查人申辩' },
|
||||
{ ID: '99', NAME: '暂存' }
|
||||
],
|
||||
INSPECTION_SUBJECT_LIST: [
|
||||
{ ID: '安全', NAME: '安全' },
|
||||
|
|
Loading…
Reference in New Issue