243 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			243 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			Vue
		
	
	
| <template>
 | ||
| 	<view>
 | ||
| 		<cu-custom bgColor="bg-gradual-blueness" :isBack="true" :isRingt="true">
 | ||
| 			<block slot="backText">返回</block>
 | ||
| 			<block slot="content">发现问题</block>
 | ||
| 		</cu-custom>
 | ||
| 		<scroll-view class="dy-scroll" @scrolltolower="scrolltolower" scroll-y :style="'top:'+sTop+'px;height:calc(100vh - '+totalHeight+'px)'">
 | ||
| 			<view v-if="list.length>0" >
 | ||
| 				<view class="dy-list">
 | ||
| 					<view v-for="(item,index) of list" :key="index" :data-id="item.HIDDEN_ID" @click="$noMultipleClicks(goToDetail,item)" class="dy-list-item p20">
 | ||
| 						<view class="dy-subtitle-flex" style="flex-wrap: wrap">
 | ||
| 							<view style="flex-basis: 100%">
 | ||
|                 <text>{{ index + 1 }}</text>
 | ||
|                 <text class="number" style="margin-left: 20upx;">{{ item.HIDDENDESCR }}</text>
 | ||
|               </view>
 | ||
|               <view style="flex-basis: 100%;margin-top: 10upx">
 | ||
|                 <text>隐患状态:{{ translateHidden(item.HIDDEN_STATUS) }}</text>
 | ||
|               </view>
 | ||
|               <view style="flex-basis: 100%" class="dy-subtitle-flex">
 | ||
|                 <text>隐患描述:{{item.HIDDENDESCR}}</text>
 | ||
|               </view>
 | ||
| 			  <view style="flex-basis: 100%;margin-top: 10upx;">
 | ||
| 				  <text></text>
 | ||
| 				  <text>
 | ||
| 					  <button class="cu-btn bg-green margin-tb-sm sm" style="float:right" @click="$noMultipleClicks(goToDetail,item)">查看</button>
 | ||
| 					  <button style="margin-left: 10px;float:right" v-if="item.INSPECTED_SITEUSER_ID === USER_ID && item.HIDDEN_STATUS === '101'" class="cu-btn bg-blue margin-tb-sm sm"
 | ||
| 							  @click="$noMultipleClicks(goToAssignConfirm,item)">指派</button>
 | ||
| 					  <button style="margin-left: 10px;float: right" v-if="item.CREATOR === USER_ID && (item.HIDDEN_STATUS === '4' || item.HIDDEN_STATUS === '8') && (!item.FINAL_CHECK || item.FINAL_CHECK === '2')" class="cu-btn bg-blue margin-tb-sm sm"
 | ||
| 							  @click="$noMultipleClicks(goToAccept,item)">验收</button>
 | ||
| 				  </text>			  </view>
 | ||
| 						</view>
 | ||
| 					</view>
 | ||
| 				</view>
 | ||
| 			</view>
 | ||
| 			<view v-else-if="dataFlag=='noData'" class="dy-null">
 | ||
| 				<view class="dy-null-img">
 | ||
| 					<image :src="background[dataFlag].url" mode=""></image>
 | ||
| 				</view>
 | ||
| 				<view class="dy-null-title">
 | ||
| 					{{background[dataFlag].msg}}
 | ||
| 				</view>
 | ||
| 			</view>
 | ||
| 			<view class="cu-tabbar-height"></view>
 | ||
| 		</scroll-view>
 | ||
| 	</view>
 | ||
| </template>
 | ||
| 
 | ||
| <script>
 | ||
| 	import {
 | ||
| 		basePath,corpinfoId,loginSession,formatDate,loginUser
 | ||
| 	} from '@/common/tool.js';
 | ||
| 	import tkiTree from "@/components/select-tree/select-tree.vue"
 | ||
