qa-prevention-gwj-first-app/pages/application/hotwork_cfd/hotwork-apply/hotwork-apply-detail.vue

1844 lines
71 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<view>
<cu-custom bgColor="bg-gradual-blueness" :isBack="!otherIdentification && !otherAssignments">
<block slot="backText">返回</block>
<block slot="content">动火安全作业申请</block>
</cu-custom>
<scroll-view scroll-y="false">
<view class="form">
<view class="wui-form-list">
<view class="cu-form-group group-picker">
<view class="title">申请单位</view>
{{ pd.APPLY_DEPARTMENT_NAME }}
</view>
<view class="cu-form-group group-picker">
<view class="title">申请人</view>
{{ pd.APPLY_USER_NAME }}
</view>
<view class="cu-form-group">
<view class="title">地点坐标</view>
<button class="cu-btn bg-green shadow" @tap="showMapModal" v-if="!forbidEdit"></button>
</view>
<view class="cu-form-group" v-if="pd.WORK_LONGITUDE">
<view class="title">经度</view>
<view>{{ pd.WORK_LONGITUDE }}</view>
</view>
<view class="cu-form-group" v-if="pd.WORK_LATITUDE">
<view class="title">纬度</view>
<view>{{ pd.WORK_LATITUDE }}</view>
</view>
<view class="cu-form-group bb-default" v-if="pd.CHECK_NO != '' && pd.CHECK_NO != null">
<view class="title">编号:</view>
<input name="input" ref="CHECK_NO" :disabled="true" v-model="pd.CHECK_NO" placeholder="请输入编号"></input>
</view>
<view class="cu-form-textarea">
<view class="cu-form-title">作业内容:</view>
<textarea maxlength="255" :disabled="forbidEdit" v-model="pd.WORK_CONTENT"
placeholder="请输入作业内容"></textarea>
</view>
<view class="cu-form-group">
<view class="title">动火地点及动火部位:</view>
<input name="input" :disabled="forbidEdit" v-model="pd.WORK_PLACE" placeholder="请输入"></input>
</view>
<view class="cu-form-group group-picker">
<view class="title">动火作业级别:</view>
<picker v-if="!forbidEdit" @change="levelChange" :disabled="forbidEdit" :value="levelindex"
:range="levelList" range-key="name">
<view class="picker">
{{ pd.WORK_LEVEL ? pd.WORK_LEVEL : '请选择' }}
</view>
</picker>
<view v-else>{{ pd.WORK_LEVEL }}</view>
</view>
<view class="cu-form-group">
<view class="title">动火方式:</view>
<input name="input" :disabled="forbidEdit" v-model="pd.WORK_FUNCTION" placeholder="请输入"></input>
</view>
<view v-if="!forbidEdit" class="cu-form-group ">
<view class="title">作业开始时间</view>
<ruiDatePicker v-if="!forbidEdit"
:start="todayDate"
fields="minute"
:value="pd.WORK_START_DATE?pd.WORK_START_DATE:''"
@change="changeStartDate"
></ruiDatePicker>
<view v-else>{{ pd.WORK_START_DATE }}</view>
</view>
<view v-if="!forbidEdit" class="cu-form-group">
<view class="title">作业结束时间</view>
<ruiDatePicker v-if="!forbidEdit"
:start="todayDate"
fields="minute"
:value="pd.WORK_END_DATE?pd.WORK_END_DATE:''"
@change="changeEndDate"
></ruiDatePicker>
<view v-else>{{ pd.WORK_END_DATE }}</view>
</view>
<view v-if="forbidEdit" class="cu-form-group" style="height: 140upx;">
<view class="title" style="width: 175upx; height: 90upx; margin: 0;line-height: 1.6;">
<view>动火作业</view>
<view>实施时间:</view>
</view>
<view>
<text>{{ pd.WORK_START_DATE }}</text>
<text>至</text>
<text>{{ pd.WORK_END_DATE }}</text>
</view>
</view>
<view class="cu-form-textarea ">
<view style="display: flex;justify-content: space-between;align-items: center">
<view class="cu-form-title">动火人及证书编号:</view>
<view class="cu-form-group" v-if="!forbidEdit && pd.APPLY_STATUS != -99 && pd.APPLY_STATUS != -98">
<picker @change="PickerWorkuser" :value="workuserindex" :range="workUserList" :disabled="forbidEdit"
range-key="NAME">
<view class="picker">
请选择
</view>
</picker>
</view>
</view>
<textarea maxlength="255" v-model="pd.WORK_USER" placeholder="请输入动火人及证书编号"></textarea>
</view>
<view class="cu-form-textarea ">
<view class="cu-form-title">动火操作人图片:</view>
<view class="cu-form-group" style="padding-top:20upx">
<view class="grid col-4 grid-square flex-sub">
<view class="bg-img" v-for="(item,index) in pd.dongHuoCaoZuoRenPic" :key="index" @tap="ViewImage"
:data-url="pd.dongHuoCaoZuoRenPic[index]">
<image :src="pd.dongHuoCaoZuoRenPic[index]" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="DelImg1" :data-index="index" v-if="!forbidEdit">
<text class='cuIcon-close'></text>
</view>
</view>
<view class="solids" @tap="ChooseImage" v-if="!forbidEdit">
<text class='cuIcon-cameraadd'></text>
</view>
</view>
</view>
</view>
<view class="cu-form-textarea">
<view class="cu-form-title">
关联的其他特殊作业及安全作业票编号
<button class="cu-btn bg-green sm reg-btn"
v-if="!forbidEdit && pd.APPLY_STATUS != -99 && pd.APPLY_STATUS != -98"
@click="otherAssignments = true">选择其它
</button>
</view>
<textarea maxlength="255" :disabled="forbidEdit" v-model="pd.SPECIAL_WORK"
placeholder="请输入关联的其他特殊作业及安全作业票编号"></textarea>
</view>
<view class="cu-form-textarea">
<view class="cu-form-title">
风险辨识结果
<button class="cu-btn bg-green sm reg-btn"
v-if="!forbidEdit && pd.APPLY_STATUS != -99 && pd.APPLY_STATUS != -98"
@click="otherIdentification = true">选择其它
</button>
</view>
<textarea maxlength="255" :disabled="forbidEdit" v-model="pd.RISK_IDENTIFICATION"
placeholder="请输入风险辨识结果"></textarea>
</view>
</view>
<view class="wui-form-list" style="padding-top: 20upx;">
<view class="wui-title" style="margin-left: 20upx;">
<text class="text-semi">安全防护措施</text>
</view>
<view class="wui-table" style="padding: 0 20upx;">
<uni-table name='measuresList' border stripe emptyText="暂无更多数据">
<!-- 表头行 -->
<uni-tr>
<uni-th align="center" style="font-weight: bold;">主要安全措施</uni-th>
<uni-th align="center" style="font-weight: bold;width: 100px">操作</uni-th>
</uni-tr>
<uni-tr v-for="(item,index) in measuresList" :key="item.BUS_HOTWORK_MEASURES_ID">
<uni-td>
<view style="margin-bottom: 20upx;">
{{ item.PROTECTIVE_MEASURES }}
</view>
<view class="cu-form-group" v-if="item.QUESTION1 && item.STATUS=='1'">
<view class="title">{{ item.QUESTION1 }}</view>
<input name="input" :disabled="forbidEdit" v-model="item.ANSWER1" placeholder="请输入"></input>
</view>
<view class="cu-form-group" v-if="item.QUESTION2 && item.STATUS=='1'">
<view class="title">{{ item.QUESTION2 }}</view>
<input name="input" :disabled="forbidEdit" v-model="item.ANSWER2" placeholder="请输入"></input>
</view>
<view class="cu-form-group" v-if="item.QUESTION3 && item.STATUS=='1'">
<view class="title">{{ item.QUESTION3 }}</view>
<input name="input" :disabled="forbidEdit" v-model="item.ANSWER3" placeholder="请输入"></input>
</view>
<view class="cu-form-group" v-if="item.QUESTION4 && item.STATUS=='1'">
<view class="title">{{ item.QUESTION4 }}</view>
<input name="input" :disabled="forbidEdit" v-model="item.ANSWER4" placeholder="请输入"></input>
</view>
</uni-td>
<uni-td align="center">
<radio-group class="wui-radio-group">
<view class="group" v-if="item.STATUS=='-1'">
<radio class='radio' value="-1" checked>
<text class="wui-pl10">不涉及</text>
</radio>
</view>
<view class="group" v-if="item.STATUS=='1'">
<radio class='radio' value="1" checked>
<text class="wui-pl10">涉&nbsp;&nbsp;&nbsp;&nbsp;及</text>
</radio>
</view>
</radio-group>
</uni-td>
</uni-tr>
</uni-table>
</view>
<view
v-if="pd.CONFIRM_USER_MEASURES || pd.LEADER_USER_MEASURES || pd.AUDIT_USER_MEASURES || pd.APPROVE_USER_MEASURES || pd.MONITOR_USER_MEASURES">
<view class="cu-form-group">
<view class="title">其他安全措施:</view>
</view>
<view v-if="pd.CONFIRM_USER_MEASURES" class="ty-group">
<text class="title">
作业单位:
</text>
<text>{{ pd.CONFIRM_USER_MEASURES }}</text>
</view>
<view v-if="pd.LEADER_USER_MEASURES" class="ty-group">
<text class="title">
车间:
</text>
<text>{{ pd.LEADER_USER_MEASURES }}</text>
</view>
<view v-if="pd.AUDIT_USER_MEASURES" class="ty-group">
<text class="title">
安全管理部门:
</text>
<text>{{ pd.AUDIT_USER_MEASURES }}</text>
</view>
<view v-if="pd.APPROVE_USER_MEASURES" class="ty-group">
<text class="title">
审批人:
</text>
<text>{{ pd.APPROVE_USER_MEASURES }}</text>
</view>
<view v-if="pd.MONITOR_USER_MEASURES" class="ty-group">
<text class="title">
班长:
</text>
<text>{{ pd.MONITOR_USER_MEASURES }}</text>
</view>
</view>
</view>
<view class="wui-form-list">
<view v-if="pd.GUARDIAN_USER_SIGNER_PATH">
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">监护人</view>
{{ pd.GUARDIAN_USER_NAME }} {{ pd.GUARDIAN_USER_SIGNER_TIME }}
</view>
<view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;">
<image :src="baseImgPath + pd.GUARDIAN_USER_SIGNER_PATH" mode="aspectFill"
@click="previewImage(baseImgPath + pd.GUARDIAN_USER_SIGNER_PATH)" style="height: 100%;"></image>
</view>
</view>
</view>
<view v-if="pd.CONFESS_USER_SIGNER_PATH">
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">安全交底人</view>
{{ pd.CONFESS_USER_NAME }} {{ pd.CONFESS_USER_SIGNER_TIME }}
</view>
<view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;">
<image :src="baseImgPath + pd.CONFESS_USER_SIGNER_PATH" mode="aspectFill"
@click="previewImage(baseImgPath + pd.CONFESS_USER_SIGNER_PATH)" style="height: 100%;"></image>
</view>
</view>
</view>
<view v-if="files.length > 0">
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">接受交底人</view>
{{ pd.ACCEPT_CONFESS_USER_NAME }} {{ pd.ACCEPT_CONFESS_USER_SIGNER_TIME }}
</view>
<view class="cu-item" v-for="(item,index) in files" :key="index"
style="border-bottom: 1px solid #e3e3e3">
<view class="imgs"
style="display: flex;justify-content: space-between;align-items: flex-end;padding: 20upx 50upx;">
<image :src="baseImgPath+item.ACCEPT_CONFESS_USER_SIGNER_PATH" :data-index="index"
@click="ViewShowImage(baseImgPath+item.ACCEPT_CONFESS_USER_SIGNER_PATH)"
mode="" style="width: 200upx;height: 200upx;"></image>
<text>{{ item.ACCEPT_CONFESS_USER_SIGNER_TIME }}</text>
</view>
</view>
</view>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group">
<view class="title">安全措施确认人单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showSafetyTree">
{{ pd.SAFETY_DEPARTMENT_NAME ? pd.SAFETY_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_safety"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="safetyTreeConfirm"
@cancel="safetyTreeCancel"></tki-tree>
</view>
<view class="cu-form-group">
<view class="title">安全措施确认人</view>
<picker @change="PickerSafety" :value="safetyIndex" :range="safetyUserList" range-key="NAME"
:disabled="safetyUserList.length === 0" @click="isBlankList('anQuanCuoShiQueRenRen')">
<view class="picker">
{{ pd.SAFETY_USER_NAME ? pd.SAFETY_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group">
<view class="title">气体分析单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showAnalyzeTree">
{{ pd.ANALYZE_DEPARTMENT_NAME ? pd.ANALYZE_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_analyze"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="analyzetreeConfirm"
@cancel="analyzetreeCancel"></tki-tree>
</view>
<view class="cu-form-group">
<view class="title">气体分析单位负责人</view>
<picker @change="PickerAnalyze" :value="analyzeindex" :range="analyzeUserList" range-key="NAME"
:disabled="analyzeUserList.length == 0" @click="isBlankList('analyze')">
<view class="picker">
{{ pd.ANALYZE_USER_NAME ? pd.ANALYZE_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">项目部门</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showXiangMuTree">
{{ pd.BELONGING_DEPARTMENT_NAME ? pd.BELONGING_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="xiangMu_confirm"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="xiangMuBuMenConfirm"
@cancel="xiangMuBuMenCancel"></tki-tree>
</view>
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">项目主管部门负责人</view>
<picker @change="xiangMuBuMenUserConfirm" :value="xiangMuFuZheRenIndex" :range="confirmUserList" range-key="NAME"
:disabled="confirmUserList.length == 0" @click="isBlankList('xiangMu')">
<view class="picker">
{{ pd.BELONGING_USER_NAME ? pd.BELONGING_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">作业负责人单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showConfirmTree">
{{ pd.CONFIRM_DEPARTMENT_NAME ? pd.CONFIRM_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_confirm"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="confirmtreeConfirm"
@cancel="confirmtreeCancel"></tki-tree>
</view>
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">作业负责人</view>
<picker @change="PickerConfirm" :value="confirmindex" :range="confirmUserList" range-key="NAME"
:disabled="confirmUserList.length == 0" @click="isBlankList('confirm')">
<view class="picker">
{{ pd.CONFIRM_USER_NAME ? pd.CONFIRM_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">所在单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showLeaderTree">
{{ pd.LEADER_DEPARTMENT_NAME ? pd.LEADER_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_leader"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="leadertreeConfirm"
@cancel="leadertreeCancel"></tki-tree>
</view>
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">所在单位负责人</view>
<picker @change="PickerLeader" :value="leaderindex" :range="leaderUserList" range-key="NAME"
:disabled="leaderUserList.length == 0" @click="isBlankList('leader')">
<view class="picker">
{{ pd.LEADER_USER_NAME ? pd.LEADER_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group" v-if="pd.WORK_LEVEL != '二级'">
<view class="title">安全管理部门</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showAuditTree">
{{ pd.AUDIT_DEPARTMENT_NAME ? pd.AUDIT_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_audit"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="audittreeConfirm"
@cancel="audittreeCancel"></tki-tree>
</view>
<view class="cu-form-group" v-if="pd.WORK_LEVEL != '二级'">
<view class="title">安全管理部门负责人</view>
<picker @change="PickerAudit" :value="auditindex" :range="auditUserList" range-key="NAME"
:disabled="auditUserList.length == 0" @click="isBlankList('audit')">
<view class="picker">
{{ pd.AUDIT_USER_NAME ? pd.AUDIT_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group" v-if="pd.WORK_LEVEL != '二级' && pd.WORK_LEVEL != '一级'">
<view class="title">动火审批单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showApproveTree">
{{ pd.APPROVE_DEPARTMENT_NAME ? pd.APPROVE_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_approve"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="approvetreeConfirm"
@cancel="approvetreeCancel"></tki-tree>
</view>
<view class="cu-form-group" v-if="pd.WORK_LEVEL != '二级' && pd.WORK_LEVEL != '一级'">
<view class="title">动火审批负责人</view>
<picker @change="PickerApprove" :value="approveindex" :range="approveUserList" range-key="NAME"
:disabled="approveUserList.length == 0" @click="isBlankList('approve')">
<view class="picker">
{{ pd.APPROVE_USER_NAME ? pd.APPROVE_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">动火前验票部门</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showMonitorTree">
{{ pd.MONITOR_DEPARTMENT_NAME ? pd.MONITOR_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_monitor"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="monitortreeConfirm"
@cancel="monitortreeCancel"></tki-tree>
</view>
<view class="cu-form-group" v-if="!forbidEdit">
<view class="title">动火前验票负责人</view>
<picker @change="PickerMonitor" :value="monitorindex" :range="monitorUserList" range-key="NAME"
:disabled="monitorUserList.length == 0" @click="isBlankList('monitor')">
<view class="picker">
{{ pd.MONITOR_USER_NAME ? pd.MONITOR_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group">
<view class="title">监护人单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showGuardianTree">
{{ pd.GUARDIAN_DEPARTMENT_NAME ? pd.GUARDIAN_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_guardian"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="guardiantreeConfirm"
@cancel="guardiantreeCancel"></tki-tree>
</view>
<view class="cu-form-group">
<view class="title">监护人</view>
<picker @change="PickerGuardian" :value="guardianindex" :range="guardianUserList" range-key="NAME"
:disabled="guardianUserList.length == 0" @click="isBlankList('guardian')">
<view class="picker">
{{ pd.GUARDIAN_USER_NAME ? pd.GUARDIAN_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="add_pard_box" v-if="!forbidEdit">
<view class="add_pard_btns">
<view class="add_pard_b" style="width: 170px;">
<button class="cu-btn round bg-blue" @click="addConfessUser">添加安全交底人</button>
</view>
</view>
<view class="add_pard_item" v-for="(item,index) of confessList">
<view class="add_pard_del" v-if="index>0" @click="removeConfessUser(index)">
<text class="cuIcon-roundclosefill text-red f40"></text>
</view>
<view class="cu-form-group">
<view class="title">安全交底人单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showConfessTree(index)">
{{ item.CONFESS_DEPARTMENT_NAME ? item.CONFESS_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_confess"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="confesstreeConfirm($event,index)"
@cancel="confesstreeCancel"></tki-tree>
</view>
<view class="cu-form-group">
<view class="title">安全交底人</view>
<picker @change="PickerConfess($event,index)" :value="item.confessindex" :range="item.confessUserList" range-key="NAME"
:disabled="item.confessUserList.length === 0">
<view class="picker">
{{ item.CONFESS_USER_NAME ? item.CONFESS_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group">
<view class="title">接受交底人单位</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showAcceptconfessTree">
{{ pd.ACCEPT_CONFESS_DEPARTMENT_NAME ? pd.ACCEPT_CONFESS_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_acceptconfess"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="confesstreeAcceptconfirm"
@cancel="acceptconfesstreeCancel"></tki-tree>
</view>
<view class="cu-form-group">
<view class="title">接受交底人</view>
<picker @change="PickerAcceptconfess" :value="acceptconfessindex" :range="acceptconfessUserList"
range-key="NAME" :disabled="acceptconfessUserList.length == 0"
@click="isBlankList('acceptconfess')">
<view class="picker">
{{ pd.ACCEPT_CONFESS_USER_NAME ? pd.ACCEPT_CONFESS_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="!forbidEdit">
<view class="cu-form-group">
<view class="title">验收部门</view>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showAcceptTree">
{{ pd.ACCEPT_DEPARTMENT_NAME ? pd.ACCEPT_DEPARTMENT_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTree_accept"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="accepttreeConfirm"
@cancel="accepttreeCancel"></tki-tree>
</view>
<view class="cu-form-group">
<view class="title">验收部门负责人</view>
<picker @change="PickerAccept" :value="acceptindex" :range="acceptUserList" range-key="NAME"
:disabled="acceptUserList.length == 0" @click="isBlankList('accept')">
<view class="picker">
{{ pd.ACCEPT_USER_NAME ? pd.ACCEPT_USER_NAME : '请选择' }}
</view>
</picker>
</view>
</view>
<view class="wui-form-list" v-if="forbidEdit">
<view class="cu-form-group bb-default" v-if="pd.APPLY_STATUS && pd.APPLY_STATUS!=0 && pd.APPLY_STATUS!=1">
<view>
<text class="title">分析人:</text>
<text>{{ pd.ANALYZE_USER_NAME }}</text>
</view>
<button class="cu-btn bg-green sm" @click="$noMultipleClicks(goToDetail,pd.HOTWORK_ID)">分析详情</button>
</view>
<view v-if="pd.CONFIRM_USER_SIGNER_PATH">
<view class="cu-form-textarea" style="border: none;">
<view class="cu-form-title">作业负责人意见</view>
<textarea maxlength="255" disabled="disabled" v-model="pd.CONFIRM_CONTENT"></textarea>
</view>
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">作业负责人</view>
{{ pd.CONFIRM_USER_NAME }} {{ pd.CONFIRM_USER_SIGNER_TIME }}
</view>
<view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;">
<image :src="baseImgPath + pd.CONFIRM_USER_SIGNER_PATH" mode="aspectFill"
@click="previewImage(baseImgPath + pd.CONFIRM_USER_SIGNER_PATH)" style="height: 100%;"></image>
</view>
</view>
</view>
<view v-if="pd.LEADER_USER_SIGNER_PATH">
<view class="cu-form-textarea" style="border: none;">
<view class="cu-form-title">所在单位意见</view>
<textarea maxlength="255" disabled="disabled" v-model="pd.LEADER_CONTENT"></textarea>
</view>
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">所在单位负责人</view>
{{ pd.LEADER_USER_NAME }} {{ pd.LEADER_USER_SIGNER_TIME }}
</view>
<view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;">
<image :src="baseImgPath + pd.LEADER_USER_SIGNER_PATH" mode="aspectFill"
@click="previewImage(baseImgPath + pd.LEADER_USER_SIGNER_PATH)" style="height: 100%;"></image>
</view>
</view>
</view>
<view v-if="pd.AUDIT_USER_SIGNER_PATH">
<view class="cu-form-textarea" style="border: none;">
<view class="cu-form-title">安全管理部门意见</view>
<textarea maxlength="255" disabled="disabled" v-model="pd.AUDIT_CONTENT"></textarea>
</view>
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">安全管理部门负责人</view>
{{ pd.AUDIT_USER_NAME }} {{ pd.AUDIT_USER_SIGNER_TIME }}
</view>
<view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;">
<image :src="baseImgPath + pd.AUDIT_USER_SIGNER_PATH" mode="aspectFill"
@click="previewImage(baseImgPath + pd.AUDIT_USER_SIGNER_PATH)" style="height: 100%;"></image>
</view>
</view>
</view>
<view v-if="pd.APPROVE_USER_SIGNER_PATH">
<view class="cu-form-textarea" style="border: none;">
<view class="cu-form-title">动火审批人意见</view>
<textarea maxlength="255" disabled="disabled" v-model="pd.APPROVE_CONTENT"></textarea>
</view>
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">动火审批人</view>
{{ pd.APPROVE_USER_NAME }} {{ pd.APPROVE_USER_SIGNER_TIME }}
</view>
<view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;">
<image :src="baseImgPath + pd.APPROVE_USER_SIGNER_PATH" mode="aspectFill"
@click="previewImage(baseImgPath + pd.APPROVE_USER_SIGNER_PATH)" style="height: 100%;"></image>
</view>
</view>
</view>
<view v-if="pd.MONITOR_USER_SIGNER_PATH">
<view class="cu-form-textarea" style="border: none;">
<view class="cu-form-title">动火前验票负责人意见</view>
<textarea maxlength="255" disabled="disabled" v-model="pd.MONITOR_CONTENT"></textarea>
</view>
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">动火前验票负责人</view>
{{ pd.MONITOR_USER_NAME }} {{ pd.MONITOR_USER_SIGNER_TIME }}
</view>
<view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;">
<image :src="baseImgPath + pd.MONITOR_USER_SIGNER_PATH" mode="aspectFill"
@click="previewImage(baseImgPath + pd.MONITOR_USER_SIGNER_PATH)" style="height: 100%;"></image>
</view>
</view>
</view>
<view v-if="files1.length > 0">
<view class="cu-form-textarea" style="border: none;">
<view class="cu-form-title">完工验收</view>
<textarea maxlength="255" disabled="disabled" v-model="pd.ACCEPT_CONTENT"></textarea>
</view>
<view style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee">
<view class="cu-form-group">
<view class="title">验收部门负责人</view>
{{ pd.ACCEPT_USER_NAME }} {{ pd.ACCEPT_USER_SIGNER_TIME }}
</view>
<view class="cu-item" v-for="(item,index) in files1" :key="index"
style="border-bottom: 1px solid #e3e3e3">
<view class="imgs"
style="display: flex;justify-content: space-between;align-items: flex-end;padding: 20upx 50upx;">
<image :src="baseImgPath+item.ACCEPT_USER_SIGNER_PATH" :data-index="index"
@click="ViewShowImage1(baseImgPath+item.ACCEPT_USER_SIGNER_PATH)"
mode="" style="width: 200upx;height: 200upx;"></image>
<text>{{ item.ACCEPT_USER_SIGNER_TIME }}</text>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="cu-bar btn-group" style="margin-top: 30upx;">
<button
v-if="!forbidEdit && pd.APPLY_STATUS <1 && pd.APPLY_STATUS != -99 && pd.APPLY_STATUS != -98 || !pd.APPLY_STATUS "
:loading="buttonloading" class="cu-btn bg-blue margin-tb-sm lg" @click="$noMultipleClicks(goSubmit,'1')">提交
</button>
<button
v-if="!forbidEdit && pd.APPLY_STATUS <1 && pd.APPLY_STATUS != -99 && pd.APPLY_STATUS != -98 || !pd.APPLY_STATUS "
:loading="buttonloading" class="cu-btn bg-green margin-tb-sm lg" @click="$noMultipleClicks(goSubmit,'0')">暂存
</button>
<button v-if="forbidEdit || pd.APPLY_STATUS == -99 || pd.APPLY_STATUS == -98 "
class="cu-btn bg-green margin-tb-sm lg" @click="$noMultipleClicks(goback)">返回
</button>
</view>
<view class="padding flex flex-direction">
</view>
</scroll-view>
<other-select :visible.sync="otherAssignments" v-model="pd.SPECIAL_WORK" type="assignments"/>
<other-select :visible.sync="otherIdentification" v-model="pd.RISK_IDENTIFICATION" type="identification"/>
</view>
</template>
<script>
import {
basePath, corpinfoId, deptId, loginUser, formatDate, loginSession, baseImgPath
} from '@/common/tool.js';
import tkiTree from "@/components/select-tree/select-tree.vue"
import writingBoard from "@/components/writing-board/writing-board.vue"
import gcoord from '@/common/gcoord.js'
import ruiDatePicker from '@/components/rattenking-dtpicker/rattenking-dtpicker.vue';
import OtherSelect from '@/components/other-select/index.vue';
export default {
components: {
tkiTree, ruiDatePicker, writingBoard, OtherSelect
},
data() {
return {
baseImgPath: baseImgPath,
buttonloading: false,
isUps: false,
forbidEdit: true,// 禁止修改
msg: 'add',
noClick: true,
treeNode: [],//部门下拉数据
levelList: [
{id: '特级', name: '特级'},
{id: '一级', name: '一级'},
{id: '二级', name: '二级'},
],
levelindex: -1,
files: [],
files1: [],
analyzeUserList: [],
analyzeindex: -1,
confirmUserList: [],
workuserindex: -1,
confessUserList: [],
confessindex: -1,
acceptconfessUserList: [],
acceptconfessindex: -1,
workUserList: [],
confirmindex: -1,
xiangMuFuZheRenIndex: -1,
guardianUserList: [],
guardianindex: -1,
leaderUserList: [],
leaderindex: -1,
auditUserList: [],
auditindex: -1,
approveUserList: [],
approveindex: -1,
monitorUserList: [],
monitorindex: -1,
acceptUserList: [],
acceptindex: -1,
pd: {
OTHER_PROTECTIVE_MEASURES: ';_;;_;;_;;_;;_;;_;;_;',
WORK_LONGITUDE: '',
WORK_LATITUDE: '',
dongHuoCaoZuoRenPic: []
},// 数据
measuresList: [],
rules: [
{name: 'WORK_CONTENT', message: '请输入作业内容'},
{name: 'WORK_PLACE', message: '请输入动火地点及动火部位'},
{name: 'WORK_LEVEL', message: '请选择动火级别'},
{name: 'WORK_FUNCTION', message: '请输入动火方式'},
{name: 'WORK_START_DATE', message: '请选择工作开始时间'},
{name: 'WORK_END_DATE', message: '请选择工作结束时间'},
{name: 'WORK_USER', message: '请输入动火人及证书编号'},
{name: 'RISK_IDENTIFICATION', message: '请输入风险辨识结果'},
{name: 'ANALYZE_USER_ID', message: '请选择分析人'},
{name: 'CONFIRM_USER_ID', message: '请选择作业负责人'},
{name: 'LEADER_USER_ID', message: '请选择动火点车间负责人'},
{name: 'MONITOR_USER_ID', message: '请选择验票班长'},
{name: 'ACCEPT_USER_ID', message: '请选择验收部门负责人'},
{name: 'GUARDIAN_USER_ID', message: '请选择监护人'},
{name: 'ACCEPT_CONFESS_USER_ID', message: '请选择接受交底人'},
],
todayDate: '',
otherAssignments: false,
otherIdentification: false,
confessList:[
{
CONFESS_DEPARTMENT_NAME:'',
CONFESS_DEPARTMENT_ID:'',
CONFESS_USER_NAME:'',
CONFESS_USER_ID:'',
confessUserList:[],
confessindex: -1
}
],
safetyIndex: -1,
safetyUserList: [],
}
},
onLoad(event) {
this.todayDate = formatDate(new Date(), 'yyyy-MM-dd hh:mm');
this.pd.HOTWORK_ID = event.HOTWORK_ID;
if (this.pd.HOTWORK_ID) {
this.msg = "edit";
this.getData();
} else {
// 初始化作业负责人
this.pd.APPLY_DEPARTMENT_ID = loginUser.DEPARTMENT_ID;
this.pd.APPLY_DEPARTMENT_NAME = loginUser.DEPARTMENT_NAME;
this.pd.APPLY_USER_ID = loginUser.USER_ID;
this.pd.APPLY_USER_NAME = loginUser.NAME;
this.forbidEdit = false;
this.pd.OTHER_PROTECTIVE_MEASURES = ''
this.pd.dongHuoCaoZuoRenPic = []
this.getWorkUserList();
}
// 初始化现场作业负责人
this.getDept();
this.getLimitSpace();
this.getSafetyCheck();
loginSession();
},
methods: {
/** 坐标定位 */
showMapModal() {
var _this = this
uni.navigateTo({
url: '/pages/map/map',
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage: function (e) {
_this.pd.WORK_LONGITUDE = e.data.longitue;
_this.pd.WORK_LATITUDE = e.data.latitude;
console.info(_this.pd)
}
},
})
},
//跳转事件
goToDetail(e) {
uni.navigateTo({
url: '/pages/application/hotwork_cfd/hotwork-gas/gas-list?HOTWORK_ID=' + e
});
},
getCode() {
uni.request({
url: basePath + '/app/hotwork/cfd/getCode',
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
data: {
CORPINFO_ID: loginUser.CORPINFO_ID,
},
success: (res) => {
this.pd.CHECK_NO = res.data.code;
}
})
},
getData() {
var _this = this;
uni.showLoading({
title: '请稍候'
})
uni.request({
url: basePath + '/app/hotwork/cfd/goEdit',
method: 'POST',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
data: {
HOTWORK_ID: _this.pd.HOTWORK_ID,
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: (res) => {
if ("success" == res.data.result) {
uni.hideLoading();
_this.pd = res.data.pd; //参数map
_this.pd = Object.assign(_this.pd,
{
"CONFIRM_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[0],
"GUARDIAN_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[1],
"LEADER_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[2],
"AUDIT_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[3],
"APPROVE_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[4],
"MONITOR_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[5]
})
_this.pd.OTHER_PROTECTIVE_MEASURES = ''
// created by liu jun description: 在查看详情时如果有安全防护措施信息则用接口返回的数据,如果没有则用默认的数据
if (res.data.measuresList && res.data.measuresList.length > 0) {
_this.measuresList = res.data.measuresList
}
_this.files = res.data.imgList;
_this.files1 = res.data.imgList1;
let dongHuoCaoZuoRenPic = res.data.imgList2
if (dongHuoCaoZuoRenPic && dongHuoCaoZuoRenPic.length > 0) {
_this.pd.dongHuoCaoZuoRenPic = []
for (let i = 0; i < dongHuoCaoZuoRenPic.length; i++) {
_this.pd.dongHuoCaoZuoRenPic.push(baseImgPath + dongHuoCaoZuoRenPic[i].FILEPATH)
}
}
if (_this.pd.APPLY_STATUS <= 0) {
_this.forbidEdit = false;
}
_this.pd.WORK_LONGITUDE = res.data.pd.WORK_LONGITUDE
_this.pd.WORK_LATITUDE = res.data.pd.WORK_LATITUDE
this.getUserList(this.pd.ANALYZE_DEPARTMENT_ID, 'analyzeUserList');
this.getUserList(this.pd.CONFIRM_DEPARTMENT_ID, 'confirmUserList');
this.getUserList(this.pd.LEADER_DEPARTMENT_ID, 'leaderUserList');
this.getUserList(this.pd.AUDIT_DEPARTMENT_ID, 'auditUserList');
this.getUserList(this.pd.APPROVE_DEPARTMENT_ID, 'approveUserList');
this.getUserList(this.pd.MONITOR_DEPARTMENT_ID, 'monitorUserList');
this.getUserList(this.pd.ACCEPT_DEPARTMENT_ID, 'acceptUserList');
this.getWorkUserList();
// created by liu jun description: 拼装安全交底人数据
if (res.data.pd.confessList && res.data.pd.confessList.length > 0) {
_this.confessList = res.data.pd.confessList
for (let i = 0; i < _this.confessList.length; i++) {
this.getUserListForJiaoDiRen(_this.confessList[i].CONFESS_DEPARTMENT_ID, i);
}
}
} else if ("exception" == data.result) {
uni.showToast({
title: '错误',
duration: 2000
});
}
}
});
},
ViewShowImage(url) {
let files = [];
files.push(url)
uni.previewImage({
urls: files,
current: 0
});
},
ViewShowImage1(url) {
let files1 = [];
files1.push(url)
uni.previewImage({
urls: files1,
current: 0
});
},
goSubmit(STATUS) {
var _this = this;
let required = true
uni.showLoading({
title: '请稍候'
})
if (STATUS === '1') {
this.rules.map(({name, message}) => {
if (!this.pd[name]) {
uni.showToast({
icon: 'none',
title: message,
duration: 1500
});
required = false
}
})
if (this.pd.WORK_LEVEL != '二级') {
if (!this.pd.AUDIT_USER_ID) {
uni.showToast({
icon: 'none',
title: '请选择安全管理部门负责人',
duration: 1500
});
required = false
}
}
if (this.pd.WORK_LEVEL != '二级' && this.pd.WORK_LEVEL != '一级') {
if (!this.pd.APPROVE_USER_ID) {
uni.showToast({
icon: 'none',
title: '请选择动火审批负责人',
duration: 1500
});
required = false
}
}
if (this.pd.WORK_LEVEL == '特级' || this.pd.WORK_LEVEL == '一级') {
if (new Date(this.pd.WORK_END_DATE).getTime() - new Date(this.pd.WORK_START_DATE).getTime() >= 28800000) {
uni.showToast({
icon: 'none',
title: '动火级别为特级或一级时动火作业开始时间与结束时间应不超过8小时请重新选择',
duration: 1500
});
required = false
}
}
if (new Date(this.pd.WORK_END_DATE).getTime() - new Date(this.pd.WORK_START_DATE).getTime() <= 0) {
uni.showToast({
icon: 'none',
title: '作业开始时间不能晚于或等于结束时间,请重新选择',
duration: 1500
});
required = false
}
if (this.pd.WORK_LEVEL == '二级') {
if (new Date(this.pd.WORK_END_DATE).getTime() - new Date(this.pd.WORK_START_DATE).getTime() >= 259200000) {
uni.showToast({
icon: 'none',
title: '动火级别为二级时动火作业开始时间与结束时间应不超过72小时请重新选择',
duration: 1500
});
required = false
}
}
if (!required) {
return
}
console.log(this.confessList)
for (let i = 0; i < this.confessList.length; i++) {
if (!this.confessList[i].CONFESS_USER_ID) {
uni.showToast({
icon: 'none',
title: '请选择安全交底人',
duration: 1500
});
required = false
}
}
// 清空非必要信息
for (let i = 0; i < this.confessList.length; i++) {
this.confessList[i].confessUserList = []
}
}
const formData = {}
Object.keys(this.pd).map(key => {
formData[key] = this.pd[key]
})
formData.CORPINFO_ID = corpinfoId
formData.CREATOR = loginUser.USER_ID
formData.OPERATOR = loginUser.USER_ID
formData.ACTION_USER = loginUser.NAME
formData.APPLY_STATUS = STATUS
formData.WORK_LONGITUDE = this.pd.WORK_LONGITUDE
formData.WORK_LATITUDE = this.pd.WORK_LATITUDE
formData.dongHuoCaoZuoRenPic = this.pd.dongHuoCaoZuoRenPic
formData.CORPINFO_ID = loginUser.CORPINFO_ID
formData.USER_ID = loginUser.USER_ID
formData.confessList = JSON.stringify(this.confessList)
this.buttonloading = true
uni.request({
url: basePath + "/app/hotwork/cfd/" + _this.msg,
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
data: {
...formData,
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: (res) => {
if (res.data.result == 'success') {
for (let i = 0; i < this.pd.dongHuoCaoZuoRenPic.length; i++) {
uni.uploadFile({
url: basePath + "/app/hotwork/cfd/uploadImg",
filePath: this.pd.dongHuoCaoZuoRenPic[i],
name: 'FFILE',
formData: {
HOTWORK_ID: res.data.HOTWORK_ID
},
success: () => {
if (i === this.pd.dongHuoCaoZuoRenPic.length - 1) {
uni.hideLoading();
uni.showToast({
title: '提交成功',
duration: 1500
});
_this.goback()
this.buttonloading = false
}
},
fail: (err) => {
uni.hideLoading();
uni.showModal({
content: err.errMsg,
showCancel: false
});
}
})
}
}else{
uni.hideLoading();
uni.showToast({
title: res.data.message,
duration: 1500
});
this.buttonloading = false
}
},
fail: (err) => {
uni.hideLoading();
uni.showModal({
content: err.errMsg,
showCancel: false
});
}
})
},
// 获取动火列表
getLimitSpace() {
var _this = this;
uni.request({
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
url: basePath + '/app/limitspace/listAllSpace?tm=' + new Date().getTime(),
data: {
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: function (res) {
_this.limitSpaceList = res.data.varList;
}
});
},
getSafetyCheck(){
var _this = this;
uni.request({
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
url: basePath + '/app/hotwork/cfd/getSafetyCheckItem?tm=' + new Date().getTime(),
data: {
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: function (res) {
_this.measuresList = res.data.measuresList;
}
});
},
levelChange(e) {
this.levelindex = e.detail.value;
this.pd.WORK_LEVEL = this.levelList[this.levelindex].name;
if (e.detail.value == '2') {
this.pd.AUDIT_DEPARTMENT_ID = '';
this.pd.AUDIT_DEPARTMENT_NAME = '';
this.pd.AUDIT_USER_ID = '';
this.pd.AUDIT_USER_NAME = '';
this.pd.APPROVE_DEPARTMENT_ID = '';
this.pd.APPROVE_DEPARTMENT_NAME = '';
this.pd.APPROVE_USER_ID = '';
this.pd.APPROVE_USER_NAME = '';
}
if (e.detail.value == '1') {
this.pd.APPROVE_DEPARTMENT_ID = '';
this.pd.APPROVE_DEPARTMENT_NAME = '';
this.pd.APPROVE_USER_ID = '';
this.pd.APPROVE_USER_NAME = '';
}
this.$forceUpdate();//强制刷新
},
getDept() {
var _this = this;
uni.request({
url: basePath + '/app/sys/listTree',//部门下拉接口
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
data: {
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: (res) => {
if ("success" == res.data.result) {
_this.treeNode = eval(res.data.zTreeNodes);
} else {
uni.showToast({
title: res.data.message,
duration: 2000
});
}
}
});
},
//获取人员列表
getUserList(dept, list, i) {
//发送 post 请求
var _this = this
uni.request({
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
url: basePath + '/app/sys/listUser',
data: {
DEPARTMENT_ID: dept,
tm: new Date().getTime(),
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: function (res) {
if ("success" == res.data.result) {
if (i > -1) {
_this[list][i] = [];
_this[list][i] = res.data.userList;
_this.$forceUpdate();//强制刷新
} else {
_this[list] = res.data.userList;
}
} else {
uni.showToast({
title: res.data.message,
duration: 2000
});
}
}
})
},
getUserListForJiaoDiRen(dept, index) {
//发送 post 请求
var _this = this
uni.request({
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
url: basePath + '/app/sys/listUser',
data: {
DEPARTMENT_ID: dept,
tm: new Date().getTime(),
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: function (res) {
if ("success" === res.data.result) {
_this.confessList[index].confessUserList = res.data.userList;
} else {
uni.showToast({
title: res.data.message,
duration: 2000
});
}
}
})
},
getWorkUserList() {
//发送 post 请求
var _this = this
uni.request({
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
url: basePath + '/app/personnelmanagement/cfd/list',
data: {
tm: new Date().getTime(),
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: function (res) {
if ("success" == res.data.result) {
_this.workUserList = res.data.varList
console.log(_this.workUserList)
} else {
uni.showToast({
title: res.data.message,
duration: 2000
});
}
}
})
},
isBlankList(userType) {
switch (userType) {
case 'analyze':
if (this.analyzeUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择气体分析单位',
duration: 1500
})
}
break
case 'confirm':
if (this.confirmUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择作业负责人单位',
duration: 1500
})
}
break
case 'guardian':
if (this.guardianUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择监护人单位',
duration: 1500
})
}
break
case 'confess':
if (this.confessUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择安全交底人单位',
duration: 1500
})
}
break
case 'acceptconfess':
if (this.acceptconfessUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择接受交底人单位',
duration: 1500
})
}
break
case 'leader':
if (this.leaderUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择所在单位',
duration: 1500
})
}
break
case 'audit':
if (this.auditUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择安全管理部门',
duration: 1500
})
}
break
case 'approve':
if (this.approveUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择审批单位',
duration: 1500
})
}
break
case 'monitor':
if (this.monitorUserList.length == 0) {
uni.showToast({
icon: 'none',
title: '请先选择动火前验票部门',
duration: 1500
})
}
break
case 'accept':
if (this.acceptUserList.length === 0) {
uni.showToast({
icon: 'none',
title: '请先选择验收部门',
duration: 1500
})
}
break
case 'xiangMu':
if (this.confirmUserList.length === 0) {
uni.showToast({
icon: 'none',
title: '请先选择项目主管部门负责人',
duration: 1500
})
}
break
case 'anQuanCuoShiQueRenRen':
if (this.safetyUserList.length === 0) {
uni.showToast({
icon: 'none',
title: '请先选择项安全措施确认人',
duration: 1500
})
}
break
}
},
// 确定回调事件
confesstreeConfirm(e ,index) {
this.isUps = false;
this.confessList[index].CONFESS_DEPARTMENT_ID = e[0].id;
this.confessList[index].CONFESS_DEPARTMENT_NAME = e[0].name;
this.confessList[index].CONFESS_USER_ID = ''
this.confessList[index].CONFESS_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserListForJiaoDiRen(e[0].id, index);
},
// 确定回调事件
confesstreeAcceptconfirm(e) {
this.isUps = false;
this.pd.ACCEPT_CONFESS_DEPARTMENT_ID = e[0].id;
this.pd.ACCEPT_CONFESS_DEPARTMENT_NAME = e[0].name;
this.pd.ACCEPT_CONFESS_USER_ID = ''
this.pd.ACCEPT_CONFESS_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'acceptconfessUserList');
},
// 取消回调事件
guardiantreeCancel(e) {
this.isUps = false;
},
// 取消回调事件
confesstreeCancel(e) {
this.isUps = false;
},
// 取消回调事件
acceptconfesstreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showGuardianTree() {
this.isUps = true
this.$refs.tkiTree_guardian._show();
},
// 显示树形选择器
showConfessTree(index) {
this.isUps = true
this.$refs.tkiTree_confess[index]._show();
},
// 显示树形选择器
showAcceptconfessTree() {
this.isUps = true
this.$refs.tkiTree_acceptconfess._show();
},
PickerGuardian(e) {
this.guardianindex = e.detail.value;
this.pd.GUARDIAN_USER_ID = this.guardianUserList[this.guardianindex].USER_ID;
this.pd.GUARDIAN_USER_NAME = this.guardianUserList[this.guardianindex].NAME;
this.$forceUpdate();//强制刷新
},
PickerConfess(e,index) {
this.confessList[index].confessindex = e.detail.value;
this.confessList[index].CONFESS_USER_ID = this.confessList[index].confessUserList[e.detail.value].USER_ID;
this.confessList[index].CONFESS_USER_NAME = this.confessList[index].confessUserList[e.detail.value].NAME;
this.$forceUpdate();//强制刷新
},
PickerAcceptconfess(e) {
this.acceptconfessindex = e.detail.value;
this.pd.ACCEPT_CONFESS_USER_ID = this.acceptconfessUserList[this.acceptconfessindex].USER_ID;
this.pd.ACCEPT_CONFESS_USER_NAME = this.acceptconfessUserList[this.acceptconfessindex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*分析人
*/
// 确定回调事件
analyzetreeConfirm(e) {
this.isUps = false;
this.pd.ANALYZE_DEPARTMENT_ID = e[0].id;
this.pd.ANALYZE_DEPARTMENT_NAME = e[0].name;
this.pd.ANALYZE_USER_ID = ''
this.pd.ANALYZE_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'analyzeUserList');
},
// 取消回调事件
analyzetreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showAnalyzeTree() {
this.isUps = true
this.$refs.tkiTree_analyze._show();
},
PickerAnalyze(e) {
this.analyzeindex = e.detail.value;
this.pd.ANALYZE_USER_ID = this.analyzeUserList[this.analyzeindex].USER_ID;
this.pd.ANALYZE_USER_NAME = this.analyzeUserList[this.analyzeindex].NAME;
this.$forceUpdate();//强制刷新
},
PickerWorkuser(e) {
this.workuserindex = e.detail.value;
this.pd.WORK_USER_ID = this.workUserList[this.workuserindex].USER_ID;
this.pd.WORK_USER = this.workUserList[this.workuserindex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*作业负责人
*/
// 确定回调事件
xiangMuBuMenConfirm(e) {
this.isUps = false;
this.pd.BELONGING_DEPARTMENT_ID = e[0].id;
this.pd.BELONGING_DEPARTMENT_NAME = e[0].name;
this.pd.BELONGING_USER_ID = ''
this.pd.BELONGING_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'confirmUserList');
},
// 取消回调事件
xiangMuBuMenCancel(e) {
this.isUps = false;
},
xiangMuBuMenUserConfirm(e) {
this.xiangMuFuZheRenIndex = e.detail.value;
this.pd.BELONGING_USER_ID = this.confirmUserList[this.xiangMuFuZheRenIndex].USER_ID;
this.pd.BELONGING_USER_NAME = this.confirmUserList[this.xiangMuFuZheRenIndex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*确认人
*/
// 确定回调事件
confirmtreeConfirm(e) {
this.isUps = false;
this.pd.CONFIRM_DEPARTMENT_ID = e[0].id;
this.pd.CONFIRM_DEPARTMENT_NAME = e[0].name;
this.pd.CONFIRM_USER_ID = ''
this.pd.CONFIRM_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'confirmUserList');
},
// 取消回调事件
confirmtreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showConfirmTree() {
this.isUps = true
this.$refs.tkiTree_confirm._show();
},
showXiangMuTree() {
this.isUps = true
this.$refs.xiangMu_confirm._show();
},
PickerConfirm(e) {
this.confirmindex = e.detail.value;
this.pd.CONFIRM_USER_ID = this.confirmUserList[this.confirmindex].USER_ID;
this.pd.CONFIRM_USER_NAME = this.confirmUserList[this.confirmindex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*监护人
*/
// 确定回调事件
guardiantreeConfirm(e) {
this.isUps = false;
this.pd.GUARDIAN_DEPARTMENT_ID = e[0].id;
this.pd.GUARDIAN_DEPARTMENT_NAME = e[0].name;
this.pd.GUARDIAN_USER_ID = ''
this.pd.GUARDIAN_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'guardianUserList');
},
// 确定回调事件
leadertreeConfirm(e) {
this.isUps = false;
this.pd.LEADER_DEPARTMENT_ID = e[0].id;
this.pd.LEADER_DEPARTMENT_NAME = e[0].name;
this.pd.LEADER_USER_ID = ''
this.pd.LEADER_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'leaderUserList');
},
// 取消回调事件
leadertreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showLeaderTree() {
this.isUps = true
this.$refs.tkiTree_leader._show();
},
PickerLeader(e) {
this.leaderindex = e.detail.value;
this.pd.LEADER_USER_ID = this.leaderUserList[this.leaderindex].USER_ID;
this.pd.LEADER_USER_NAME = this.leaderUserList[this.leaderindex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*安全管理部门负责人
*/
// 确定回调事件
audittreeConfirm(e) {
this.isUps = false;
this.pd.AUDIT_DEPARTMENT_ID = e[0].id;
this.pd.AUDIT_DEPARTMENT_NAME = e[0].name;
this.pd.AUDIT_USER_ID = ''
this.pd.AUDIT_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'auditUserList');
},
// 取消回调事件
audittreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showAuditTree() {
this.isUps = true
this.$refs.tkiTree_audit._show();
},
PickerAudit(e) {
this.auditindex = e.detail.value;
this.pd.AUDIT_USER_ID = this.auditUserList[this.auditindex].USER_ID;
this.pd.AUDIT_USER_NAME = this.auditUserList[this.auditindex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*审批人
*/
// 确定回调事件
approvetreeConfirm(e) {
this.isUps = false;
this.pd.APPROVE_DEPARTMENT_ID = e[0].id;
this.pd.APPROVE_DEPARTMENT_NAME = e[0].name;
this.pd.APPROVE_USER_ID = ''
this.pd.APPROVE_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'approveUserList');
},
// 取消回调事件
approvetreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showApproveTree() {
this.isUps = true
this.$refs.tkiTree_approve._show();
},
PickerApprove(e) {
this.approveindex = e.detail.value;
this.pd.APPROVE_USER_ID = this.approveUserList[this.approveindex].USER_ID;
this.pd.APPROVE_USER_NAME = this.approveUserList[this.approveindex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*在岗班长
*/
// 确定回调事件
monitortreeConfirm(e) {
this.isUps = false;
this.pd.MONITOR_DEPARTMENT_ID = e[0].id;
this.pd.MONITOR_DEPARTMENT_NAME = e[0].name;
this.pd.MONITOR_USER_ID = ''
this.pd.MONITOR_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'monitorUserList');
},
// 取消回调事件
monitortreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showMonitorTree() {
this.isUps = true
this.$refs.tkiTree_monitor._show();
},
PickerMonitor(e) {
this.monitorindex = e.detail.value;
this.pd.MONITOR_USER_ID = this.monitorUserList[this.monitorindex].USER_ID;
this.pd.MONITOR_USER_NAME = this.monitorUserList[this.monitorindex].NAME;
this.$forceUpdate();//强制刷新
},
/*
*验收部门
*/
// 确定回调事件
accepttreeConfirm(e) {
this.isUps = false;
this.pd.ACCEPT_DEPARTMENT_ID = e[0].id;
this.pd.ACCEPT_DEPARTMENT_NAME = e[0].name;
this.pd.ACCEPT_USER_ID = ''
this.pd.ACCEPT_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'acceptUserList');
},
// 取消回调事件
accepttreeCancel(e) {
this.isUps = false;
},
// 显示树形选择器
showAcceptTree() {
this.isUps = true
this.$refs.tkiTree_accept._show();
},
PickerAccept(e) {
this.acceptindex = e.detail.value;
this.pd.ACCEPT_USER_ID = this.acceptUserList[this.acceptindex].USER_ID;
this.pd.ACCEPT_USER_NAME = this.acceptUserList[this.acceptindex].NAME;
this.$forceUpdate();//强制刷新
},
changeStartDate(e) {
this.pd.WORK_START_DATE = e
this.$forceUpdate();//强制刷新
},
changeEndDate(e) {
this.pd.WORK_END_DATE = e
this.$forceUpdate();//强制刷新
},
goback() {
var pages = getCurrentPages(); // 获取当前页面栈
var prePage = pages[pages.length - 2]; // 上二级页面
prePage.$vm.initflag = true; // A 页面 init方法 为true
uni.navigateBack({delta: 1});
uni.hideLoading();
},
radioType(e) {
this.HASINSTRUCTOR = e.detail.value
},
goToEdit() {
this.forbidEdit = false;
},
//2024-01-25 created by liu jun description: 上传动火人图片
ChooseImage() {
var _this = this;
uni.chooseImage({
count: 4, //默认9
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
sourceType: ['camera', 'album'], //从相册选择
success: (res) => {
if (this.pd.dongHuoCaoZuoRenPic.length !== 0) {
this.pd.dongHuoCaoZuoRenPic = this.pd.dongHuoCaoZuoRenPic.concat(res.tempFilePaths)
} else {
this.pd.dongHuoCaoZuoRenPic = res.tempFilePaths
}
}
});
},
ViewImage(e) {
uni.previewImage({
urls: this.pd.dongHuoCaoZuoRenPic,
current: e.currentTarget.dataset.url
});
},
DelImg1(e) {
uni.showModal({
title: '双控平台',
content: '确定要删除这张图片吗?',
cancelColor: "#000000",
cancelText: '取消',
confirmText: '确定',
success: res => {
if (res.confirm) {
this.form.imgList.splice(e.currentTarget.dataset.index, 1)
}
}
})
},
// 2024-01-31 created by liu jun description: 安全交底人多选
addConfessUser(){
var _this = this;
let o = {
CONFESS_DEPARTMENT_NAME:'',
CONFESS_DEPARTMENT_ID:'',
CONFESS_USER_NAME:'',
CONFESS_USER_ID:'',
confessUserList:[],
confessindex: -1
};
_this.confessList.push(o);
},
removeConfessUser(index){
this.confessList.splice(index,1);
},
// 2024-02-03 created by liu jun description:安全措施确认人信息选怎
showSafetyTree(){
this.isUps = true
this.$refs.tkiTree_safety._show();
},
safetyTreeConfirm(e) {
this.isUps = false;
this.pd.SAFETY_DEPARTMENT_ID = e[0].id;
this.pd.SAFETY_DEPARTMENT_NAME = e[0].name;
this.pd.SAFETY_USER_ID = ''
this.pd.SAFETY_USER_NAME = ''
this.$forceUpdate();//强制刷新
this.getUserList(e[0].id, 'safetyUserList');
},
safetyTreeCancel(e) {
this.isUps = false;
},
PickerSafety(e) {
this.safetyIndex = e.detail.value;
this.pd.SAFETY_USER_ID = this.safetyUserList[this.safetyIndex].USER_ID;
this.pd.SAFETY_USER_NAME = this.safetyUserList[this.safetyIndex].NAME;
this.$forceUpdate();//强制刷新
},
}
}
</script>
<style>
</style>