<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>
