2023-11-07 09:43:46 +08:00
|
|
|
|
<template name="basics">
|
|
|
|
|
<view>
|
|
|
|
|
<!-- #ifdef APP-PLUS -->
|
|
|
|
|
<view class="status_bar">
|
|
|
|
|
<view class="top_view"></view>
|
|
|
|
|
</view>
|
|
|
|
|
<!-- #endif -->
|
|
|
|
|
<mescroll-uni ref="mescrollRef" :top="StatusBar+'px'" @init="mescrollInit" @down="downCallback" :up="upOption" @up="upCallback">
|
|
|
|
|
<view class="banner">
|
|
|
|
|
<view></view>
|
|
|
|
|
<view>首页</view>
|
|
|
|
|
<view class="icon-ui" @click="$noMultipleClicks(scan)">
|
|
|
|
|
<text class="cuIcon-scan"></text>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="options">
|
|
|
|
|
<view class="girds">
|
|
|
|
|
<template v-for="(item,index) in girdList">
|
|
|
|
|
<view class="gird" :key="index" v-if="item.condition">
|
|
|
|
|
<navigator class="a" hover-class="none" :url="item.url">
|
|
|
|
|
<view class="image">
|
|
|
|
|
<image :src="item.image" mode=""></image>
|
2024-06-05 15:04:52 +08:00
|
|
|
|
<view v-if="item.title === '高危作业' && totalUnreadCount > 0" class="badge">{{ totalUnreadCount }}</view>
|
2023-11-07 09:43:46 +08:00
|
|
|
|
</view>
|
|
|
|
|
<view class="title">
|
|
|
|
|
<text>{{ item.title }}</text>
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
</view>
|
|
|
|
|
</template>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="broadcast">
|
|
|
|
|
<view class="left">隐患播报</view>
|
|
|
|
|
<!-- <view class="right" @click="$noMultipleClicks(goToRecord)">-->
|
|
|
|
|
<view class="right">
|
|
|
|
|
<swiper
|
|
|
|
|
style="height: 126upx"
|
|
|
|
|
:indicator-dots="false"
|
|
|
|
|
:autoplay="true"
|
|
|
|
|
:interval="2000"
|
|
|
|
|
:duration="1000"
|
|
|
|
|
:circular="true"
|
|
|
|
|
:vertical="true"
|
|
|
|
|
:display-multiple-items="2"
|
|
|
|
|
>
|
|
|
|
|
<swiper-item v-for="item of hiddenList" :key="item.HIDDEN_ID">
|
|
|
|
|
<view class="item" @click="$noMultipleClicks(goToRecordDetail, item.HIDDEN_ID)">
|
|
|
|
|
<text class="u-line-1">{{item.HIDDENDESCR}}</text>
|
|
|
|
|
<text>{{item.findUserNames?item.findUserNames:'暂无'}}</text>
|
|
|
|
|
<text>{{item.DISCOVERYTIME? formatDate(item.DISCOVERYTIME):'暂无'}}</text>
|
|
|
|
|
</view>
|
|
|
|
|
</swiper-item>
|
|
|
|
|
</swiper>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<!--<view class="high-risk-work">
|
|
|
|
|
<view class="home-work-title">
|
|
|
|
|
<view class="title">
|
|
|
|
|
<view class="q_title"></view>
|
|
|
|
|
<view class="text-black f30b">高危作业</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="new-apps-box">
|
|
|
|
|
<view class="new-apps-warp">
|
|
|
|
|
<view class="new-apps-item" v-for="(item,index) in highRiskList" :key="index">
|
|
|
|
|
<navigator class="a" hover-class="none" :url="item.url">
|
|
|
|
|
<view class="image">
|
|
|
|
|
<image :src="item.image" mode=""></image>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="title">
|
|
|
|
|
<text>{{ item.title }}</text>
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>-->
|
|
|
|
|
<view class="home-work">
|
|
|
|
|
<view class="home-work-title">
|
|
|
|
|
<view class="title">
|
|
|
|
|
<view class="q_title"></view>
|
|
|
|
|
<view class="text-black f30b">我的工作</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="this-date">{{today}}</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-list">
|
|
|
|
|
<swiper class="swiper">
|
|
|
|
|
<swiper-item>
|
|
|
|
|
<view class="work-box">
|
|
|
|
|
<navigator class="swiper-item" hover-class="none" url="/pages/application/hidden-trouble-investigation/hidden-trouble-app/hidden-trouble-app?isIndex=1">
|
|
|
|
|
<view>
|
|
|
|
|
待排查
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{hidCount.dpc}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none" url="/pages/application/hidden-danger-management/hidden-danger-confirm/hidden-danger-confirm-change">
|
|
|
|
|
<view>
|
|
|
|
|
待确认
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{hidCount.dqr}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none" url="/pages/application/hidden-danger-management/hidden-danger-rectification/hidden-danger-rectification-change?isIndex=1">
|
|
|
|
|
<view>
|
|
|
|
|
待整改
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{hidCount.dzg}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none" url="/pages/application/hidden-danger-management/hidden-danger-overdue/hidden-danger-overdue?isIndex=1">
|
|
|
|
|
<view>
|
|
|
|
|
已超期
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{hidCount.ycq}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none" url="/pages/application/hidden-danger-management/hidden-danger-check/hidden-danger-check?isIndex=1">
|
|
|
|
|
<view>
|
|
|
|
|
待验收
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{hidCount.dys}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none" url="/pages/application/hidden-danger-management/hidden-danger-finish/hidden-danger-finish?isIndex=1">
|
|
|
|
|
<view>
|
|
|
|
|
已验收
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{hidCount.yys}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
</view>
|
|
|
|
|
</swiper-item>
|
|
|
|
|
</swiper>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="home-work">
|
|
|
|
|
<view class="home-work-title">
|
|
|
|
|
<view class="title">
|
|
|
|
|
<view class="q_title"></view>
|
|
|
|
|
<view class="text-black f30b">安全环保检查</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-list">
|
|
|
|
|
<swiper class="swiper">
|
|
|
|
|
<swiper-item>
|
|
|
|
|
<view class="work-box">
|
|
|
|
|
<navigator class="swiper-item" hover-class="none">
|
|
|
|
|
<view>
|
|
|
|
|
检查数
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{safetyEnvironmentalCount.COUNT_INSPECTION}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none">
|
|
|
|
|
<view>
|
|
|
|
|
被检查数
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{safetyEnvironmentalCount.COUNT_INSPECTED}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none">
|
|
|
|
|
<view style="white-space: nowrap;">
|
|
|
|
|
负责整改隐患数
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{safetyEnvironmentalCount.COUNT_HIDDEN}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
<navigator class="swiper-item" hover-class="none">
|
|
|
|
|
<view>
|
|
|
|
|
隐患验收数
|
|
|
|
|
</view>
|
|
|
|
|
<view class="work-border wui-mt10">
|
|
|
|
|
{{safetyEnvironmentalCount.COUNT_HIDDEN_ACCEPT}}
|
|
|
|
|
</view>
|
|
|
|
|
</navigator>
|
|
|
|
|
</view>
|
|
|
|
|
</swiper-item>
|
|
|
|
|
</swiper>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="home-date" v-if="false">
|
|
|
|
|
<view class="home-work-title">
|
|
|
|
|
<view class="title">
|
|
|
|
|
<view class="q_title"></view>
|
|
|
|
|
<view class="text-black f30b">排查数据</view>
|
|
|
|
|
</view>
|
|
|
|
|
<!-- <view class="this-date">更多</view> -->
|
|
|
|
|
</view>
|
|
|
|
|
<view class="home-date-list">
|
|
|
|
|
<view class="qd-date">
|
|
|
|
|
<view class="qd-date-item">
|
|
|
|
|
<view class="date text-blue">
|
|
|
|
|
{{hdCount.monthTotal}}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="name">
|
|
|
|
|
发现隐患数
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="qd-date-item">
|
|
|
|
|
<view class="date text-orange">
|
|
|
|
|
{{hdCount.monthChecked}}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="name">
|
|
|
|
|
已整改隐患数
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="qd-date-item">
|
|
|
|
|
<view class="date text-green">
|
|
|
|
|
{{hdCount.monthTotal==0?0:((hdCount.monthChecked/hdCount.monthTotal*100).toFixed(2))}}%
|
|
|
|
|
</view>
|
|
|
|
|
<view class="name">
|
|
|
|
|
隐患整改率
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="qd-tag bg-blue">
|
|
|
|
|
<text>月</text>
|
|
|
|
|
<text>度</text>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="qd-date">
|
|
|
|
|
<view class="qd-date-item">
|
|
|
|
|
<view class="date text-blue">
|
|
|
|
|
{{hdCount.yearTotal}}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="name">
|
|
|
|
|
发现隐患数
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="qd-date-item">
|
|
|
|
|
<view class="date text-orange">
|
|
|
|
|
{{hdCount.yearChecked}}
|
|
|
|
|
</view>
|
|
|
|
|
<view class="name">
|
|
|
|
|
已整改隐患数
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="qd-date-item">
|
|
|
|
|
<view class="date text-green">
|
|
|
|
|
{{hdCount.yearTotal==0?0:((hdCount.yearChecked/hdCount.yearTotal*100).toFixed(2))}}%
|
|
|
|
|
</view>
|
|
|
|
|
<view class="name">
|
|
|
|
|
隐患整改率
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="qd-tag bg-red">
|
|
|
|
|
<text>年</text>
|
|
|
|
|
<text>度</text>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
</view>
|
|
|
|
|
<view class="cu-tabbar-height"></view>
|
|
|
|
|
</mescroll-uni>
|
|
|
|
|
</view>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
import {
|
|
|
|
|
basePath,corpinfoId,loginUserId,formatDate,loginUser,setloginUserId,setCorpinfoId,setloginUser,setDeptId
|
|
|
|
|
} from '@/common/tool.js';
|
|
|
|
|
|
|
|
|
|
import MescrollMixin from "@/components/mescroll-uni/mescroll-mixins.js";
|
|
|
|
|
export default {
|
|
|
|
|
mixins: [MescrollMixin], // 使用mixin (在main.js注册全局组件)
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
2024-06-05 15:04:52 +08:00
|
|
|
|
totalUnreadCount: 0,
|
2023-11-07 09:43:46 +08:00
|
|
|
|
girdList:[
|
|
|
|
|
{
|
|
|
|
|
title:'基本资料',
|
|
|
|
|
url:'/pages/basics/basic-info/basic-info',
|
|
|
|
|
image:require('../../static/new_images/ico1.png'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'工作安排',
|
|
|
|
|
url:'/pages/basics/work-plan/work-plan',
|
|
|
|
|
image:require('../../static/new_images/ico2.png'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'风险分布',
|
|
|
|
|
url:'/pages/basics/risk-distribution/risk-distribution',
|
|
|
|
|
image:require('../../static/new_images/ico3.png'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'学习园地',
|
|
|
|
|
url:'/pages/application/onlinexxks/home',
|
|
|
|
|
image:require('../../static/new_images/ico4.png'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'高危作业',
|
|
|
|
|
url:'/pages/application/high-risk-work/home',
|
|
|
|
|
image:require('../../static/new_images/ico5.png'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'安全环保检查',
|
|
|
|
|
url:'/pages/application/safety-environmental-inspection/home',
|
|
|
|
|
image:require('../../static/new_images/ico6.png'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'消防管理',
|
|
|
|
|
url:'/pages/application/fire-management/hidden-trouble-app/hidden-trouble-app',
|
|
|
|
|
image:require('../../static/new_images/home-xiaofang.jpg'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'智能门禁管理',
|
|
|
|
|
url:'/pages/application/accesscontrol/home',
|
|
|
|
|
image:require('../../static/new_images/ico7.png'),
|
|
|
|
|
condition:loginUser.CORPINFO_ID ==='035958e685cf4850bc40151c5e0617a6' || loginUser.CORPINFO_ID ==='13cf0f4ec77e4d98ae8cdd9c3386ae0c'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'重点工程管理',
|
|
|
|
|
url:'/pages/application/key-project-management/index/index',
|
|
|
|
|
image:require('../../static/new_images/home-zdgcgl.png'),
|
|
|
|
|
condition:true
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
highRiskList:[
|
|
|
|
|
{
|
|
|
|
|
title:'动火作业',
|
|
|
|
|
url:'/pages/application/eight-assignments/index',
|
|
|
|
|
image:require('../../static/new_images/i1.png'),
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'高处作业',
|
|
|
|
|
url:'/pages/application/high-risk-work/high-work/home',
|
|
|
|
|
image:require('../../static/new_images/i2.png'),
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'盲板作业',
|
|
|
|
|
url:'/pages/application/high-risk-work/blind-work/index',
|
|
|
|
|
image:require('../../static/new_images/i3.png'),
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'吊装作业',
|
|
|
|
|
url:'/pages/application/high-risk-work/lifting-safety-work/index',
|
|
|
|
|
image:require('../../static/new_images/i4.png'),
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'有限空间安全作业',
|
|
|
|
|
url:'/pages/application/high-risk-work/limited-space/index',
|
|
|
|
|
image:require('../../static/new_images/i5.png'),
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title:'临时用电安全作业',
|
|
|
|
|
url:'/pages/application/high-risk-work/electricity/index',
|
|
|
|
|
image:require('../../static/new_images/i6.png'),
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
page: 1,
|
|
|
|
|
rows: 10,
|
|
|
|
|
totalCount:0,
|
|
|
|
|
total:0,
|
|
|
|
|
isEnd: false,
|
|
|
|
|
hiddenList: [],
|
|
|
|
|
noClick:true,
|
|
|
|
|
StatusBar: this.StatusBar,
|
|
|
|
|
StatusBarb: this.StatusBar + 50,
|
|
|
|
|
hidCount: [],
|
|
|
|
|
safetyEnvironmentalCount: {},
|
|
|
|
|
hdCount:{},
|
|
|
|
|
today :'',
|
|
|
|
|
triggered: false,
|
|
|
|
|
totalList:[],
|
|
|
|
|
isGoodsEdit: false, // 是否加载编辑后的数据
|
|
|
|
|
downOption:{
|
|
|
|
|
mustToTop:true,
|
|
|
|
|
},
|
|
|
|
|
upOption: {
|
|
|
|
|
use: false, // 禁止上拉
|
|
|
|
|
toTop: {
|
|
|
|
|
src: '' // 不显示回到顶部按钮
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
loginUser :loginUser
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
mounted(){
|
|
|
|
|
// uni.startPullDownRefresh();
|
|
|
|
|
let now = new Date();
|
|
|
|
|
var today = formatDate(now, 'yyyy-MM-dd');
|
|
|
|
|
this.getData()
|
|
|
|
|
this.getHiddenData()
|
|
|
|
|
this.getSafetyEnvironmentalCount()
|
2024-06-05 15:04:52 +08:00
|
|
|
|
this.getSumCount();
|
2023-11-07 09:43:46 +08:00
|
|
|
|
// this.getListData()
|
|
|
|
|
console.info(loginUser)
|
|
|
|
|
// this._freshing = false;
|
|
|
|
|
// setTimeout(() => {
|
|
|
|
|
// this.triggered = true;
|
|
|
|
|
// }, 1000)
|
|
|
|
|
},
|
|
|
|
|
// onPullDownRefresh() {
|
|
|
|
|
// console.log('refresh');
|
|
|
|
|
// setTimeout(function () {
|
|
|
|
|
// uni.stopPullDownRefresh();
|
|
|
|
|
// }, 1000);
|
|
|
|
|
// },
|
|
|
|
|
methods: {
|
|
|
|
|
//跳转事件
|
|
|
|
|
goToRecord(e) {
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/application/hidden-danger-management/hidden-danger-record/hidden-danger-record',
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
goToRecordDetail(e) {
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/application/hidden-danger-management/hidden-danger-record/hidden-danger-record-detail?id='+e,
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
async downCallback(page) {
|
2024-06-11 16:16:20 +08:00
|
|
|
|
this.getSumCount();
|
2023-11-07 09:43:46 +08:00
|
|
|
|
await this.getWork();
|
|
|
|
|
await this.getHiddenData()
|
|
|
|
|
await this.getSafetyEnvironmentalCount()
|
|
|
|
|
// await this.getMonth();
|
|
|
|
|
// await this.getYear();
|
|
|
|
|
await this.mescroll.endSuccess();
|
|
|
|
|
this.mescroll.scrollTo( 0,100 )
|
|
|
|
|
},
|
|
|
|
|
getWork(){
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
var _this = this;
|
|
|
|
|
uni.request({
|
|
|
|
|
url: basePath + '/app/hidden/getCountByUserId',
|
|
|
|
|
method: 'POST',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
header:{
|
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
},
|
|
|
|
|
data: {
|
|
|
|
|
userId: loginUserId,
|
|
|
|
|
CORPINFO_ID: loginUser.CORPINFO_ID,
|
|
|
|
|
USER_ID: loginUser.USER_ID,
|
|
|
|
|
USER_NAME: loginUser.NAME,
|
|
|
|
|
CHECK_DEPARTMENT_ID: loginUser.DEPARTMENT_ID,
|
|
|
|
|
IS_MAIN:loginUser.ISMAIN
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
if (res.data != null) {
|
|
|
|
|
_this.hidCount = res.data.hidCount;
|
|
|
|
|
resolve();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
getMonth(){
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
var _this = this;
|
|
|
|
|
//月隐患数
|
|
|
|
|
uni.request({
|
|
|
|
|
url: basePath + '/app/hidden/getIndexCount',
|
|
|
|
|
method: 'POST',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
header:{
|
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
},
|
|
|
|
|
data: {
|
|
|
|
|
userId: loginUserId,
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
if (res.data != null) {
|
|
|
|
|
_this.hdCount.monthTotal = res.data.total;
|
|
|
|
|
_this.hdCount.monthChecked = res.data.checked;
|
|
|
|
|
_this.hdCount.monthUncheck = res.data.uncheck;
|
|
|
|
|
this.$forceUpdate();
|
|
|
|
|
resolve();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
getYear(){
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
var _this = this;
|
|
|
|
|
//年隐患数
|
|
|
|
|
uni.request({
|
|
|
|
|
url: basePath + '/app/hidden/getIndexCount',
|
|
|
|
|
method: 'POST',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
header:{
|
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
},
|
|
|
|
|
data: {
|
|
|
|
|
userId: loginUserId,
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
if (res.data != null) {
|
|
|
|
|
_this.hdCount.yearTotal = res.data.total;
|
|
|
|
|
_this.hdCount.yearChecked = res.data.checked;
|
|
|
|
|
_this.hdCount.yearUncheck = res.data.uncheck;
|
|
|
|
|
this.$forceUpdate();
|
|
|
|
|
resolve();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
getData() {
|
|
|
|
|
var _this = this;
|
|
|
|
|
let now = new Date();
|
|
|
|
|
_this.today = formatDate(now, 'yyyy-MM-dd');
|
|
|
|
|
uni.request({
|
|
|
|
|
url: basePath + '/app/hidden/getCountByUserId',
|
|
|
|
|
method: 'POST',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
header:{
|
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
},
|
|
|
|
|
data: {
|
|
|
|
|
userId: loginUserId,
|
|
|
|
|
CORPINFO_ID: loginUser.CORPINFO_ID,
|
|
|
|
|
USER_ID: loginUser.USER_ID,
|
|
|
|
|
USER_NAME: loginUser.NAME,
|
|
|
|
|
CHECK_DEPARTMENT_ID: loginUser.DEPARTMENT_ID,
|
|
|
|
|
IS_MAIN:loginUser.ISMAIN
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
|
|
|
|
|
if (res.data != null) {
|
|
|
|
|
_this.hidCount = res.data.hidCount;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
fail: (res) => {
|
|
|
|
|
uni.showToast({
|
|
|
|
|
icon: 'none',
|
|
|
|
|
title: "服务器正在升级,请稍后再试。",
|
|
|
|
|
duration: 2000
|
|
|
|
|
});
|
|
|
|
|
setTimeout(function() {
|
|
|
|
|
plus.runtime.quit();
|
|
|
|
|
// ios quit方法无效,退出到登陆页
|
|
|
|
|
setloginUserId(null);
|
|
|
|
|
setCorpinfoId(null);
|
|
|
|
|
setDeptId(null);
|
|
|
|
|
setloginUser(null);
|
|
|
|
|
uni.removeStorage({key: 'USER'});
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/login/home'
|
|
|
|
|
});
|
|
|
|
|
}, 2000);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//月隐患数
|
|
|
|
|
// uni.request({
|
|
|
|
|
// url: basePath + '/app/hidden/getIndexCount',
|
|
|
|
|
// method: 'POST',
|
|
|
|
|
// dataType: 'json',
|
|
|
|
|
// header:{
|
|
|
|
|
// 'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
// },
|
|
|
|
|
// data: {
|
|
|
|
|
// userId: loginUserId,
|
|
|
|
|
// },
|
|
|
|
|
// success: (res) => {
|
|
|
|
|
// if (res.data != null) {
|
|
|
|
|
// _this.hdCount.monthTotal = res.data.total;
|
|
|
|
|
// _this.hdCount.monthChecked = res.data.checked;
|
|
|
|
|
// _this.hdCount.monthUncheck = res.data.uncheck;
|
|
|
|
|
// this.$forceUpdate();//强制刷新
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
//年隐患数
|
|
|
|
|
// uni.request({
|
|
|
|
|
// url: basePath + '/app/hidden/getIndexCount',
|
|
|
|
|
// method: 'POST',
|
|
|
|
|
// dataType: 'json',
|
|
|
|
|
// header:{
|
|
|
|
|
// 'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
// },
|
|
|
|
|
// data: {
|
|
|
|
|
// userId: loginUserId,
|
|
|
|
|
// },
|
|
|
|
|
// success: (res) => {
|
|
|
|
|
// if (res.data != null) {
|
|
|
|
|
// this.hdCount.yearTotal = res.data.total;
|
|
|
|
|
// _this.hdCount.yearChecked = res.data.checked;
|
|
|
|
|
// _this.hdCount.yearUncheck = res.data.uncheck;
|
|
|
|
|
// this.$forceUpdate();//强制刷新
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
},
|
2024-06-05 15:04:52 +08:00
|
|
|
|
async getSumCount() {
|
2024-06-11 16:16:20 +08:00
|
|
|
|
const hotWorkCount = await this.getCount('/app/hotwork/cfd/countCheck');
|
|
|
|
|
const highWorkCount = await this.getCount('/app/gfHighwork/countCheck');
|
|
|
|
|
const blindBoardCount = await this.getCount('/app/gfBlindBoard/countCheck');
|
|
|
|
|
const hoistingCount = await this.getCount('/app/gfHoisting/countCheck');
|
|
|
|
|
const confinedSpaceCount = await this.getCount('/app/gfConfinedSpace/countCheck');
|
|
|
|
|
const electricityCount = await this.getCount('/app/gfElectricity/countCheck');
|
2024-06-05 15:04:52 +08:00
|
|
|
|
|
2024-06-11 16:16:20 +08:00
|
|
|
|
this.totalUnreadCount = hotWorkCount + highWorkCount + blindBoardCount + hoistingCount + confinedSpaceCount + electricityCount;
|
|
|
|
|
this.$forceUpdate();
|
2024-06-05 15:04:52 +08:00
|
|
|
|
},
|
|
|
|
|
getCount(url) {
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
uni.request({
|
|
|
|
|
url: basePath + url,
|
|
|
|
|
method: 'POST',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
header: { 'Content-type': 'application/x-www-form-urlencoded' },
|
|
|
|
|
data: {
|
|
|
|
|
tm: new Date().getTime(),
|
|
|
|
|
CORPINFO_ID: loginUser.CORPINFO_ID,
|
|
|
|
|
USER_ID: loginUser.USER_ID,
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
if (res.data.result === "success") {
|
|
|
|
|
resolve(res.data.count.SUMCOUNT || 0);
|
|
|
|
|
} else {
|
|
|
|
|
resolve(0);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
fail: (err) => {
|
|
|
|
|
console.error(err);
|
|
|
|
|
resolve(0);
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
},
|
2023-11-07 09:43:46 +08:00
|
|
|
|
// 隐患播报
|
|
|
|
|
getHiddenData() {
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
var _this = this;
|
|
|
|
|
if (_this.isEnd) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
uni.showLoading({
|
|
|
|
|
title: '请稍候'
|
|
|
|
|
});
|
|
|
|
|
let DISPOSESTATE = 2;
|
|
|
|
|
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:-1,
|
|
|
|
|
USERDEPT:loginUser.DEPARTMENT_ID,
|
|
|
|
|
SELFUSERID:loginUserId,
|
|
|
|
|
CORPINFO_ID:corpinfoId
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
// console.info(res.data);
|
|
|
|
|
if (res.data.result == 'success') {
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
_this.total = res.data.page.totalResult;
|
|
|
|
|
_this.hiddenList = res.data.varList;
|
|
|
|
|
} else {
|
|
|
|
|
uni.showToast({
|
|
|
|
|
title: res.data.message,
|
|
|
|
|
duration: 2000
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
resolve()
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
// 获取清单数量
|
|
|
|
|
getListData(){
|
|
|
|
|
var _this=this;
|
|
|
|
|
uni.showLoading({
|
|
|
|
|
title: '加载中'
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
uni.request({
|
|
|
|
|
|
|
|
|
|
url: basePath + '/app/listmanager/checkList',
|
|
|
|
|
method: 'POST',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
header: {
|
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
},
|
|
|
|
|
data: {
|
|
|
|
|
CORPINFO_ID: loginUser.CORPINFO_ID,
|
|
|
|
|
USER_ID: loginUser.USER_ID,
|
|
|
|
|
USER_NAME: loginUser.NAME,
|
|
|
|
|
CHECK_DEPARTMENT_ID: loginUser.DEPARTMENT_ID,
|
|
|
|
|
IS_MAIN:loginUser.ISMAIN,
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
if("success" == res.data.result){
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
var content = res.data.varList;
|
|
|
|
|
for(var i=0;i<content.length;i++){
|
|
|
|
|
if(content[i].checkCount==0){
|
|
|
|
|
this.totalList.push(content[i]);
|
|
|
|
|
}else{
|
|
|
|
|
this.totalList.push(content[i]);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}else{
|
|
|
|
|
uni.showToast({
|
|
|
|
|
icon:'none',
|
|
|
|
|
title: '系统异常',
|
|
|
|
|
duration: 2000
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
fail: (res) => {
|
|
|
|
|
uni.showToast({
|
|
|
|
|
icon: 'none',
|
|
|
|
|
title: "服务器正在升级,请稍后再试。",
|
|
|
|
|
duration: 2000
|
|
|
|
|
});
|
|
|
|
|
setTimeout(function() {
|
|
|
|
|
plus.runtime.quit();
|
|
|
|
|
}, 2000);
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
getSafetyEnvironmentalCount(){
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
var _this = this;
|
|
|
|
|
uni.showLoading({
|
|
|
|
|
title:"加载中..."
|
|
|
|
|
});//加载中动画
|
|
|
|
|
uni.request({
|
|
|
|
|
url: basePath +'/app/safetyenvironmental/countHome',
|
|
|
|
|
method: 'POST',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
header: {
|
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
|
},
|
|
|
|
|
data: {
|
|
|
|
|
CORPINFO_ID:corpinfoId,
|
|
|
|
|
USER_ID:loginUser.USER_ID,
|
|
|
|
|
tm:new Date().getTime()
|
|
|
|
|
},
|
|
|
|
|
success: (res) => {
|
|
|
|
|
uni.hideLoading();//结束加载中动画
|
|
|
|
|
if ("success" == res.data.result) {
|
|
|
|
|
_this.safetyEnvironmentalCount = res.data.count;
|
|
|
|
|
}
|
|
|
|
|
resolve()
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// refresh() {
|
|
|
|
|
// if (this._freshing) return;
|
|
|
|
|
// this._freshing = true;
|
|
|
|
|
// this.getData();
|
|
|
|
|
// setTimeout(() => {
|
|
|
|
|
// this.triggered = false;
|
|
|
|
|
// this._freshing = false;
|
|
|
|
|
// }, 1000)
|
|
|
|
|
// },
|
|
|
|
|
// refreshEnd() {
|
|
|
|
|
// this.triggered = 'restore'; // 需要重置
|
|
|
|
|
// console.log("onRestore");
|
|
|
|
|
// },
|
|
|
|
|
|
|
|
|
|
scan(){
|
|
|
|
|
let _this=this;
|
|
|
|
|
uni.scanCode({
|
|
|
|
|
success: function (res) {
|
|
|
|
|
let flag=false;
|
|
|
|
|
let listId = res.result;
|
|
|
|
|
for(var i=0;i<_this.totalList.length;i++){
|
|
|
|
|
if(_this.totalList[i].LISTMANAGER_ID==listId){
|
|
|
|
|
flag=true;
|
|
|
|
|
_this.goToList({listId:_this.totalList[i].LISTMANAGER_ID,listName:_this.totalList[i].NAME});
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(!flag){
|
|
|
|
|
uni.showToast({
|
|
|
|
|
title: "无法检查该清单",
|
|
|
|
|
duration: 2000
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
// scan(){
|
|
|
|
|
// let _this=this;
|
|
|
|
|
// uni.scanCode({
|
|
|
|
|
// success: function (res) {
|
|
|
|
|
// let flag=false;
|
|
|
|
|
// let unit = res.result;
|
|
|
|
|
// uni.navigateTo({
|
|
|
|
|
// url: '/pages/basics/risk-distribution/risk-distribution-forunit?unit='+unit
|
|
|
|
|
// });
|
|
|
|
|
// // _this.goToList({listId:_this.totalList[i].LISTMANAGER_ID,listName:_this.totalList[i].NAME});
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
// },
|
|
|
|
|
//跳转事件
|
|
|
|
|
goToexclude(e) {
|
|
|
|
|
this.$emit('setInit',true);
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/basics/hidden-danger-exclude/exclude-list',
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
goToDanger(e) {
|
|
|
|
|
this.$emit('setInit',true);
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/basics/danger-exclude/danger-exclude-list',
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
toSetinit(e) {
|
|
|
|
|
this.$emit('setInit',true);
|
|
|
|
|
},
|
|
|
|
|
//跳转事件
|
|
|
|
|
goToList(e) {
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: '/pages/application/hidden-trouble-investigation/hidden-trouble-app/hidden-trouble-spot?listId='+e.listId+'&listName='+e.listName
|
|
|
|
|
});
|
|
|
|
|
// uni.navigateTo({
|
|
|
|
|
// url: '/pages/application/hidden-trouble-investigation/hidden-trouble-app/check-items-list?listId='+e.listId+'&listName='+e.listName
|
|
|
|
|
// });
|
|
|
|
|
},
|
|
|
|
|
formatDate(time) {
|
|
|
|
|
let date = new Date(time)
|
|
|
|
|
return formatDate(date, 'yyyy-MM-dd')
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
|
.status_bar {
|
2024-06-05 15:04:52 +08:00
|
|
|
|
height: var(--status-bar-height);
|
|
|
|
|
width: 100%;
|
|
|
|
|
background-color: #022267;
|
2023-11-07 09:43:46 +08:00
|
|
|
|
}
|
|
|
|
|
.top_view {
|
2024-06-05 15:04:52 +08:00
|
|
|
|
height: var(--status-bar-height);
|
|
|
|
|
width: 100%;
|
|
|
|
|
position: fixed;
|
|
|
|
|
background-color: #022267;
|
|
|
|
|
top: 0;
|
|
|
|
|
z-index: 999;
|
2023-11-07 09:43:46 +08:00
|
|
|
|
}
|
|
|
|
|
.banner{
|
|
|
|
|
background-image: url("/static/new_images/banner.png");
|
|
|
|
|
background-size: 100% 100%;
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 34upx;
|
|
|
|
|
padding: 20upx 5%;
|
|
|
|
|
}
|
|
|
|
|
.options{
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
padding: 0 5% 30upx 3%;
|
|
|
|
|
border-radius: 50upx 50upx 0 0;
|
|
|
|
|
.girds{
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
.gird{
|
|
|
|
|
flex-basis: 25%;
|
|
|
|
|
margin-top: 30upx;
|
|
|
|
|
.a{
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
.image{
|
|
|
|
|
flex-basis: 100%;
|
|
|
|
|
text-align: center;
|
2024-06-05 15:04:52 +08:00
|
|
|
|
position: relative; // 添加相对定位
|
2023-11-07 09:43:46 +08:00
|
|
|
|
image{
|
|
|
|
|
width: 84upx;
|
|
|
|
|
height: 84upx;
|
|
|
|
|
}
|
2024-06-05 15:04:52 +08:00
|
|
|
|
.badge {
|
|
|
|
|
position: absolute;
|
|
|
|
|
top: -10px; // 调整位置
|
|
|
|
|
right: 0; // 调整位置
|
|
|
|
|
background-color: #dd514c;
|
|
|
|
|
color: white;
|
|
|
|
|
border-radius: 50%;
|
2024-06-13 18:09:35 +08:00
|
|
|
|
padding:3px 6px;
|
2024-06-05 15:04:52 +08:00
|
|
|
|
font-size: 12px;
|
|
|
|
|
}
|
2023-11-07 09:43:46 +08:00
|
|
|
|
}
|
|
|
|
|
.title{
|
|
|
|
|
flex-basis: 100%;
|
|
|
|
|
text-align: center;
|
|
|
|
|
margin-top: 10upx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.broadcast{
|
|
|
|
|
display: flex;
|
|
|
|
|
margin-top: 50upx;
|
|
|
|
|
.left{
|
|
|
|
|
background-color: #0081ff;
|
|
|
|
|
color: #FFFFFF;
|
|
|
|
|
width: 100upx;
|
|
|
|
|
text-align: center;
|
|
|
|
|
padding: 20upx;
|
|
|
|
|
border-radius: 20upx 0 0 20upx;
|
|
|
|
|
}
|
|
|
|
|
.right{
|
|
|
|
|
height: 126upx;
|
|
|
|
|
background-color: #f8f9fe;
|
|
|
|
|
border-radius: 0 20upx 20upx 0;
|
|
|
|
|
flex: 1;
|
|
|
|
|
padding: 0 20upx;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
.item{
|
|
|
|
|
font-size: 30upx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
align-items: center;
|
|
|
|
|
padding: 10upx 0;
|
|
|
|
|
border-bottom: 1px dashed #e4e5ea;
|
|
|
|
|
.u-line-1{
|
|
|
|
|
flex-basis: 40%;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.high-risk-work{
|
|
|
|
|
margin-top: 20upx;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
}
|
|
|
|
|
</style>
|