<template> <view > <cu-custom bgColor="bg-gradual-blueness" :isBack="!otherIdentification && !otherAssignments" :isShowModal="true"> <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" v-if="pd.CHECK_NO != '' && pd.CHECK_NO != null"> <view class="title">编号:</view> {{pd.CHECK_NO}} </view> <view class="cu-form-group"> <view class="title">吊装地点:</view> <input name="input" ref="WORK_PLACE" :disabled="forbidEdit" v-model="pd.WORK_PLACE" placeholder="请输入吊装地点"></input> </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" > <view class="title">吊具名称:</view> <input name="input" ref="TOOL_NAME" :disabled="forbidEdit" v-model="pd.TOOL_NAME" placeholder="请输入吊具名称"></input> </view> <view class="cu-form-group" > <view class="title">吊装作业人:</view> <input name="input" ref="WORK_USER" :disabled="forbidEdit" v-model="pd.WORK_USER" placeholder="请输入吊装作业人"></input> </view> <view class="cu-form-group" > <view class="title">司索人:</view> <input name="input" ref="SISUO_USER" :disabled="forbidEdit" v-model="pd.SISUO_USER" placeholder="请输入司索人"></input> </view> <!-- <view class="cu-form-group" >--> <!-- <view class="title">监护人:</view>--> <!-- <input name="input" ref="GUARDIAN_USER" :disabled="forbidEdit" v-model="pd.GUARDIAN_USER" placeholder="请输入监护人"></input>--> <!-- </view>--> <view class="cu-form-group"> <view class="title">指挥人员:</view> <input name="input" ref="PROJECT_MANAGER" :disabled="forbidEdit" v-model="pd.PROJECT_MANAGER" placeholder="请输入指挥人员"></input> </view> <view class="cu-form-group"> <view class="title">吊物质量(吨):</view> <input name="input" ref="PART_WEIGHT" type="number" :disabled="forbidEdit" v-model="pd.PART_WEIGHT" placeholder="请输入吊物质量(吨)"></input> </view> <view class="cu-form-group bb-default group-picker"> <view class="title">作业级别:</view> <picker @change="PickerWorkLevel" :value="workLevelIndex" :disabled="forbidEdit" :range="workLevelList" range-key="NAME"> <view class="picker"> {{!pd.WORK_LEVEL? '请选择' : ''}} {{pd.WORK_LEVEL == '1' ? '一级作业级别' : ''}} {{pd.WORK_LEVEL == '2' ? '二级作业级别' : ''}} {{pd.WORK_LEVEL == '3' ? '三级作业级别' : ''}} </view> </picker> </view> <!-- <view class="cu-form-group">--> <!-- <view class="title">安全交底人:</view>--> <!-- <input name="input" ref="CONFESS_USER" :disabled="forbidEdit" v-model="pd.CONFESS_USER" placeholder="请输入安全交底人"></input>--> <!-- </view>--> <!-- <view class="cu-form-group">--> <!-- <view class="title">接受交底人:</view>--> <!-- <input name="input" ref="ACCEPT_CONFESS_USER" :disabled="forbidEdit" v-model="pd.ACCEPT_CONFESS_USER" placeholder="请输入接受交底人"></input>--> <!-- </view>--> <view 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 class="cu-form-group bb-default"> <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 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-textarea" > <view class="cu-form-title"> 关联的其他特殊作业及安全作业票编号 <button class="cu-btn bg-green sm reg-btn" v-if="!forbidEdit && pd.APPLY_STATUS != -99" @click="otherAssignments = true">选择其它</button> </view> <textarea maxlength="255" auto-height :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" @click="otherIdentification = true">选择其它</button> </view> <textarea maxlength="255" :disabled="forbidEdit" v-model="pd.HAZARD_IDENTIFICATION" placeholder="请输入风险辨识结果"></textarea> </view> </view> <view class="wui-form-list" style="padding-top: 20upx;" v-if="pd.APPLY_STATUS > 1"> <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_HOISTING_MEASURES_ID"> <uni-td> <view style="margin-bottom: 20upx;"> {{item.PROTECTIVE_MEASURES}} </view> <view class="wui-border" v-if="item.QUESTION1 && item.STATUS=='1'"> <view class="cu-form-group" v-if="item.QUESTION1"> <view class="title">{{item.QUESTION1}}</view> <input name="input" :disabled="forbidEdit" v-model="item.ANSWER1" placeholder="请输入"></input> </view> </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">涉 及</text></radio> </view> </radio-group> </uni-td> </uni-tr> </uni-table> </view> <view v-if="pd.LEADER_USER_MEASURES || pd.CONFIRM_USER_MEASURES || pd.AUDIT_USER_MEASURES || pd.APPROVE_USER_MEASURES"> <view class="cu-form-group"> <view class="title">其他安全措施:</view> </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.CONFIRM_USER_MEASURES" class="ty-group"> <text class="title"> 所在单位:</text> <text>{{ pd.CONFIRM_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> </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" 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="!forbidEdit"> <view class="title">所在单位</view> <view v-if="pd.CONSTRUCTION_DEPARTMENT_NAME" class="cleared" @click="cancelSelect('construction')"> 清除 </view> <view class="picker-tree-box"> <view class="picker-tree" @tap="showConstructionTree">{{pd.CONSTRUCTION_DEPARTMENT_NAME?pd.CONSTRUCTION_DEPARTMENT_NAME:'请选择'}}</view> </view> <tki-tree ref="tkiTree_construction" :selectParent=true :range="treeNode" rangeKey="name" @confirm="constructiontreeConfirm" @cancel="constructiontreeCancel"></tki-tree> </view> <view class="cu-form-group" v-if="!forbidEdit "> <view class="title">所在单位负责人</view> <picker @change="PickerConstruction" :value="constructionindex" :range="constructionUserList" range-key="NAME" :disabled="constructionUserList.length == 0" @click="isBlankList('construction')"> <view class="picker"> {{pd.CONSTRUCTION_USER_NAME?pd.CONSTRUCTION_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 v-if="pd.AUDIT_DEPARTMENT_NAME" class="cleared" @click="cancelSelect('audit')"> 清除 </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="!forbidEdit"> <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="!forbidEdit && pd.WORK_LEVEL != '2' && pd.WORK_LEVEL != '3'"> <view class="title">审批部门</view> <view v-if="pd.APPROVE_DEPARTMENT_NAME" class="cleared" @click="cancelSelect('approve')"> 清除 </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="!forbidEdit && pd.WORK_LEVEL != '2' && pd.WORK_LEVEL != '3'"> <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" > <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="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="showConfessTree">{{pd.CONFESS_DEPARTMENT_NAME?pd.CONFESS_DEPARTMENT_NAME:'请选择'}}</view> </view> <tki-tree ref="tkiTree_confess" :selectParent=true :range="treeNode" rangeKey="name" @confirm="confesstreeConfirm" @cancel="confesstreeCancel"></tki-tree> </view> <view class="cu-form-group" > <view class="title">安全交底人</view> <picker @change="PickerConfess" :value="confessindex" :range="confessUserList" range-key="NAME" :disabled="confessUserList.length == 0" @click="isBlankList('confess')"> <view class="picker"> {{pd.CONFESS_USER_NAME?pd.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="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" v-if="!forbidEdit"> <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" v-if="!forbidEdit "> <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 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.CONSTRUCTION_USER_SIGNER_PATH"> <view v-if="pd.CONSTRUCTION_USER_NAME" class="cu-form-textarea" style="border: none;"> <view class="cu-form-title">所在单位意见</view> <textarea maxlength="255" disabled="disabled" v-model="pd.CONSTRUCTION_CONTENT"></textarea> </view> <!-- <view v-if="pd.CONSTRUCTION_USER_NAME" class="cu-form-group" style="border-bottom: 1px solid #eee;border-top: 1px dashed #eee;">--> <!-- <view class="title">所在单位负责人</view>--> <!-- {{pd.CONSTRUCTION_USER_NAME}} {{pd.CONSTRUCTION_USER_SIGNER_TIME}}--> <!-- </view>--> <view v-if="pd.CONSTRUCTION_USER_NAME" style="border-bottom: 1px solid #eeeeee; border-top: 1px solid #eeeeee"> <view class="cu-form-group" > <view class="title">所在单位负责人</view> {{pd.CONSTRUCTION_USER_NAME}} {{pd.CONSTRUCTION_USER_SIGNER_TIME}} </view> <view style="width: 400upx; height: 200upx; margin: 30upx;margin-top: 0upx;margin-bottom: 20upx;" > <image :src="baseImgPath + pd.CONSTRUCTION_USER_SIGNER_PATH" mode="aspectFill" @click="previewImage(baseImgPath + pd.CONSTRUCTION_USER_SIGNER_PATH)" style="height: 100%;"></image> </view> </view> </view> <view v-if="pd.AUDIT_USER_SIGNER_PATH"> <view v-if="pd.AUDIT_USER_NAME" 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 v-if="pd.AUDIT_USER_NAME" 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 v-if="pd.APPROVE_USER_NAME" class="cu-form-textarea" style="border-bottom: 1px dashed #eee;"> <view class="cu-form-title">审批部门意见</view> <textarea maxlength="255" disabled="disabled" v-model="pd.APPROVE_CONTENT"></textarea> </view> <view v-if="pd.APPROVE_USER_NAME" 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="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" :loading="buttonloading" class="cu-btn bg-blue margin-tb-sm lg" @click="$noMultipleClicks(goSubmit,'1')">提交</button> <button v-if="!forbidEdit" :loading="buttonloading" class="cu-btn bg-green margin-tb-sm lg" @click="$noMultipleClicks(goSubmit,'0')">暂存</button> <button v-if="forbidEdit" 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="otherIdentification" v-model="pd.HAZARD_IDENTIFICATION" type="identification"/> <other-select :visible.sync="otherAssignments" v-model="pd.SPECIAL_WORK" type="assignments"/> </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', files: [], files1: [], noClick:true, treeNode:[],//部门下拉数据 workLevelList:[ {NAME:'一级作业级别',ID:'1'}, {NAME:'二级作业级别',ID:'2'}, {NAME:'三级作业级别',ID:'3'}, ], workLevelIndex:-1, leaderUserList:[], leaderindex:-1, constructionUserList:[], constructionindex:-1, guardianUserList:[], guardianindex:-1, confessUserList: [], confessindex:-1, acceptconfessUserList:[], acceptconfessindex:-1, applyUserList:[], applyindex:-1, auditUserList:[], auditindex:-1, approveUserList:[], approveindex:-1, acceptUserList:[], acceptindex:-1, pd:{ OTHER_PROTECTIVE_MEASURES: ';_;;_;;_;', WORK_LONGITUDE: '', WORK_LATITUDE: '', },// 数据 measuresList:[], rules:[ // {name:'CHECK_NO',message:'请输入编号'}, {name:'WORK_PLACE',message:'请输入吊装地点'}, {name:'TOOL_NAME',message:'请输入吊具名称'}, {name:'WORK_USER',message:'请输入吊装作业人'}, {name:'SISUO_USER',message:'请输入司索人'}, {name:'GUARDIAN_USER_ID',message:'请选择监护人'}, {name:'CONFESS_USER_ID',message:'请选择安全交底人'}, {name:'ACCEPT_CONFESS_USER_ID',message:'请选择接受交底人'}, {name:'PROJECT_MANAGER',message:'请输入指挥人员'}, {name:'PART_WEIGHT',message:'请输入吊物质量(吨)'}, {name:'WORK_LEVEL',message:'请选择作业级别'}, {name:'WORK_CONTENT',message:'请输入吊物内容'}, {name:'HAZARD_IDENTIFICATION',message:'请输入风险辨识结果'}, // {name:'CONFESS_USER',message:'请输入安全交底人'}, // {name:'ACCEPT_CONFESS_USER',message:'请输入接受交底人'}, {name:'WORK_START_DATE',message:'请选择作业开始时间'}, {name:'WORK_END_DATE',message:'请选择作业结束时间'}, {name:'LEADER_USER_ID',message:'请选择作业指挥负责人'}, {name:'ACCEPT_USER_ID',message:'请选择完工验收部门负责人'}, ], todayDate:'', otherIdentification:false, otherAssignments:false, } }, onLoad(event){ this.todayDate = formatDate(new Date(), 'yyyy-MM-dd hh:mm'); this.pd.HOISTING_ID = event.HOISTING_ID; if(this.pd.HOISTING_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 = loginUser.NAME; this.forbidEdit = false; this.pd.OTHER_PROTECTIVE_MEASURES = '' // this.getCode(); } // 初始化现场作业负责人 this.getDept(); loginSession(); }, methods: { /** 坐标定位 */ showMapModal() { var _this = this uni.navigateTo({ url: '/pages/map/mapPro', events: { // 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据 acceptDataFromOpenedPage: function (e) { // console.log(e.data) // console.info(e.data.longitue) _this.pd.WORK_LONGITUDE = e.data.longitue; _this.pd.WORK_LATITUDE = e.data.latitude; // console.info(_this.pd) } }, }) }, getCode(){ uni.request({ url: basePath + '/app/gfHoisting/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/gfHoisting/goEdit', method: 'POST', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { HOISTING_ID: _this.pd.HOISTING_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, { "LEADER_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[0], "CONFIRM_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[1], "AUDIT_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[2], "APPROVE_USER_MEASURES": _this.pd.OTHER_PROTECTIVE_MEASURES.split(";_;")[3] }) _this.files1 = res.data.imgList1; _this.pd.OTHER_PROTECTIVE_MEASURES = '' _this.measuresList = res.data.measuresList _this.files = res.data.imgList; if(_this.pd.APPLY_STATUS < 1){ _this.forbidEdit = false; } 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.ACCEPT_DEPARTMENT_ID,'acceptUserList'); this.getUserList(this.pd.CONSTRUCTION_DEPARTMENT_ID,'constructionUserList'); } else if ("exception" == data.result) { uni.showToast({ title: '错误', duration: 2000 }); } } }); }, ViewShowImage1(url) { let files1 = []; files1.push(url) uni.previewImage({ urls: files1, current: 0 }); }, ViewShowImage(url) { let files = []; files.push(url) uni.previewImage({ urls: files, 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(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 (!required) { return } } 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 this.buttonloading = true uni.request({ url: basePath + "app/gfHoisting/" + _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) => { uni.showToast({ icon:'none', title: '保存成功', duration: 2000 }); _this.goback() this.buttonloading = false }, fail: (err) => { uni.hideLoading(); uni.showModal({ content: err.errMsg, showCancel: false }); } }) }, 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 }); } } }); }, PickerWorkLevel(e) { this.workLevelIndex = e.detail.value; this.pd.WORK_LEVEL=this.workLevelList[this.workLevelIndex].ID; this.pd.WORK_LEVEL_NAME=this.workLevelList[this.workLevelIndex].NAME; if(e.detail.value == '1' || e.detail.value == '2'){ this.pd.APPROVE_DEPARTMENT_ID=''; this.pd.APPROVE_DEPARTMENT_NAME=''; this.pd.APPROVE_USER_ID=''; this.pd.APPROVE_USER_NAME=''; } this.$forceUpdate();//强制刷新 }, //获取人员列表 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 }); } } }) }, /* *监护人 */ // 确定回调事件 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'); }, /* *安全交底人 */ // 确定回调事件 confesstreeConfirm(e) { this.isUps=false; this.pd.CONFESS_DEPARTMENT_ID=e[0].id; this.pd.CONFESS_DEPARTMENT_NAME=e[0].name; this.pd.CONFESS_USER_ID = '' this.pd.CONFESS_USER_NAME = '' this.$forceUpdate();//强制刷新 this.getUserList(e[0].id,'confessUserList'); }, /* *接受交底人 */ // 确定回调事件 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() { this.isUps=true this.$refs.tkiTree_confess._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) { this.confessindex = e.detail.value; this.pd.CONFESS_USER_ID=this.confessUserList[this.confessindex].USER_ID; this.pd.CONFESS_USER_NAME=this.confessUserList[this.confessindex].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();//强制刷新 }, /* *施工单位 */ // 确定回调事件 constructiontreeConfirm(e) { this.isUps=false; this.pd.CONSTRUCTION_DEPARTMENT_ID=e[0].id; this.pd.CONSTRUCTION_DEPARTMENT_NAME=e[0].name; this.pd.CONSTRUCTION_USER_ID = '' this.pd.CONSTRUCTION_USER_NAME ='' this.$forceUpdate();//强制刷新 this.getUserList(e[0].id,'constructionUserList'); }, // 取消回调事件 constructiontreeCancel(e) { this.isUps=false; }, // 显示树形选择器 showConstructionTree() { this.isUps=true this.$refs.tkiTree_construction._show(); }, isBlankList(userType) { switch(userType) { case 'leader': if(this.leaderUserList.length == 0) { uni.showToast({ icon: 'none', title: '请先选择作业指挥单位', duration: 1500 }) } break case 'construction': if(this.constructionUserList.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 '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 'approve': if(this.approveUserList.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 } }, PickerConstruction(e) { this.constructionindex = e.detail.value; this.pd.CONSTRUCTION_USER_ID=this.constructionUserList[this.constructionindex].USER_ID; this.pd.CONSTRUCTION_USER_NAME=this.constructionUserList[this.constructionindex].NAME; this.$forceUpdate();//强制刷新 }, // 确定回调事件 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();//强制刷新 }, //清除所选部门及部门人员 cancelSelect(dept) { if (dept == 'construction') { this.pd.CONSTRUCTION_DEPARTMENT_ID = '' this.pd.CONSTRUCTION_DEPARTMENT_NAME = '' this.pd.CONSTRUCTION_USER_ID = '' this.pd.CONSTRUCTION_USER_NAME = '' this.constructionUserList = [] this.constructionindex = -1 this.$refs.tkiTree_construction._reTreeList() this.$refs.tkiTree_construction._initTree(this.treeNode) } else if (dept == 'audit') { this.pd.AUDIT_DEPARTMENT_ID = '' this.pd.AUDIT_DEPARTMENT_NAME = '' this.pd.AUDIT_USER_ID = '' this.pd.AUDIT_USER_NAME = '' this.auditUserList = [] this.auditindex = -1 this.$refs.tkiTree_audit._reTreeList() this.$refs.tkiTree_audit._initTree(this.treeNode) } else if (dept == 'approve') { this.pd.APPROVE_DEPARTMENT_ID = '' this.pd.APPROVE_DEPARTMENT_NAME = '' this.pd.APPROVE_USER_ID = '' this.pd.APPROVE_USER_NAME = '' this.approveUserList = [] this.approveindex = -1 this.$refs.tkiTree_approve._reTreeList() this.$refs.tkiTree_approve._initTree(this.treeNode) } 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; } } } </script> <style> </style>