integrated_traffic_uniapp/pages/application/safety-environmental-inspec.../archive/list-hidden.vue

243 lines
8.1 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" :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: 20px;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+'&currentPage='+_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>