1634 lines
		
	
	
		
			55 KiB
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			1634 lines
		
	
	
		
			55 KiB
		
	
	
	
		
			Vue
		
	
	
| <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-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"
 | ||
| import {objGet} from "@dcloudio/uni-ui/lib/uni-forms/utils";
 | ||
| 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:'',
 | ||
|       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.getData();
 | ||
|     }
 | ||
|     this.getPersonList();
 | ||
|     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/goEdit', // /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.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;
 | ||
|             console.log(files)
 | ||
|             for (var i = 0; i < files.length; i++) {
 | ||
|               let file = {};
 | ||
|               file.filePath = baseImgPath + files[i].FILEPATH;
 | ||
|               file.id = files[i].IMGFILES_ID;
 | ||
|               // 判断文件是否为 mp4 视频文件
 | ||
|               if (file.filePath.endsWith('.mp4')) {
 | ||
|                 _this.videoList.push(file);
 | ||
|               } else {
 | ||
|                 _this.imgList.push(file);
 | ||
|               }
 | ||
|             }
 | ||
| 
 | ||
|             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" == res.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;
 | ||
|       uni.chooseImage({
 | ||
|         count: e==0 ? 4-this.imgList.length : 4-this.imgList1.length, //默认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);
 | ||
|           }
 | ||
|         }
 | ||
|       }
 | ||
|       uni.showLoading({
 | ||
|         title: '数据提交中'
 | ||
|       })
 | ||
|       this.buttonloading = true
 | ||
|       const FILE_IDS = []
 | ||
|       await _this.uploadPromise(fileList, FILE_IDS)
 | ||
|       await _this.submit(FILE_IDS)
 | ||
|       setTimeout(function () {
 | ||
|         var pages = getCurrentPages(); // 获取当前页面栈
 | ||
|         var prePage = pages[pages.length - 2]; // 上一个页面
 | ||
|         prePage.$vm.initflag = true; // A 页面 init方法 为true
 | ||
|         uni.navigateBack({});
 | ||
|         uni.hideLoading();
 | ||
|       }, 1500);
 | ||
|     },
 | ||
|     async uploadPromise(tempFilePaths,FILE_IDS){
 | ||
|       if (tempFilePaths.length == 0) {
 | ||
|         uni.hideLoading();
 | ||
|         this.buttonloading = false
 | ||
|         return
 | ||
|       }
 | ||
|       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': _this.pd.HIDDEN_ID,
 | ||
|             '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();
 | ||
|             this.buttonloading = false
 | ||
|             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;
 | ||
|         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/editHidden',
 | ||
|               method: 'POST',
 | ||
|               dataType: 'json',
 | ||
|               header: {
 | ||
|                 'Content-type':'application/x-www-form-urlencoded'
 | ||
|               },
 | ||
|               data: {
 | ||
|                 HIDDEN_ID:_this.pd.HIDDEN_ID,
 | ||
|                 // 风险清单2 隐患清单3
 | ||
|                 // SOURCE:'3',
 | ||
|                 STATE:'16',
 | ||
|                 HIDDENDESCR:_this.pd.HIDDENDESCR,
 | ||
|                 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,
 | ||
|                 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
 | ||
|                   });
 | ||
|                 }
 | ||
|                 uni.hideLoading();
 | ||
|                 this.buttonloading = false
 | ||
|               }
 | ||
|             });
 | ||
|           },
 | ||
|           fail: function(res){
 | ||
|             uni.hideLoading();
 | ||
|             this.buttonloading = false
 | ||
|             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;
 | ||
| }
 | ||
| 
 | ||
| .list-item {
 | ||
|   padding: 14px 12px;
 | ||
|   border-bottom: 1px solid #9f9e9e;
 | ||
|   font-size: 28upx;
 | ||
|   color: #333;
 | ||
| }
 | ||
| 
 | ||
| .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;
 | ||
| }
 | ||
| </style>
 |