| 	export default {
 | ||
| 		components: {
 | ||
| 			tkiTree
 | ||
| 		},
 | ||
| 		data() {
 | ||
| 			return {
 | ||
| 				dataFlag:'noData',
 | ||
| 				sTop:0,
 | ||
| 				totalHeight:0,
 | ||
| 				list:[],//返回数据
 | ||
| 				page:1,//分页参数--页数
 | ||
| 				rows:10,//分页参数--每页数据条数
 | ||
| 				totalCount:0,//分页参数--初始化页数
 | ||
| 				isEnd:false,//防止多次刷新
 | ||
| 				totalPage: 0, //分页参数--分页数量
 | ||
| 				NameLikes : '',
 | ||
| 				noClick:true,
 | ||
| 				statusList:[
 | ||
| 					{id:'3-7',name:'请选择'},
 | ||
| 					{id:'3',name:'待指派'},
 | ||
| 					{id:'4',name:'指派中'},
 | ||
| 					{id:'5',name:'指派完成'},
 | ||
| 					{id:'6',name: '待验收' },
 | ||
| 					{id:'7',name: '已验收' }
 | ||
| 				],
 | ||
| 				hiddenStatusList: [
 | ||
| 					{ ID: '', NAME: '请选择' },
 | ||
| 					{ ID: '1', NAME: '待整改' },
 | ||
| 					{ ID: '2', NAME: '待验收' },
 | ||
| 					{ ID: '3', NAME: '已复查' },
 | ||
| 					{ ID: '4', NAME: '已验收' },
 | ||
| 					{ ID: '5', NAME: '忽略隐患' },
 | ||
| 					{ ID: '6', NAME: '重大隐患' },
 | ||
| 					{ ID: '7', NAME: '待处理的特殊申请隐患' },
 | ||
| 					{ ID: '8', NAME: '已处理的特殊隐患' },
 | ||
|           { ID: '10', NAME: '验收打回' },
 | ||
|           { ID: '11', NAME: '分公司安委会办公室副主任核定' },
 | ||
|           { ID: '12', NAME: '分公司安委会办公室副主任核定' },
 | ||
|           { ID: '13', NAME: '港股分公司安委会办公室副主任核定、重大隐患待整改' },
 | ||
|           { ID: '13', NAME: '重大隐患待验收' },
 | ||
|           { ID: '15', NAME: '重大隐患已归档' },
 | ||
|           { ID: '16', NAME: '确认打回' },
 | ||
|           { ID: '100', NAME: '安全环保检查暂存的隐患' },
 | ||
|           { ID: '100', NAME: '检查已归档,待指派' },
 | ||
|           { ID: '101', NAME: '待指派确认人' },
 | ||
|           { ID: '-1', NAME: '已过期' },
 | ||
|           { ID: '-2', NAME: '待确认' }
 | ||
| 				],
 | ||
| 				INSPECTION_ID: '',
 | ||
| 				sindex: 0,
 | ||
| 				STATUS:'3-7',
 | ||
| 				USER_ID: loginUser.USER_ID
 | ||
| 			}
 | ||
| 		},
 | ||
| 		onReady() {
 | ||
| 			let that=this;
 | ||
| 			let CustomBar = this.CustomBar;
 | ||
| 			uni.getSystemInfo({ //调用uni-app接口获取屏幕高度
 | ||
| 				success(res) { //成功回调函数
 | ||
| 					let titleH=uni.createSelectorQuery().select(".top-fixed"); //想要获取高度的元素名(class/id)
 | ||
| 					titleH.boundingClientRect(data=>{
 | ||
| 						that._data.sTop=data.height  //计算高度:元素高度=窗口高度-元素距离顶部的距离(data.top)
 | ||
| 						that.totalHeight = data.height+CustomBar
 | ||
| 					}).exec()
 | ||
| 				}
 | ||
| 			})
 | ||
| 		},
 | ||
| 		onLoad(event) {//页面第一次加载时触发,从跳转页面返回时不能触发,可以传递参
 | ||
| 			this.INSPECTION_ID = event.INSPECTION_ID;
 | ||
| 		},
 | ||
| 		onShow() {
 | ||
| 			//页面显示或从后台跳回小程序时显示此页面时触发,从跳转页面返回时触发,不能传递参数
 | ||
| 			var _this = this;
 | ||
| 			_this.background = require('@/common/background.json');
 | ||
| 			_this.showCount = -1;
 | ||
| 			_this.currentPage = 1;
 | ||
| 			_this.list = [];
 | ||
| 			_this.isEnd = false;
 | ||
| 			_this.getData();
 | ||
| 			// _this.getDept();
 | ||
| 			loginSession();
 | ||
| 		},
 | ||
| 
 | ||
| 		filters: {
 | ||
| 			formatDate(time) {
 | ||
| 				let date = new Date(time)
 | ||
| 				return formatDate(date, 'yyyy-MM-dd')
 | ||
| 			}
 | ||
| 		},
 | ||
| 		methods: {
 | ||
| 			translateHidden(id) {
 | ||
| 				for (var i = 0; i < this.hiddenStatusList.length; i++) {
 | ||
| 					if (this.hiddenStatusList[i].ID == id) return this.hiddenStatusList[i].NAME
 | ||
| 				}
 | ||
| 			},
 | ||
| 			//跳转事件
 | ||
| 			goToDetail(e) {
 | ||
| 				uni.navigateTo({
 | ||
| 					url: '/pages/application/safety-environmental-inspection/archive/detail-hidden?HIDDEN_STATUS=0&INSPECTION_ID='+e.INSPECTION_ID + '&HIDDEN_ID=' + e.HIDDEN_ID
 | ||
| 				});
 | ||
| 			},
 | ||
| 			goToAssignConfirm(e) {
 | ||
| 				uni.navigateTo({
 | ||
| 					url: '/pages/application/safety-environmental-inspection/archive/detail-hidden?HIDDEN_STATUS=-2&INSPECTION_ID='+e.INSPECTION_ID + '&HIDDEN_ID=' + e.HIDDEN_ID
 | ||
| 				});
 | ||
| 			},
 | ||
| 			goToAccept(e) {
 | ||
| 				uni.navigateTo({
 | ||
| 					url: '/pages/application/safety-environmental-inspection/archive/detail-check?INSPECTION_ID='+e.INSPECTION_ID + '&id=' + e.HIDDEN_ID
 | ||
| 				});
 | ||
| 			},
 | ||
| 			getQuery(){	//搜索按钮事件
 | ||
| 				var _this = this;
 | ||
| 				_this.showCount = -1;
 | ||
| 				_this.currentPage = 1;
 | ||
| 				_this.list = [];
 | ||
| 				_this.isEnd = false;
 | ||
| 				_this.getData();
 | ||
| 			},
 | ||
| 			InputBlur(e){
 | ||
| 				this.NameLikes = e.detail.value
 | ||
| 			},
 | ||
| 			// 滑动到底方法
 | ||
| 			scrolltolower(){
 | ||
| 				var _this = this;
 | ||
| 				_this.showCount = -1;
 | ||
| 				_this.currentPage = _this.currentPage + 1;
 | ||
| 				_this.isEnd = false;
 | ||
| 				if(_this.totalPage >= _this.currentPage){
 | ||
| 					_this.getData();//开始分页查询
 | ||
| 				}
 | ||
| 			},
 | ||
| 
 | ||
| 			statusChange(e){
 | ||
| 				this.sindex = e.detail.value;
 | ||
| 				this.STATUS=this.statusList[this.sindex].id;
 | ||
| 				this.getQuery();
 | ||
| 			},
 | ||
| 			getData(){
 | ||
| 				var _this = this;
 | ||
| 				if (_this.isEnd) {
 | ||
| 					return
 | ||
| 				}else{
 | ||
| 					this.isEnd =true;
 | ||
| 				}
 | ||
| 				uni.showLoading({
 | ||
| 					title:"加载中..."
 | ||
| 				});//加载中动画
 | ||
| 				uni.request({
 | ||
| 					url: basePath +'/app/hidden/listForSafetyEnvironmental?showCount='+_this.showCount+'¤tPage='+_this.currentPage ,
 | ||
| 					method: 'POST',
 | ||
| 					dataType: 'json',
 | ||
| 					header: {
 | ||
| 						'Content-type':'application/x-www-form-urlencoded'
 | ||
| 					},
 | ||
| 					data: {
 | ||
| 						// CORPINFO_ID:corpinfoId,
 | ||
| 						INSPECTION_ID:this.INSPECTION_ID,
 | ||
| 						INSPECTION_STATUS: '3-7', // 检查状态
 | ||
| 						tm:new Date().getTime(),
 | ||
| 						KEYWORDS : _this.NameLikes, //关键字模糊查询
 | ||
| 					},
 | ||
| 					success: (res) => {
 | ||
| 						uni.hideLoading();//结束加载中动画
 | ||
| 						if (res.data != null) {
 | ||
| 							_this.totalPage = res.data.page.totalPage;
 | ||
| 							if(_this.list.length == 0){
 | ||
| 								_this.list = res.data.varList;
 | ||
| 							}else{
 | ||
| 								if(res.data.varList != null){
 | ||
| 									_this.list2 = res.data.varList;
 | ||
| 									_this.list = _this.list.concat(_this.list2);
 | ||
| 								}
 | ||
| 							}
 | ||
| 						}
 | ||
| 
 | ||
| 					}
 | ||
| 				})
 | ||
| 			},
 | ||
| 			translate(id) {
 | ||
| 				for (var i = 0; i < this.statusList.length; i++) {
 | ||
| 					if (this.statusList[i].id == id) return this.statusList[i].name
 | ||
| 				}
 | ||
| 			}
 | ||
| 		}
 | ||
| 	}
 | ||
| </script>
 | ||
| 
 | ||
| <style>
 | ||
| </style>
 |