| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  | <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> | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  | <!--        <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>--> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |         <view class="cu-form-group margin-top" v-if="RECTIFICATIONTYPE==2"> | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |           <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> | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |           </view> | 
					
						
							|  |  |  |         </view> | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |         <!-- 自定义弹窗 --> | 
					
						
							|  |  |  |         <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> | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |               </view> | 
					
						
							|  |  |  |             </view> | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |             <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> | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |               </view> | 
					
						
							|  |  |  |             </view> | 
					
						
							|  |  |  |           </view> | 
					
						
							|  |  |  |         </view> | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |       </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, | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |       // ... 其他数据
 | 
					
						
							|  |  |  |       searchPerson: '',           // 显示在表单中的值
 | 
					
						
							|  |  |  |       personPopupShow: false,     // 控制弹窗显示
 | 
					
						
							|  |  |  |       popupSearch: '',            // 弹窗内的搜索关键词
 | 
					
						
							|  |  |  |       filteredPopupList: [],      // 弹窗内过滤后的人员列表
 | 
					
						
							|  |  |  |       personList: [] | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |     } | 
					
						
							|  |  |  |   }, | 
					
						
							|  |  |  |   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(); | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |     this.getPersonList(); | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |     this.getDept(); | 
					
						
							|  |  |  |     this.getLevel(); | 
					
						
							|  |  |  |     this.getHiddenType(); | 
					
						
							|  |  |  |     loginSession(); | 
					
						
							|  |  |  |   }, | 
					
						
							|  |  |  |   methods: { | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |     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(); | 
					
						
							|  |  |  |     }, | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |     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; | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |             _this.searchPerson = _this.pd.CONFIRM_DEPT_POST_NAME; | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |             _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; | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |             console.log(files) | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |             for (var i = 0; i < files.length; i++) { | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |               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); | 
					
						
							|  |  |  |               } | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |             } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             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({ | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |         count: e==0 ? 4-this.imgList.length : 4-this.imgList1.length, //默认9
 | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |         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 | 
					
						
							|  |  |  |     }, | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |     async goSubmit() { | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |       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; | 
					
						
							|  |  |  |       } | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  |       // if (_this.RECTIFICATIONTYPE == 2 && !_this.pd.CONFIRM_DEPT) {
 | 
					
						
							|  |  |  |       //   uni.showToast({
 | 
					
						
							|  |  |  |       //     icon: 'none',
 | 
					
						
							|  |  |  |       //     title: '请选择确认部门',
 | 
					
						
							|  |  |  |       //     duration: 1500
 | 
					
						
							|  |  |  |       //   });
 | 
					
						
							|  |  |  |       //   return;
 | 
					
						
							|  |  |  |       // }
 | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |       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); | 
					
						
							|  |  |  |           } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |       } | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |       uni.showLoading({ | 
					
						
							|  |  |  |         title: '数据提交中' | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |       }) | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |       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) | 
					
						
							|  |  |  |       } | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |     }, | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |     uploadImg(file,FILE_IDS){ | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |       return new Promise((resolve, reject) => { | 
					
						
							|  |  |  |         var _this = this; | 
					
						
							|  |  |  |         uni.uploadFile({ | 
					
						
							|  |  |  |           url: basePath+'/app/imgfiles/add', | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |           filePath: file.filePath, | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |           name: 'FFILE', | 
					
						
							|  |  |  |           formData: { | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |             'TYPE': file.type, | 
					
						
							|  |  |  |             // 'FOREIGN_KEY': _this.pd.HIDDEN_ID,
 | 
					
						
							|  |  |  |             'FOREIGN_KEY': '', | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |             CORPINFO_ID: loginUser.CORPINFO_ID, | 
					
						
							|  |  |  |             USER_ID: loginUser.USER_ID, | 
					
						
							|  |  |  |           }, | 
					
						
							|  |  |  |           success: (res) => { | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |             res.data = JSON.parse(res.data) | 
					
						
							|  |  |  |             FILE_IDS.push(res.data.pd.IMGFILES_ID) | 
					
						
							|  |  |  |             resolve(); | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |           }, | 
					
						
							|  |  |  |           fail: (err) => { | 
					
						
							|  |  |  |             uni.hideLoading(); | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |             this.buttonloading = false | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |             uni.showModal({ | 
					
						
							|  |  |  |               content: err.errMsg, | 
					
						
							|  |  |  |               showCancel: false | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |           } | 
					
						
							|  |  |  |         }) | 
					
						
							|  |  |  |       }) | 
					
						
							|  |  |  |     }, | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |     submit(FILE_IDS){ | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |       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 请求提交保存
 | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |             // this.buttonloading = true
 | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |             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,
 | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |                 FILE_IDS:FILE_IDS.join(','), | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |               }, | 
					
						
							|  |  |  |               success: (res) => { | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |                 // this.buttonloading = false
 | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |                 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 | 
					
						
							|  |  |  |                   }); | 
					
						
							|  |  |  |                 } | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |                 uni.hideLoading(); | 
					
						
							|  |  |  |                 this.buttonloading = false | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |               } | 
					
						
							|  |  |  |             }); | 
					
						
							|  |  |  |           }, | 
					
						
							|  |  |  |           fail: function(res){ | 
					
						
							|  |  |  |             uni.hideLoading(); | 
					
						
							| 
									
										
										
										
											2025-10-16 16:32:42 +08:00
										 |  |  |             this.buttonloading = false | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  |             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; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-10-14 15:55:30 +08:00
										 |  |  | .list-item { | 
					
						
							|  |  |  |   padding: 14px 12px; | 
					
						
							|  |  |  |   border-bottom: 1px solid #9f9e9e; | 
					
						
							|  |  |  |   font-size: 28upx; | 
					
						
							|  |  |  |   color: #333; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-09-09 09:32:47 +08:00
										 |  |  | .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> |