qa-prevention-gwj-first-app/pages/application/hidden-danger-management/hidden-danger-check/hidden-danger-check.vue

253 lines
7.9 KiB
Vue
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<view>
<cu-custom bgColor="bg-gradual-blueness" :isBack="true">
<block slot="backText">返回</block>
<block slot="content">隐患验收</block>
</cu-custom>
<view class="top-fixed">
<view class="cu-bar search bg-white">
<view class="search-form radius">
<text class="cuIcon-search"></text>
<input @input="InputBlur" placeholder="请输入关键字"></input>
</view>
<view class="action">
<button class="cu-btn bg-green shadow-blur radius" @click="getQuery()"></button>
</view>
</view>
<view class="line"></view>
</view>
<scroll-view class="dy-scroll" @scrolltolower="scrolltolower" scroll-y :style="'top:'+sTop+'px;height:calc(100vh - '+totalHeight+'px)'">
<view v-if="total>0" class="dy-list">
<view v-for="(item,index) of list" :key="index" :data-id="item.HIDDEN_ID" class="dy-list-item p201 arrow" @click="$noMultipleClicks(gotRectify,item.HIDDEN_ID)">
<view class="dy-title-flex">
<text v-if="item.HIDDENDESCR">{{item.HIDDENDESCR.length>15?item.HIDDENDESCR.substr(0,15)+'...':item.HIDDENDESCR}}</text>
<text v-else>暂无</text>
<text v-if="item.HIDDENLEVEL=='hiddenLevel1001'" class="cu-tag radius bg-yellow light">{{item.HIDDENLEVELNAME}}</text>
<text v-else-if="item.HIDDENLEVEL=='hiddenLevel1004'" class="cu-tag radius bg-yellow light">{{item.HIDDENLEVELNAME}}</text>
<text v-else-if="item.HIDDENLEVEL=='hiddenLevel1002'" class="cu-tag radius bg-yellow light">{{item.HIDDENLEVELNAME}}</text>
<text v-else-if="item.HIDDENLEVEL=='hiddenLevel2001'" class="cu-tag radius bg-red light">{{item.HIDDENLEVELNAME}}</text>
<text v-else-if="item.HIDDENLEVEL=='hiddenLevel2002'" class="cu-tag radius bg-red light">{{item.HIDDENLEVELNAME}}</text>
</view>
<view class="dy-subtitle">
<text v-if="item.SOURCE=='1'">来源:隐患快报</text>
<text v-else-if="item.SOURCE=='2'">来源:清单排查</text>
<text v-else-if="item.SOURCE=='4'">来源:安全环保检查(监管端)</text>
<text v-else-if="item.SOURCE=='5'">来源:安全环保检查(企业端)</text>
</view>
<view class="dy-subtitle-flex">
<text>整改人:{{item.RECTIFICATIONORNAME?item.RECTIFICATIONORNAME:'暂无'}}</text>
<text>整改时间:{{item.RECTIFICATIONTIME? formatDate(item.RECTIFICATIONTIME):'暂无'}}</text>
</view>
<view class="dy-subtitle-flex">
<text>隐患发现人:{{item.findUserNames?item.findUserNames:'暂无'}}</text>
<text>隐患发现时间:{{item.DISCOVERYTIME? formatDate(item.DISCOVERYTIME):'暂无'}}</text>
</view>
<view class="dy-subtitle-flex">
<text>隐患确认人:{{item.confirmUserName?item.confirmUserName:'暂无'}}</text>
<text>隐患确认时间:{{item.CONFIRM_TIME? formatDate(item.CONFIRM_TIME):'暂无'}}</text>
</view>
<view class="dy-subtitle-flex">
<text>隐患整改负责人:{{item.RECTIFICATIONORNAME?item.RECTIFICATIONORNAME:'暂无'}}</text>
<text>整改完成时间:{{item.RECTIFICATIONTIME? formatDate(item.RECTIFICATIONTIME):'暂无'}}</text>
</view>
<view class="dy-subtitle-flex" style="height: 34upx;">
<text>状态:{{translate(item.STATE)}}</text>
<button class="cu-btn bg-blue margin-tb-sm sm" @click="$noMultipleClicks(gotRectify,item.HIDDEN_ID )">验收</button>
</view>
</view>
</view>
<view v-else-if="dataFlag=='noData'" class="dy-null">
<view class="dy-null-img">
<image src="../../../../static/null.png" mode=""></image>
</view>
<view class="dy-null-title">
暂无数据
</view>
</view>
<view class="cu-tabbar-height"></view>
</scroll-view>
</view>
</template>
<script>
import {
basePath,deptId,loginUserId,loginSession,loginUser ,formatDate
} from '@/common/tool.js';
export default {
data() {
return {
sTop:0,
totalHeight:0,
scrollLeft: 0,
tabNav: ['未提交', '待整改', '待复查', '已复查', '已验收', '已超期'],
page: 1,
rows: 10,
totalCount:0,
isEnd: false,
total:0,
varList:[],
noClick:true,
dataFlag:'noData',
list:[],
initflag:false,
name:'',
statusList:[
{id: '-2',name: '待确认'},
{id: '-1',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: '特殊处理隐患'},
],
}
},
onLoad() {
loginSession();
},
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()
}
})
},
onShow(){
this.getlist();
var _this = this;
if(_this.initflag){
_this.initflag = false;
_this.getQuery()
}
},
methods: {
getData() {
var _this = this;
if (_this.isEnd) {
return
}
uni.showLoading({
title: '请稍候'
});
let DISPOSESTATE = 3;
uni.request({
url: basePath + '/app/hidden/list',
method: 'POST',
dataType: 'json',
header:{
'Content-type':'application/x-www-form-urlencoded'
},
data: {
tm:new Date().getTime(),
showCount:_this.rows,
currentPage:_this.page,
totalResult:_this.total,
DISPOSESTATE:DISPOSESTATE,
USERDEPT:loginUser.DEPARTMENT_ID,
SELFUSERID:loginUserId,
HIDDENDESCR:_this.name
},
success: (res) => {
// console.info(res.data);
if (res.data.result == 'success') {
uni.hideLoading();
_this.total = res.data.page.totalResult;
if (_this.totalCount < res.data.page.totalResult) {
var content = res.data.varList;
_this.list = _this.list.concat(content);
_this.page++;
_this.totalCount += content.length;
} else {
_this.isEnd = true
}
} else {
uni.showToast({
title: res.data.message,
duration: 2000
});
}
}
});
},
getQuery(){
var _this = this;
_this.page = 1;
_this.isEnd = false;
_this.totalCount = 0;
_this.total =0;
_this.list = [];
_this.getData()
},
getlist() {
var _this = this;
_this.page = 1;
_this.isEnd = false;
_this.totalCount = 0;
_this.total =0;
_this.list = [];
_this.getData()
},
tabSelect(e) {
this.TabCur = e.currentTarget.dataset.id;
this.scrollLeft = (e.currentTarget.dataset.id - 1) * 60;
this.getQuery();
},
InputBlur(e){
this.name = e.detail.value
},
//跳转事件
gotRectify(e) {
uni.navigateTo({
url: '/pages/application/hidden-danger-management/hidden-danger-check/hidden-danger-check-detail?id='+e,
});
},
//跳转事件
gotReview(e) {
uni.navigateTo({
url: '/pages/works/hidden-danger/hidden-danger-review?id='+e,
});
},
//跳转事件
gotCheck(e) {
uni.navigateTo({
url: '/pages/works/hidden-danger/hidden-danger-check?id='+e,
});
},
//跳转事件
gotDetail(e) {
uni.navigateTo({
url: '/pages/works/hidden-danger/hidden-danger-details?id='+e,
});
},
scrolltolower(){
this.getData();
},
formatDate(time) {
let date = new Date(time)
return formatDate(date, 'yyyy-MM-dd')
},
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>