sx_yjb_app/pages/application/hidden-trouble-investigation/hidden-trouble-app/other-hidden-add.vue

1646 lines
54 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 :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 text-hui">检查内容</view>
<view class="f24 text-black">
{{pd.CHECK_CONTENT}}
</view>
</view> -->
<view class="cu-bar bg-white margin-top">
<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="ai_btn ">
<view class="ai_btn_con" @click="$noMultipleClicks(goIdentifyImg)">
<image src="../../../../static/ai_img.png" style="width: 16px;height: 16px"/>
<view class="text" style="margin-left: 5px;"> AI隐患识别与处置</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 text-hui">隐患描述</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 text-hui">隐患部位</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>
<view class="picker-tree-box">
<view class="picker-tree" @tap="showHiddenQyZgTree">
{{ pd.HIDDEN_DANGER_AREA_NAME ? pd.HIDDEN_DANGER_AREA_NAME : '请选择' }}
</view>
</view>
<tki-tree ref="tkiTreedd"
:selectParent=true
:range="treeNode"
rangeKey="name"
@confirm="zgtreeHiddenQy"
@cancel="zgtreeCancel"></tki-tree>
</view>
<view class="cu-form-group margin-top">
<view class="title">隐患标签</view>
<picker @change="hiddenDangerLabelPickerChange" :value="dangerLabellindex" :range="hiddenDangerLabelList"
range-key="NAME">
<view class="picker">
{{ pd.HIDDEN_DANGER_LABEL_NAME ? pd.HIDDEN_DANGER_LABEL_NAME : '请选择' }}
</view>
</picker>
</view>
<view class="cu-form-group margin-top">
<view class="title">隐患分级</view>
<picker @change="hiddenDangerClassificationPickerChange" :value="hiddenClassificationlindex"
:range="hiddenClassificationList" range-key="NAME">
<view class="picker">
{{ pd.HIDDEN_CLASSIFICATION_NAME ? pd.HIDDEN_CLASSIFICATION_NAME : '请选择' }}
</view>
</picker>
</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>
</view>
<view class="cu-form-group margin-top">
<view class="title text-hui">是否立即整改</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">-->
<!-- <view class="title">整改责任人</view>-->
<!-- <view style="position: relative">-->
<!-- <view class="search-input">-->
<!-- <input-->
<!-- type="text"-->
<!-- style="text-align: right"-->
<!-- v-model="searchRectificationUser"-->
<!-- placeholder="请输入整改责任人"-->
<!-- @input="filterRectificationUser"-->
<!-- @click="toggleRectifyDropdown"-->
<!-- >-->
<!-- <view class="search-icon" @click="toggleRectifyDropdown">-->
<!-- <text class="cuIcon-right"></text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view v-show="showRectifyDropdown" class="showbg" style="position: absolute; left: 0; top: 36px;">-->
<!-- <view-->
<!-- v-for="(user, index) in filteredRectificationUsers"-->
<!-- :key="index"-->
<!-- @click="selectRectificationUser(user)"-->
<!-- >-->
<!-- {{ user.NAME }}-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<!-- </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 text-hui">整改描述</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 class="cu-form-group margin-top" v-if="RECTIFICATIONTYPE==2">-->
<!-- <view class="title">隐患确认人部门</view>-->
<!-- <view class="picker-tree-box">-->
<!-- <view class="picker-tree" @tap="showQrTree">-->
<!-- {{ pd.CONFIRM_DEPT_NAME ? pd.CONFIRM_DEPT_NAME : '请选择' }}-->
<!-- </view>-->
<!-- </view>-->
<!-- <tki-tree ref="tkiTreeQr"-->
<!-- :selectParent=true-->
<!-- :range="treeNode"-->
<!-- rangeKey="name"-->
<!-- @confirm="fnHiddenConfirmDept"-->
<!-- @cancel="zgtreeCancel"></tki-tree>-->
<!-- </view>-->
<!-- <view class="cu-form-group margin-top" v-if="RECTIFICATIONTYPE==2">-->
<!-- <view class="title">隐患确认人</view>-->
<!-- <view style="position: relative">-->
<!-- <view class="search-input">-->
<!-- <input-->
<!-- type="text"-->
<!-- style="text-align: right"-->
<!-- v-model="searchConfirmUser"-->
<!-- placeholder="请输入确认人"-->
<!-- @input="filterConfirmUser"-->
<!-- @click="toggleConfirmDropdown"-->
<!-- >-->
<!-- <view class="search-icon" @click="toggleConfirmDropdown">-->
<!-- <text class="cuIcon-right"></text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view v-show="showAnalyzeDropdown" class="showbg" style="position: absolute; left: 0; top: 36px;">-->
<!-- <view-->
<!-- v-for="(user, index) in filteredConfirmUsers"-->
<!-- :key="index"-->
<!-- @click="selectConfirmUser(user)"-->
<!-- >-->
<!-- {{ user.NAME }}-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<view class="cu-form-group margin-top" v-if="RECTIFICATIONTYPE==2">
<view class="title">选择隐患确认人</view>
<view class="picker" @click="openPersonPopup" style="font-size: 28upx; flex: 1; display: flex; align-items: center; justify-content: flex-end; padding-right: 20upx;">
{{ searchPerson || '请选择确认人' }}
<text class="cuIcon-right" style="margin-left: 10upx;"></text>
</view>
</view>
<!-- 自定义弹窗 -->
<view :class="['cu-modal', {'show': personPopupShow}]" v-if="personPopupShow">
<view class="cu-dialog">
<view class="cu-bar bg-white justify-end">
<view class="content">请选择确认人</view>
<view class="action" @tap="closePersonPopup">
<text class="cuIcon-close text-red"></text>
</view>
</view>
<view class="padding">
<!-- 搜索框 -->
<view class="search-input">
<input
type="text"
v-model="popupSearch"
placeholder="请输入关键字"
@input="filterPopupList"
/>
<view class="search-icon">
<text class="cuIcon-search"></text>
</view>
</view>
<!-- 人员列表 -->
<scroll-view class="scroll-list" scroll-y="true" style="height: 400px; margin-top: 20px;">
<view v-for="(user, index) in filteredPopupList" :key="index" class="list-item" @click="selectPerson(user)">
{{ user.DEPT_POST_NAME }}
</view>
</scroll-view>
</view>
<view class="cu-bar bg-white justify-end">
<view class="action">
<button class="cu-btn line-green text-green" @click="closePersonPopup">取消</button>
</view>
</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" :show-fullscreen-btn="false" :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,
showRectifyDropdown: false,
filteredRectificationUsers: [],
searchRectificationUser: '',
showAnalyzeDropdown: false,
filteredConfirmUsers: [],
searchConfirmUser: '',
buttonloading: false,
msg:'riskListCheckAdd', // 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:'请选择',//验收部门
CONFIRM_USER: "", // 隐患确认人
CONFIRM_DEPT: "", // 隐患确认部门
rectificationUserList:[],
confirmUserList: [], // 隐患确认人
RECTIFICATIONOR:'',//整改人
uindex: -1,
lindex: -1,
levelList:[],
tindex: -1,
dangerLabellindex: -1,
hiddenClassificationlindex: -1,
hiddenClassificationList: [
{NAME: "公司级", BIANMA: "0"},
{NAME: "厂部级", BIANMA: "1"},
{NAME: "车间级", BIANMA: "2"},
{NAME: "班组级", BIANMA: "3"},
],
hiddenDangerLabelList: [
{NAME: "外施工", BIANMA: "1"},
{NAME: "厂内", BIANMA: "2"},
{NAME: "BOO、BOT项目", BIANMA: "3"},
],
hiddenTypeList:[],
HIDDENLEVEL:'',//隐患级别
RECTIFICATIONDEADLINE:'',//整改期限
rectifyPlanCompletionStartTime:'',
LISTMANAGER_ID:'',
CHECKRECORD_ID:'',
videoList:[],
videoSrc:'',
modalShow:false,
// ... 其他数据
searchPerson: '', // 显示在表单中的值
personPopupShow: false, // 控制弹窗显示
popupSearch: '', // 弹窗内的搜索关键词
filteredPopupList: [], // 弹窗内过滤后的人员列表
personList: []
}
},
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="riskListCheckEdit"; // edit
this.getPersonList();
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: {
openPersonPopup() {
// 提取括号前的名字
this.popupSearch = this.searchPerson.split('(')[0] || ''; // 关键:继承已选姓名
if (this.popupSearch.trim()) {
this.filterPopupList();
} else {
this.getPersonList();
this.filteredPopupList = [...this.personList];
}
this.personPopupShow = true;
},
// 关闭弹窗
closePersonPopup() {
this.personPopupShow = false;
const query = this.popupSearch.trim().toLowerCase();
if (!query) {
this.filteredPopupList = [...this.personList];
} else {
this.filteredPopupList = this.personList.filter(user => {
// 安全处理:将 undefined 转换为空字符串
const deptPostName = user.DEPT_POST_NAME ? user.DEPT_POST_NAME.toLowerCase() : '';
const userId = user.USER_ID ? user.USER_ID.toLowerCase() : '';
return deptPostName.includes(query) || userId.includes(query);
});
}
},
// 获取所有人员(接口)
getPersonList() {
uni.showLoading({
title: '加载中...',
mask: true
});
uni.request({
method: 'POST',
dataType: 'json',
header: {
'Content-type': 'application/x-www-form-urlencoded'
},
url: basePath + '/app/sys/listAllUserDePtAnfPost',
data: {
tm: new Date().getTime(),
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: (res) => {
uni.hideLoading();
if (res.data.result === 'success') {
this.personList = res.data.userList || []; // 保存原始数据
this.filteredPopupList = [...this.personList]; // 初始化为全部
} else {
uni.showToast({
title: res.data.message || '获取人员失败',
duration: 2000,
icon: 'none'
});
}
},
fail: () => {
uni.hideLoading();
uni.showToast({
title: '网络请求失败',
duration: 2000,
icon: 'none'
});
}
});
},
// 搜索过滤(弹窗内)
filterPopupList() {
const query = this.popupSearch.trim().toLowerCase();
if (!query) {
this.filteredPopupList = [...this.personList];
} else {
this.filteredPopupList = this.personList.filter(user => {
// 安全处理:将 undefined 转换为空字符串
const deptPostName = user.DEPT_POST_NAME ? user.DEPT_POST_NAME.toLowerCase() : '';
const userId = user.USER_ID ? user.USER_ID.toLowerCase() : '';
return deptPostName.includes(query) || userId.includes(query);
});
}
},
// 选择人员
selectPerson(user) {
this.searchPerson = user.DEPT_POST_NAME;
this.pd.CONFIRM_USER = user.USER_ID || '';
this.pd.CONFIRM_DEPT = user.DEPARTMENT_ID || '';
this.pd.CONFIRM_USER_NAME = user.DEPT_POST_NAME; // 保留完整信息用于提交
this.closePersonPopup();
},
filterRectificationUser() {
const query = this.searchRectificationUser.trim().toLowerCase();
if (!query) {
this.filteredRectificationUsers = this.rectificationUserList;
this.pd.RECTIFICATIONOR = '';
this.pd.RECTIFICATIONORNAME = '';
} else {
this.filteredRectificationUsers = this.rectificationUserList.filter(user =>
user.NAME.toLowerCase().includes(query)
);
}
},
toggleRectifyDropdown() {
if (!this.pd.RECTIFICATIONDEPT) {
uni.showToast({
icon: 'none',
title: '请选择整改部门',
duration: 1500
});
return;
}
if (!this.rectificationUserList.length) {
uni.showToast({
icon: 'none',
title: '部门下无整改责任人',
duration: 1500
});
this.searchRectificationUser = ""
return;
}
this.showRectifyDropdown = !this.showRectifyDropdown;
if (this.showRectifyDropdown) this.filterRectificationUser();
},
selectRectificationUser(user) {
this.searchRectificationUser = user.NAME;
this.pd.RECTIFICATIONOR = user.USER_ID;
this.pd.RECTIFICATIONORNAME = user.NAME;
this.showRectifyDropdown = false;
},
filterConfirmUser() {
const query = this.searchConfirmUser.trim().toLowerCase();
if (!query) {
this.filteredConfirmUsers = this.confirmUserList;
this.pd.CONFIRM_USER = '';
this.pd.CONFIRM_USER_NAME = '';
} else {
this.filteredConfirmUsers = this.confirmUserList.filter(user =>
user.NAME.toLowerCase().includes(query)
);
}
},
toggleConfirmDropdown() {
if (!this.pd.CONFIRM_DEPT) {
uni.showToast({
icon: 'none',
title: '请选择确认人部门',
duration: 1500
});
return;
}
if (!this.confirmUserList.length) {
uni.showToast({
icon: 'none',
title: '部门下无确认人',
duration: 1500
});
this.searchConfirmUser = ""
return;
}
this.showAnalyzeDropdown = !this.showAnalyzeDropdown;
if (this.showAnalyzeDropdown) this.filterConfirmUser();
},
selectConfirmUser(user) {
this.searchConfirmUser = user.NAME;
this.pd.CONFIRM_USER = user.USER_ID;
this.pd.CONFIRM_USER_NAME = user.NAME;
this.showAnalyzeDropdown = false;
},
hiddenDangerClassificationPickerChange(e) {
this.hiddenClassificationlindex = e.detail.value;
this.pd.HIDDEN_CLASSIFICATION = this.hiddenClassificationList[this.hiddenClassificationlindex].BIANMA;
this.pd.HIDDEN_CLASSIFICATION_NAME = this.hiddenClassificationList[this.hiddenClassificationlindex].NAME;
this.$forceUpdate();//强制刷新
},
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();
res.data.pd.HIDDENTYPE = res.data.pd.HIDDENTYPE ? res.data.pd.HIDDENTYPE.split(',') : []
res.data.pd.HIDDENTYPENAME = res.data.pd.HIDDENTYPE_NAME
_this.pd = res.data.pd; //参数map
_this.RECTIFICATIONTYPE=_this.pd.RECTIFICATIONTYPE;
_this.searchPerson = _this.pd.CONFIRM_DEPT_POST_NAME;
// _this.searchConfirmUser = _this.pd.CONFIRM_USER_NAME;
_this.searchRectificationUser = _this.pd.RECTIFICATIONORNAME;
if (_this.pd.HIDDEN_CLASSIFICATION == '0'){
_this.pd.HIDDEN_CLASSIFICATION_NAME = "公司级"
}
if (_this.pd.HIDDEN_CLASSIFICATION == '1'){
_this.pd.HIDDEN_CLASSIFICATION_NAME = "厂部级"
}
if (_this.pd.HIDDEN_CLASSIFICATION == '2'){
_this.pd.HIDDEN_CLASSIFICATION_NAME = "车间级"
}
if (_this.pd.HIDDEN_CLASSIFICATION == '3'){
_this.pd.HIDDEN_CLASSIFICATION_NAME = "班组级"
}
if (_this.pd.HIDDEN_DANGER_LABEL == '1'){
_this.pd.HIDDEN_DANGER_LABEL_NAME = "外施工"
}
if (_this.pd.HIDDEN_DANGER_LABEL == '2'){
_this.pd.HIDDEN_DANGER_LABEL_NAME = "厂内"
}
if (_this.pd.HIDDEN_DANGER_LABEL == '3'){
_this.pd.HIDDEN_DANGER_LABEL_NAME = "BOO、BOT项目"
}
let files=res.data.hImgs;
for(var i=0;i<files.length;i++){
let img={};
img.filePath=baseImgPath+files[i].FILEPATH;
if (files[i].FILEPATH.substring(files[i].FILEPATH.lastIndexOf("."), files[i].FILEPATH.length) != '.mp4') {
img.id = files[i].IMGFILES_ID;
_this.imgList.push(img);
} else {
img.id = files[i].IMGFILES_ID;
_this.videoList.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.pd.searchRectificationUser = '';
this.$forceUpdate();//强制刷新
this.getUserList();
},
showHiddenQyZgTree() {
this.isUps = true
this.$refs.tkiTreedd._show();
},
zgtreeHiddenQy(e) {
this.isUps = false;
this.pd.HIDDEN_DANGER_AREA = e[0].id;
this.pd.HIDDEN_DANGER_AREA_NAME = e[0].name;
this.uindex = -1;
this.$forceUpdate();//强制刷新
this.getUserList();
},
hiddenDangerLabelPickerChange(e) {
this.dangerLabellindex = e.detail.value;
this.pd.HIDDEN_DANGER_LABEL = this.hiddenDangerLabelList[this.dangerLabellindex].BIANMA;
this.pd.HIDDEN_DANGER_LABEL_NAME = this.hiddenDangerLabelList[this.dangerLabellindex].NAME;
this.$forceUpdate();//强制刷新
},
showQrTree() {
this.isUps = true
this.$refs.tkiTreeQr._show();
},
fnHiddenConfirmDept(e) {
this.isUps = false;
this.pd.CONFIRM_DEPT = e[0].id;
this.pd.CONFIRM_DEPT_NAME = e[0].name;
this.uindex = -1;
this.pd.CONFIRM_USER = '';
this.pd.CONFIRM_USER_NAME = '';
this.searchConfirmUser = '';
this.$forceUpdate();//强制刷新
this.getConfirmUserList();
},
getConfirmUserList() {
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.CONFIRM_DEPT,
tm: new Date().getTime(),
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
ISCONFIRM: 1,
},
success: function (res) {
if ("success" == res.data.result) {
_this.confirmUserList = res.data.userList;
} else {
uni.showToast({
title: res.data.message,
duration: 2000
});
}
}
})
},
// 取消回调事件
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
});
}
}
})
},
//获取数据字典数据
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;
}
});
},
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)
}
}
}
}
})
},
goIdentifyImg() {
if (this.imgList.length === 0) {
uni.showToast({
icon: 'none',
title: '请先上传图片',
duration: 2000
});
} else if (this.imgList.length > 1) {
uni.showToast({
icon: 'none',
title: '识别暂时只能上传一张图片',
duration: 2000
});
} else {
var _this = this;
if(this.imgList[0].id != ""){
uni.showToast({
icon: 'none',
title: '请删除图片重新上传图片后,再次进行图片识别',
duration: 2000
});
return;
}
_this.buttonloading = true
uni.showLoading({
title: '识别中...'
})
uni.uploadFile({
url: basePath + '/app/hidden/identifyImg',
filePath: _this.imgList[0].filePath,
name: 'FFILE',
formData: {
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: (res) => {
_this.buttonloading = false
_this.aiFlag = true
if ("success" == JSON.parse(res.data).result) {
const aiHiddens = JSON.parse(res.data).aiHiddens;
let hiddenDescr = ""
let rectificationSuggestions = ""
let legalBasis = ""
aiHiddens.forEach((item) => {
hiddenDescr += JSON.parse(item).hiddenDescr + ";"
rectificationSuggestions += JSON.parse(item).rectificationSuggestions + ";"
legalBasis += JSON.parse(item).legalBasis + ";"
})
_this.pd.HIDDENDESCR = hiddenDescr
_this.pd.LEGALBASIS = legalBasis
_this.pd.RECTIFYDESCR = rectificationSuggestions
_this.radioType(1)
} else {
uni.showToast({
icon: 'none',
title: "未识别图片中的隐患",
duration: 2000
});
}
uni.hideLoading();
},
fail: (err) => {
_this.buttonloading = false
uni.hideLoading();
uni.showModal({
content: err.errMsg,
showCancel: false
});
}
})
}
},
textareaAInput(e){
this.pd.HIDDENDESCR= e.detail.value
},
textareaBInput(e){
this.pd.HIDDENPART= e.detail.value
},
textareaCInput(e){
this.pd.RECTIFYDESCR= e.detail.value
},
async goSubmit() {
var _this = this;
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.HIDDEN_DANGER_AREA) {
uni.showToast({
icon: 'none',
title: '请选择隐患区域',
duration: 1500
});
return;
}
if (!_this.pd.HIDDEN_DANGER_LABEL) {
uni.showToast({
icon: 'none',
title: '请选择隐患标签',
duration: 1500
});
return;
}
if (!_this.pd.HIDDEN_CLASSIFICATION) {
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;
}
// if (_this.RECTIFICATIONTYPE == 2 && !_this.pd.CONFIRM_DEPT) {
// uni.showToast({
// icon: 'none',
// title: '请选择确认部门',
// duration: 1500
// });
// return;
// }
if (_this.RECTIFICATIONTYPE == 2 && !_this.pd.CONFIRM_USER) {
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);
}
}
}
const FILE_IDS = []
await _this.uploadPromise(fileList,FILE_IDS)
await _this.submit(FILE_IDS)
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();
},
async uploadPromise(tempFilePaths,FILE_IDS) {
if (tempFilePaths.length == 0) {
return
}
uni.showLoading({
title: '上传中'
})
for (let i = 0; i < tempFilePaths.length; i++) {
await this.uploadImg(tempFilePaths[i],FILE_IDS)
}
},
uploadImg(file,FILE_IDS) {
return new Promise((resolve, reject) => {
var _this = this;
uni.uploadFile({
url: basePath + '/app/imgfiles/add',
filePath: file.filePath,
name: 'FFILE',
formData: {
'TYPE': file.type,
'FOREIGN_KEY':'',
CORPINFO_ID: loginUser.CORPINFO_ID,
USER_ID: loginUser.USER_ID,
},
success: (res) => {
res.data = JSON.parse(res.data)
FILE_IDS.push(res.data.pd.IMGFILES_ID)
resolve();
},
fail: (err) => {
uni.hideLoading();
uni.showModal({
content: err.errMsg,
showCancel: false
});
}
})
})
},
submit(FILE_IDS) {
return new Promise((resolve, reject) => {
var _this = this;
// var pages = getCurrentPages(); // 获取当前页面栈
// var prePage = pages[pages.length - 2]; // 上一个页面
// var task = prePage.$vm.list[_this.index];
let longitude;
let latitude;
console.info(_this.LISTMANAGER_ID);
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 请求提交保存
this.buttonloading = true
uni.request({
url: basePath+'/app/hidden/'+_this.msg,
method: 'POST',
dataType: 'json',
header: {
'Content-type':'application/x-www-form-urlencoded'
},
data: {
HIDDEN_ID:_this.pd.HIDDEN_ID,
// 风险清单2 隐患清单3
SOURCE:'3',
STATE:'0',
HIDDENDESCR:_this.pd.HIDDENDESCR,
// HIDDENPART:_this.pd.HIDDENPART,
LATITUDE:latitude,
LONGITUDE:longitude,
HIDDEN_CLASSIFICATION: _this.pd.HIDDEN_CLASSIFICATION ? _this.pd.HIDDEN_CLASSIFICATION : '', //隐患分级
HIDDEN_DANGER_AREA: _this.pd.HIDDEN_DANGER_AREA ? _this.pd.HIDDEN_DANGER_AREA : '', //隐患区域
HIDDEN_DANGER_LABEL: _this.pd.HIDDEN_DANGER_LABEL ? _this.pd.HIDDEN_DANGER_LABEL : '', //隐患标签
RECTIFYDESCR:_this.pd.RECTIFYDESCR?_this.pd.RECTIFYDESCR:'',
RECTIFICATIONDEADLINE:_this.pd.RECTIFICATIONDEADLINE?_this.pd.RECTIFICATIONDEADLINE:'',
RECTIFICATIONTYPE:_this.RECTIFICATIONTYPE,
RECTIFICATIONOR:_this.pd.RECTIFICATIONOR ?_this.pd.RECTIFICATIONOR:'',
RECTIFICATIONDEPT:_this.pd.RECTIFICATIONDEPT ? _this.pd.RECTIFICATIONDEPT : '',
CONFIRM_DEPT: _this.pd.CONFIRM_DEPT, //确认部门
CONFIRM_USER: _this.pd.CONFIRM_USER, //确认人
HIDDENTYPE:_this.pd.HIDDENTYPE,
HIDDENLEVEL:_this.pd.HIDDENLEVEL,
// CHECKDEPT:_this.pd.CHECKDEPT?_this.pd.CHECKDEPT:'',
// CHECK_CONTENT:_this.pd.CHECK_CONTENT,
HIDDENFINDDEPT:deptId,
CREATOR:loginUser.USER_ID,
LISTMANAGER_ID: _this.LISTMANAGER_ID,
HIDDENTYPE_NAME:_this.pd.HIDDENTYPENAME,
HIDDENTYPE1:_this.pd.HIDDENTYPE[0] || '',
HIDDENTYPE2:_this.pd.HIDDENTYPE[1] || '',
HIDDENTYPE3:_this.pd.HIDDENTYPE[2] || '',
CORPINFO_ID:loginUser.CORPINFO_ID,
USER_ID:loginUser.USER_ID,
// RECORDITEM_ID:_this.itemId,
// RISKITEM_ID:_this.riskId,
FILE_IDS:FILE_IDS.join(',')
},
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){
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;
color: #666;
}
.cu-bar .action:first-child {
font-size: 28upx;
}
.ai_btn {
width: 100%;
box-sizing: border-box;
background: #FFFFFF;
margin-bottom: 10px;
padding: 10px;
}
.ai_btn .ai_btn_con {
width: 45%;
background: #dfeaff;
border-radius: 20px;
display: flex;
align-items: center;
height: 40px;
padding: 0 10px;
}
.search-input {
position: relative;
display: flex;
align-items: center;
border-radius: 4px;
padding: 0 10px;
height: 40px;
}
.search-icon {
position: absolute;
right: 10px;
font-size: 18px;
color: #666;
}
.cuIcon-right {
position: absolute;
right: -12px;
top: -10px;
}
.cuIcon-right:before {
content: "\e6a3";
color: #999;
}
.showbg {
position: absolute;
top: 45px;
left: 0;
background: #ffffff;
line-height: 2.6;
width: 100%;
padding: 5px;
border: 1px solid #eeeeee;
border-radius: 4px;
z-index: 999;
}
.list-item {
padding: 14px 12px;
border-bottom: 1px solid #9f9e9e;
font-size: 28upx;
color: #333;
}
</style>