<template> <view :class="isUps == true ? 'prevent' : ''"> <cu-custom bgColor="bg-gradual-blueness" :isBack="true"> <block slot="backText">返回</block> <block slot="content">隐患随手拍</block> </cu-custom> <scroll-view scroll-y="false" > <view class="form"> <!-- <view class="cu-form-textarea"> <view class="cu-form-title">检查内容</view> <view class="f24 text-black"> {{pd.CHECK_CONTENT}} </view> </view> --> <view class="cu-bar bg-white"> <view class="action" style="font-size: 28upx; font-weight: bold; color: #000;"> 隐患照片 </view> <view class="action"> {{imgList.length}}/4 </view> </view> <view class="cu-form-group"> <view class="grid col-4 grid-square flex-sub"> <view class="bg-img" v-for="(item,index) in imgList" :key="index" @tap="ViewImage" data-type="0" :data-url="imgList[index].filePath"> <image :src="imgList[index].filePath" mode="aspectFill"></image> <view class="cu-tag bg-red" @tap.stop="DelImg" data-type="0" :data-index="index"> <text class='cuIcon-close'></text> </view> </view> <view class="solids" @tap.stop="openAuth('CAMERA')" v-if="imgList.length<4"> <text class='cuIcon-cameraadd'></text> </view> </view> </view> <view class="cu-bar bg-white"> <view class="action"> 隐患视频 </view> <view class="action"> {{videoList.length}}/1 </view> </view> <view class="cu-form-group"> <view class="grid col-4 grid-square flex-sub"> <view class="bg-img" v-for="(item,vindex) in videoList" :key="vindex" style="background-color: #000"> <image src="/static/icon-apps/video.png" mode="aspectFill" @click="playVideo" :data-src="videoList[vindex].filePath"></image> <view class="cu-tag bg-red" @tap.stop="DelVideo" data-type="0" :data-index="vindex"> <text class='cuIcon-close'></text> </view> </view> <view class="solids" @tap.stop="openAuthVideo('CAMERA')" v-if="videoList.length == 0"> <text class='cuIcon-cameraadd'></text> </view> </view> </view> <view class="cu-form-textarea margin-top"> <view class="cu-form-title">隐患描述</view> <textarea maxlength="-1" :disabled="modalName!=null" v-model="pd.HIDDENDESCR" placeholder="请对隐患进行详细描述(必填项)"></textarea> </view> <view class="cu-form-textarea margin-top"> <view class="cu-form-title">隐患部位</view> <textarea maxlength="-1" :disabled="modalName!=null" v-model="pd.HIDDENPART" placeholder="请对隐患部位进行详细描述(必填项)"></textarea> </view> <view class="cu-form-group margin-top"> <view class="title">隐患级别</view> <picker @change="levelPickerChange" :value="lindex" :range="levelList" range-key="NAME"> <view class="picker"> {{pd.HIDDENLEVELNAME?pd.HIDDENLEVELNAME:'请选择'}} </view> </picker> </view> <view class="cu-form-group margin-top"> <view class="title">隐患类型</view> <view class="picker-tree-box"> <view class="picker-tree" @tap="showZgTree2">{{pd.HIDDENTYPENAME?pd.HIDDENTYPENAME:'请选择'}}</view> </view> <tki-tree ref="tkiTree2" :selectParent="true" :range="hiddenTypeList" rangeKey="name" @confirm="zgtreeConfirm2" @cancel="zgtreeCancel2"></tki-tree> <!-- <picker @change="typePickerChange" :value="tindex" :range="hiddenTypeList" range-key="NAME">--> <!-- <view class="picker">--> <!-- {{pd.HIDDENTYPENAME?pd.HIDDENTYPENAME:'请选择'}}--> <!-- </view>--> <!-- </picker>--> </view> <!-- <view class="cu-form-group margin-top">--> <!-- <view class="title">验收部门</view>--> <!-- <view class="picker" @tap="showYsTree">{{pd.CHECKDEPTNAME?pd.CHECKDEPTNAME:'请选择'}}</view>--> <!-- <tki-tree ref="tkiTree1"--> <!-- :selectParent=true--> <!-- :range="treeNode"--> <!-- rangeKey="name"--> <!-- @confirm="ystreeConfirm"></tki-tree>--> <!-- </view>--> <view class="cu-form-group margin-top"> <view class="title">是否立即整改</view> <radio-group class="selected"> <!-- 没有选择隐患级别时占位使用--> <view class="group mr20" v-show="!pd.HIDDENLEVEL"> <radio class='radio' value="1" :checked="RECTIFICATIONTYPE==1" @click="radioType(1)"></radio> <text>是</text> </view> <!-- 选择了重大隐患--> <view class="group mr20" v-show="pd.HIDDENLEVEL === 'hiddenLevel0002'"> <radio class='radio' value="1" :checked="true" disabled></radio> <text>是</text> </view> <!-- 选择了一般隐患--> <view class="group mr20" v-show="pd.HIDDENLEVEL === 'hiddenLevel0001'"> <radio class='radio' value="1" :checked="RECTIFICATIONTYPE==1" @click="radioType(1)"></radio> <text>是</text> </view> <view class="group"> <radio class='radio' value="2" :checked="RECTIFICATIONTYPE==2" @click="radioType(2)"></radio> <text>否</text> </view> </radio-group> </view> <view class="cu-form-group margin-top" v-if="RECTIFICATIONTYPE==2"> <view class="title">整改责任部门</view> <view class="picker-tree-box"> <view class="picker-tree" @tap="showZgTree">{{pd.RECTIFICATIONDEPTNAME?pd.RECTIFICATIONDEPTNAME:'请选择'}}</view> </view> <tki-tree ref="tkiTree" :selectParent=true :range="treeNode" rangeKey="name" @confirm="zgtreeConfirm" @cancel="zgtreeCancel"></tki-tree> </view> <view class="cu-form-group margin-top" v-if="RECTIFICATIONTYPE==2 && rectificationUserList.length>0"> <view class="title">整改责任人</view> <picker @change="PickerZgr" :value="uindex" :range="rectificationUserList" range-key="NAME"> <view class="picker"> {{pd.RECTIFICATIONORNAME?pd.RECTIFICATIONORNAME:'请选择'}} </view> </picker> </view> <view class="cu-form-group margin-top" v-if="RECTIFICATIONTYPE==2"> <view class="title">整改期限</view> <picker mode="date" :value="pd.RECTIFICATIONDEADLINE" :start="rectifyPlanCompletionStartTime" @change="changeDate"> <view class="picker"> {{pd.RECTIFICATIONDEADLINE?pd.RECTIFICATIONDEADLINE:'请选择'}} </view> </picker> </view> <view class="cu-form-textarea margin-top" v-if="RECTIFICATIONTYPE==1"> <view class="cu-form-title">整改描述</view> <textarea maxlength="-1" :disabled="modalName!=null" v-model="pd.RECTIFYDESCR" placeholder="请对隐患进行整改描述(必填项)"></textarea> </view> <view class="cu-bar bg-white margin-top" v-if="RECTIFICATIONTYPE==1"> <view class="action"> 整改后图片 </view> <view class="action"> {{imgList1.length}}/4 </view> </view> <view class="cu-form-group" v-if="RECTIFICATIONTYPE==1"> <view class="grid col-4 grid-square flex-sub"> <view class="bg-img" v-for="(item,index) in imgList1" :key="index" @tap="ViewImage" data-type="1" :data-url="imgList1[index].filePath"> <image :src="imgList1[index].filePath" mode="aspectFill"></image> <view class="cu-tag bg-red" @tap.stop="DelImg" data-type="1" :data-index="index"> <text class='cuIcon-close'></text> </view> </view> <view class="solids" @tap.stop="openAuthZg('CAMERA')" v-if="imgList1.length<4"> <text class='cuIcon-cameraadd'></text> </view> </view> </view> </view> <view class="padding flex flex-direction"> <button :loading="buttonloading" class="cu-btn bg-blue margin-tb-sm lg" @click="$noMultipleClicks(goSubmit)">提交</button> </view> </scroll-view> <view :class="['cu-modal',{'show':modalShow}]" v-if="modalShow"> <view class="cu-dialog"> <view class="cu-bar bg-white justify-end"> <view class="content">播放视频</view> <view class="action" @tap="modalShow = false"> <text class="cuIcon-close text-red"></text> </view> </view> <video :src="videoSrc" :autoplay="true" @fullscreenchange="fullScreenHandler"></video> <view class="cu-bar bg-white justify-end"> <view class="action"> <button class="cu-btn line-green text-green" @click="modalShow = false">关闭</button> </view> </view> </view> </view> <yk-authpup ref="authpup" type="top" @changeAuth="ChooseImage(0)" :permissionID="permissionID"></yk-authpup> <yk-authpup ref="authpup_video" type="top" @changeAuth="chooseVideo(0)" :permissionID="permissionID"></yk-authpup> <yk-authpup ref="authpup_zg" type="top" @changeAuth="ChooseImage(1)" :permissionID="permissionID"></yk-authpup> </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 gcoord from '@/common/gcoord.js' import ykAuthpup from "@/components/yk-authpup/yk-authpup" export default { components: { tkiTree,ykAuthpup }, data() { return { permissionID:'', isUps:false, buttonloading: false, msg:'add', riskId:'', itemId:'', index:'', noClick:true, pd:[{"RECTIFICATIONTYPE":2}], imgList: [], imgList1: [], HIDDENDESCR:'',//隐患描述 HIDDENPART:'',//隐患部位 modalName: null, id:'', CHECK_CONTENT:'', checkId:'', RECTIFYDESCR:'',//整改描述 RECTIFICATIONTYPE:2,//是否立即 treeNode:[],//部门下拉数据 RECTIFICATIONDEPT:'',//整改部门 RECTIFICATIONDEPTNAME:'请选择',//整改部门 CHECKDEPT:'',//验收部门 CHECKDEPTNAME:'请选择',//验收部门 rectificationUserList:[], RECTIFICATIONOR:'',//整改人 uindex: -1, lindex: -1, levelList:[], tindex: -1, hiddenTypeList:[], HIDDENLEVEL:'',//隐患级别 RECTIFICATIONDEADLINE:'',//整改期限 rectifyPlanCompletionStartTime:'', LISTMANAGER_ID:'', CHECKRECORD_ID:'', videoSrc:'', modalShow:false, videoList:[] } }, onLoad(event){ let now = new Date(); var tomorrow=now.setDate(now.getDate()+1); tomorrow=new Date(tomorrow); this.rectifyPlanCompletionStartTime = formatDate(tomorrow, 'yyyy-MM-dd'); this.pd.HIDDEN_ID = event.HIDDEN_ID; this.CHECKRECORD_ID = event.CHECKRECORD_ID; if(this.pd.HIDDEN_ID){ this.msg="edit"; this.getData(); }else { // this.pd.CHECK_CONTENT = JSON.parse(decodeURIComponent(event.checkContent)); // this.riskId = JSON.parse(decodeURIComponent(event.riskId)); // this.itemId = JSON.parse(decodeURIComponent(event.itemId)); // this.index = event.index; this.LISTMANAGER_ID = event.listId; } this.getDept(); this.getLevel(); this.getHiddenType(); loginSession(); }, methods: { fullScreenHandler(e) { if (uni.getSystemInfoSync().platform == "ios") { return } }, getData() { var _this = this; uni.showLoading({ title: '请稍候' }) uni.request({ url: basePath + '/app/hidden/goRiskListCheckEdit', // /app/hidden/goEdit method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { HIDDEN_ID: _this.pd.HIDDEN_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.RECTIFICATIONTYPE=_this.pd.RECTIFICATIONTYPE; let files=res.data.hImgs; for(var i=0;i<files.length;i++){ let img={}; img.filePath=baseImgPath+files[i].FILEPATH; img.id=files[i].IMGFILES_ID; _this.imgList.push(img); } let files1=res.data.rImgs; for(var i=0;i<files1.length;i++){ let img={}; img.filePath=baseImgPath+files[i].FILEPATH; img.id=files[i].IMGFILES_ID; _this.imgList1.push(img); } _this.getUserList(); } else if ("exception" == data.result) { uni.showToast({ title: '错误', duration: 2000 }); } } }); }, 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 }); } } }); }, // 确定回调事件 zgtreeConfirm(e) { this.isUps=false; this.pd.RECTIFICATIONDEPT=e[0].id; this.pd.RECTIFICATIONDEPTNAME=e[0].name; this.uindex=-1; this.pd.RECTIFICATIONOR=''; this.pd.RECTIFICATIONORNAME=''; this.$forceUpdate();//强制刷新 this.getUserList(); }, // 取消回调事件 zgtreeCancel(e) { this.isUps=false; }, // 显示树形选择器 showZgTree() { this.isUps=true this.$refs.tkiTree._show(); }, // 确定回调事件 ystreeConfirm(e) { this.pd.CHECKDEPT=e[0].id; this.pd.CHECKDEPTNAME=e[0].name; this.$forceUpdate();//强制刷新 }, // 显示树形选择器 showYsTree() { this.$refs.tkiTree1._show(); }, //获取人员列表 getUserList(){ //发送 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:_this.pd.RECTIFICATIONDEPT, tm:new Date().getTime(), CORPINFO_ID:loginUser.CORPINFO_ID, USER_ID:loginUser.USER_ID, }, success: function(res){ if("success" == res.data.result){ _this.rectificationUserList=res.data.userList; }else{ uni.showToast({ title: res.data.message, duration: 2000 }); } } }) }, PickerZgr(e) { this.uindex = e.detail.value; this.pd.RECTIFICATIONOR=this.rectificationUserList[this.uindex].USER_ID; this.pd.RECTIFICATIONORNAME=this.rectificationUserList[this.uindex].NAME; this.$forceUpdate();//强制刷新 }, //获取数据字典数据 getLevel: function () { var _this = this; uni.request({ method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, url: basePath + '/dictionaries/getLevels?tm=' + new Date().getTime(), data: { DICTIONARIES_ID: '5e7cf8620ba54ad89719d0be62133c7a', CORPINFO_ID:loginUser.CORPINFO_ID, USER_ID:loginUser.USER_ID, }, success: function (res) { _this.levelList = res.data.list.filter(function (level) { return level.NAME !== '轻微隐患'; }); // _this.levelList = res.data.list; } }); }, levelPickerChange(e) { if(e.detail.value==1){ this.RECTIFICATIONTYPE = 2; } this.lindex = e.detail.value; this.pd.HIDDENLEVEL=this.levelList[this.lindex].BIANMA; this.pd.HIDDENLEVELNAME=this.levelList[this.lindex].NAME; this.$forceUpdate();//强制刷新 }, getHiddenType: function () { var _this = this; uni.request({ method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, url: basePath + '/dictionaries/getLevels', data: { DICTIONARIES_ID: '3babc15144444bdc8d763d0af2bdfff8', CORPINFO_ID:loginUser.CORPINFO_ID, USER_ID:loginUser.USER_ID, }, success: function ({data}) { for (let i = 0; i < data.list.length; i++) { if (data.list[i].BIANMA.indexOf(loginUser.PROVINCE) > -1) { _this.getTrainDicList(data.list[i].DICTIONARIES_ID) break } } } }); }, getTrainDicList(parentId) { // trainDicList var _this = this; uni.request({ method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, url: basePath + '/dictionaries/listAllDictToParId', data: { parentId, CORPINFO_ID:loginUser.CORPINFO_ID, USER_ID:loginUser.USER_ID, }, success: function ({data}) { let zTreeNodes = data.zTreeNodes zTreeNodes = zTreeNodes.replace(/"nodes":\[/g, '"children":[') _this.hiddenTypeList = JSON.parse(zTreeNodes) } }); }, showZgTree2(){ this.isUps=true this.$refs.tkiTree2._show(); }, zgtreeCancel2(e){ this.isUps=false; }, zgtreeConfirm2(e){ this.isUps=false; if(e[0]?.parents.length === 1){ this.pd.HIDDENTYPE = [e[0]?.parents[0]?.id || '', e[0]?.id || '']; this.pd.HIDDENTYPENAME = [e[0]?.parents[0]?.name || '', e[0]?.name || ''].join('/') }else if(e[0]?.parents.length === 2) { this.pd.HIDDENTYPE = [e[0]?.parents[0]?.id || '', e[0]?.parents[1]?.id || '', e[0]?.id || '']; this.pd.HIDDENTYPENAME = [e[0]?.parents[0]?.name || '', e[0]?.parents[1]?.name || '', e[0]?.name || ''].join('/') }else{ this.pd.HIDDENTYPE = [e[0]?.id || '']; this.pd.HIDDENTYPENAME = [e[0]?.name || ''].join('/'); } }, typePickerChange(e) { this.tindex = e.detail.value; this.pd.HIDDENTYPE=this.hiddenTypeList[this.tindex].BIANMA; this.pd.HIDDENTYPENAME=this.hiddenTypeList[this.tindex].NAME; this.$forceUpdate();//强制刷新 }, changeDate(e) { this.pd.RECTIFICATIONDEADLINE = e.detail.value this.$forceUpdate();//强制刷新 }, openAuth(permissionID){ this.permissionID = permissionID; setTimeout(()=>{ this.$refs['authpup'].open(); },200) }, openAuthZg(permissionID){ this.permissionID = permissionID; setTimeout(()=>{ this.$refs['authpup_zg'].open(); },200) }, //图片上传 ChooseImage(e) { var _this = this; var ss=4-this.imgList.length; uni.chooseImage({ count: ss, //默认9 sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有 sourceType: ['camera','album'], //从相册选择 success: (res) => { if(e==0) { for (let i = 0; i < res.tempFilePaths.length; i++) { let img={}; img.id=''; img.filePath=res.tempFilePaths[i]; this.imgList.push(img) } }else { for (let i = 0; i < res.tempFilePaths.length; i++) { let img = {}; img.id = ''; img.filePath = res.tempFilePaths[i]; this.imgList1.push(img) } } } }); }, ViewImage(e) { console.info(e.currentTarget.dataset.type) if(e.currentTarget.dataset.type==0) { let files =[]; for(var i=0;i<this.imgList.length;i++){ files.push(this.imgList[i].filePath) } uni.previewImage({ urls: files, current: e.currentTarget.dataset.url }); }else{ let files =[]; for(var i=0;i<this.imgList1.length;i++){ files.push(this.imgList1[i].filePath) } uni.previewImage({ urls: files, current: e.currentTarget.dataset.url }); } }, DelImg(e) { var _this = this; let i=e.currentTarget.dataset.index uni.showModal({ title: '操作提示', content: '确定要删除这张图片吗?', cancelColor:"#000000", cancelText: '取消', confirmText: '确定', success: res => { if (res.confirm) { if(e.currentTarget.dataset.type==0) { if(_this.imgList[i].id) { uni.showLoading({ title: '处理中' }) uni.request({ url: basePath+'/app/imgfiles/delete', method: 'POST', dataType: 'json', header: { 'Content-type':'application/x-www-form-urlencoded' }, data: { IMGFILES_ID: _this.imgList[i].id, CORPINFO_ID:loginUser.CORPINFO_ID, USER_ID:loginUser.USER_ID, }, success: (res) => { uni.hideLoading(); uni.showToast({ icon: 'none', title: '删除成功', duration: 1500 }); _this.imgList.splice(i, 1) }, fail: (err) => { uni.hideLoading(); uni.showModal({ content: err.errMsg, showCancel: false }); } }) }else { this.imgList.splice(e.currentTarget.dataset.index, 1) } }else{ if(_this.imgList1[i].id) { uni.showLoading({ title: '处理中' }) uni.request({ url: basePath+'/app/imgfiles/delete', method: 'POST', dataType: 'json', header: { 'Content-type':'application/x-www-form-urlencoded' }, data: { IMGFILES_ID: _this.imgList1[i].id, CORPINFO_ID:loginUser.CORPINFO_ID, USER_ID:loginUser.USER_ID, }, success: (res) => { uni.hideLoading(); uni.showToast({ icon: 'none', title: '删除成功', duration: 1500 }); _this.imgList1.splice(i, 1) }, fail: (err) => { uni.hideLoading(); uni.showModal({ content: err.errMsg, showCancel: false }); } }) }else { this.imgList1.splice(e.currentTarget.dataset.index, 1) } } } } }) }, textareaAInput(e){ this.pd.HIDDENDESCR= e.detail.value }, textareaBInput(e){ this.pd.HIDDENPART= e.detail.value }, textareaCInput(e){ this.pd.RECTIFYDESCR= e.detail.value }, goSubmit() { var _this = this; // if (!_this.pd.CHECKDEPT) { // uni.showToast({ // icon: 'none', // title: '请选择验收部门', // duration: 1500 // }); // return; // } if (_this.imgList.length <= 0) { uni.showToast({ icon: 'none', title: '请上传隐患图片', duration: 1500 }); return; } if (!_this.pd.HIDDENDESCR) { uni.showToast({ icon: 'none', title: '请填隐患描述', duration: 1500 }); return; } if (!_this.pd.HIDDENPART) { uni.showToast({ icon: 'none', title: '请填隐患部位', duration: 1500 }); return; } if (!_this.pd.HIDDENLEVEL) { uni.showToast({ icon: 'none', title: '请选择隐患级别', duration: 1500 }); return; } if (!_this.pd.HIDDENTYPE) { uni.showToast({ icon: 'none', title: '请选择隐患类型', duration: 1500 }); return; } if (_this.RECTIFICATIONTYPE == 1 && !_this.pd.RECTIFYDESCR) { uni.showToast({ icon: 'none', title: '请填整改描述', duration: 1500 }); return; } if (_this.RECTIFICATIONTYPE == 1 && _this.imgList1.length <= 0) { uni.showToast({ icon: 'none', title: '请上传整改后图片', duration: 1500 }); return; } if (_this.RECTIFICATIONTYPE == 2 && !_this.pd.RECTIFICATIONDEPT) { uni.showToast({ icon: 'none', title: '请选择整改部门', duration: 1500 }); return; } if (_this.RECTIFICATIONTYPE == 2 && !_this.pd.RECTIFICATIONOR) { uni.showToast({ icon: 'none', title: '请选择整改人', duration: 1500 }); return; } if (_this.RECTIFICATIONTYPE == 2 && !_this.pd.RECTIFICATIONDEADLINE) { uni.showToast({ icon: 'none', title: '请选择整改期限', duration: 1500 }); return; } var fileList = []; for (var i = 0; i < _this.imgList.length; i++) { if(!_this.imgList[i].id){ var file = {}; file.type = 3; file.filePath = _this.imgList[i].filePath; fileList.push(file); } } for (var i = 0; i < _this.videoList.length; i++) { if(!_this.videoList[i].id){ var file = {}; file.type = 3; file.filePath = _this.videoList[i].filePath; fileList.push(file); } } if (_this.RECTIFICATIONTYPE == 1){ for (var i = 0; i < _this.imgList1.length; i++) { if(!_this.imgList1[i].id) { var file = {}; file.type = 4; file.filePath = _this.imgList1[i].filePath; fileList.push(file); } } } new Promise((resolve, reject) => { _this.submit().then(() => {resolve();}) }).then(() => { var i=0; _this.uploadImg(fileList,i).then(() => {resolve();}) }).then(() => { var pages = getCurrentPages(); // 获取当前页面栈 var prePage = pages[pages.length - 2]; // 上一个页面 // var task = prePage.$vm.list[_this.index]; if(_this.index) { prePage.$vm.initflag = true; // A 页面 init方法 为true // prePage.$vm.list[_this.index].ISNORMAL = 1; // prePage.$vm.list[_this.index].HIDDEN_ID = _this.pd.HIDDEN_ID; } uni.navigateBack({}); uni.hideLoading(); }) }, uploadImg(tempFilePaths,i){ return new Promise((resolve, reject) => { var _this = this; if(tempFilePaths.length==0){ resolve(); } uni.showLoading({ title: '上传中' }) uni.uploadFile({ url: basePath+'/app/imgfiles/add', filePath: tempFilePaths[i].filePath, name: 'FFILE', formData: { 'TYPE': tempFilePaths[i].type, 'FOREIGN_KEY': _this.pd.HIDDEN_ID, CORPINFO_ID: loginUser.CORPINFO_ID, USER_ID: loginUser.USER_ID, }, success: (res) => { i++; if (tempFilePaths.length > i) { _this.uploadImg(tempFilePaths, i); } else { uni.hideLoading(); resolve(); } }, fail: (err) => { uni.hideLoading(); uni.showModal({ content: err.errMsg, showCancel: false }); } }) }) }, submit(){ return new Promise((resolve, reject) => { this.buttonloading = true var _this = this; // var pages = getCurrentPages(); // 获取当前页面栈 // var prePage = pages[pages.length - 2]; // 上一个页面 // var task = prePage.$vm.list[_this.index]; let longitude; let latitude; uni.getLocation({ type: 'GCJ02', success: function (res1) { longitude = res1.longitude; latitude = res1.latitude; var result = gcoord.transform( [longitude, latitude], // 经纬度坐标 gcoord.GCJ02, // 当前坐标系 gcoord.BD09 // 目标坐标系 ); longitude = result[0]; latitude = result[1]; //发送 post 请求提交保存 uni.request({ url: basePath+'/app/hidden/riskListCheckAppAdd', method: 'POST', dataType: 'json', header: { 'Content-type':'application/x-www-form-urlencoded' }, data: { HIDDEN_ID:_this.pd.HIDDEN_ID, SOURCE:'1', //STATE:'1', HIDDENDESCR:_this.pd.HIDDENDESCR, HIDDENPART:_this.pd.HIDDENPART, LATITUDE:latitude, LONGITUDE:longitude, RECTIFYDESCR:_this.pd.RECTIFYDESCR?_this.pd.RECTIFYDESCR:'', RECTIFICATIONDEADLINE:_this.pd.RECTIFICATIONDEADLINE?_this.pd.RECTIFICATIONDEADLINE:'', RECTIFICATIONTYPE:_this.RECTIFICATIONTYPE, RECTIFICATIONOR:_this.pd.RECTIFICATIONOR, HIDDENTYPE:_this.pd.HIDDENTYPE, HIDDENLEVEL:_this.pd.HIDDENLEVEL, RECTIFICATIONDEPT:_this.pd.RECTIFICATIONDEPT, // CHECKDEPT:_this.pd.CHECKDEPT?_this.pd.CHECKDEPT:'', // CHECK_CONTENT:_this.pd.CHECK_CONTENT, HIDDENFINDDEPT:deptId, CREATOR:loginUser.USER_ID, HIDDENTYPE_NAME:_this.pd.HIDDENTYPENAME, HIDDENTYPE1:_this.pd.HIDDENTYPE[0] || '', HIDDENTYPE2:_this.pd.HIDDENTYPE[1] || '', HIDDENTYPE3:_this.pd.HIDDENTYPE[2] || '', // RECORDITEM_ID:_this.itemId, // RISKITEM_ID:_this.riskId, CORPINFO_ID:loginUser.CORPINFO_ID, USER_ID:loginUser.USER_ID, }, success: (res) => { this.buttonloading = false if ("success" == res.data.result) { _this.pd.HIDDEN_ID= res.data.pd.HIDDEN_ID; resolve(); // prePage.$vm.initflag = true; // A 页面 init方法 为true // prePage.$vm.list[_this.index].ISNORMAL = 1; // prePage.$vm.list[_this.index].HIDDEN_ID = _this.HIDDEN_ID; // uni.navigateBack({}); // uni.hideLoading(); } else { uni.showToast({ title: res.data.msaesge, duration: 2000 }); } } }); }, fail: function(res){ uni.hideLoading(); uni.showToast({ title: "获取位置失败", duration: 2000 }); } }); }); }, radioType(e){ // if(e === 1 && this.pd.HIDDENLEVEL === 'hiddenLevel0002'){ // uni.showToast({ // title: '重大隐患不能立即整改', // duration: 2000 // }); // return // } this.RECTIFICATIONTYPE = e }, openAuthVideo(permissionID){ this.permissionID = permissionID; setTimeout(()=>{ this.$refs['authpup_video'].open(); },200) }, chooseVideo(e){ var _this = this; uni.chooseVideo({ maxDuration:60, count: 1, //默认9 // sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有 sourceType: ['camera','album'], //从相册选择 success: (res) => { if(res.tempFilePath.substring(res.tempFilePath.lastIndexOf(".") + 1, res.tempFilePath.length) === 'mp4'){ let img={}; img.id=''; img.filePath=res.tempFilePath; this.videoList.push(img) }else { uni.showToast({ title: "只能上传MP4格式", duration: 2000 }); } } }); }, DelVideo(e){ uni.showModal({ title: '', content: '确定要删除这个视频吗?', cancelColor: "#000000", cancelText: '取消', confirmText: '确定', success: res => { if (res.confirm) { this.videoList = [] } } }) }, playVideo(e) { this.videoSrc = e.currentTarget.dataset.src this.modalShow = true } } } </script> <style> .prevent { width: 100%; height: 100%; position: fixed; top: 0; left: 0; overflow: hidden; } .cu-form-title{ padding: 20upx 0; } .cu-form-textarea{ background-color: #ffffff; padding: 1upx 30upx 20upx; min-height: 100upx; } .cu-form-textarea textarea { height: 4.6em; width: 100%; line-height: 1.2em; flex: 1; font-size: 28upx; padding: 0; } .selected{ display: flex; align-items: center; height: 100upx; } .selected .radio{ transform:scale(0.8); margin-right: 10upx; } .group{ display: flex; align-items: center; } .cu-form-group .title{ font-size: 28upx; font-weight: bold; } .cu-bar .action:first-child { font-size: 28upx; } .cu-form-group .picker{ color: #808080; } .picker-tree{ color: #808080; } </style>