手机端同步pc端查看重点工程的交互逻辑

dev-2024年1月8日
dearlin 2023-11-10 17:03:46 +08:00
parent 94d8533849
commit 6db77875a1
7 changed files with 375 additions and 337 deletions

View File

@ -81,6 +81,8 @@ export const setFinalCheck = (params) => post("/app/hidden/finalcheck", params)
export const getCorpinfoDeptListTree = (params) => post("/app/corpDepartment/listTree", params) //获取企业的 部门信息
export const getSafetyenvironmentalExplain = (params) => post("/app/safetyenvironmental/getExplain", params) //获取安全环保检查申辩流程列表
export const getKeyProjectsListOutsourced = (params) => post("/app/keyProjects/listOutsourced", params) //获取重点工程管理被检查项目列表
export const getKeyProjectsListListByCorp = (params) => post("/api/outsourced/listByCorp", params) //获取重点工程管理按照公司分组
export const getKeyProjectsCheckList = (params) => post("/app/keyprojectcheck/list", params) //获取重点工程管理被检查项目检查列表
export const getKeyProjectsListAllUnits = (params) => post("/app/keyProjects/listAllUnits", params) //获取重点工程管理被检查项目检查被检查单位
export const getKeyProjectsListAllPersonnel = (params) => post("/app/keyProjects/listAllPersonnel", params) //获取重点工程管理被检查项目检查被检查人

View File

@ -536,6 +536,12 @@
"navigationBarTitleText": "重点工程管理"
}
},
{
"path": "pages/key-project-management/key-project-out/list",
"style": {
"navigationBarTitleText": "重点工程"
}
},
{
"path": "pages/key-project-management/safety-environmental-inspection/list",
"style": {

View File

@ -1,25 +1,25 @@
<template>
<view class="page">
<!-- #ifdef APP-PLUS -->
<view class="status_bar">
<view class="top_view"></view>
</view>
<!-- #endif -->
<view class="wui_banner">
<!-- <view class="wui-bar">-->
<!-- <view class="search-form">-->
<!-- <text class="cuIcon-search"></text>-->
<!-- <input type="text" placeholder-class="phcolor" placeholder="请输入关键词..." confirm-type="search"></input>-->
<!-- </view>-->
<!-- <view class="icon-ui">-->
<!-- <text class="cuIcon-scan"></text>-->
<!-- </view>-->
<!-- </view>-->
<view class="banner_img">
<image src="../../static/home-bg.png" mode=""></image>
</view>
</view>
<!-- <view class="about-infoer">
<view class="page">
<!-- #ifdef APP-PLUS -->
<view class="status_bar">
<view class="top_view"></view>
</view>
<!-- #endif -->
<view class="wui_banner">
<!-- <view class="wui-bar">-->
<!-- <view class="search-form">-->
<!-- <text class="cuIcon-search"></text>-->
<!-- <input type="text" placeholder-class="phcolor" placeholder="请输入关键词..." confirm-type="search"></input>-->
<!-- </view>-->
<!-- <view class="icon-ui">-->
<!-- <text class="cuIcon-scan"></text>-->
<!-- </view>-->
<!-- </view>-->
<view class="banner_img">
<image src="../../static/home-bg.png" mode=""></image>
</view>
</view>
<!-- <view class="about-infoer">
<view class="about-info">
<view class="about-info-main-tx" ></view>
<view class="about-info-text">
@ -28,281 +28,288 @@
</view>
</view>
</view> -->
<view class="home-apps">
<view class="home-apps-item" v-for="(item,index) in baseList" :key="index" @click="fnNavigator(index)">
<view class="home-apps-item-img">
<image :src="item.img" mode=""></image>
</view>
<view class="text">
<text>{{ item.title }}</text>
</view>
</view>
</view>
<!-- <view class="home-message">-->
<!-- <view class="home-title">-->
<!-- <image src="../../static/message.png" mode=""></image>-->
<!-- </view>-->
<!-- <view class="home-content">-->
<!-- 站内信示例文字滚动显示最大-->
<!-- </view>-->
<!-- <view class="home-more">-->
<!-- 更多-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="home-letters">-->
<!-- <view class="letters-title">-->
<!-- <image src="../../static/stitle.png" mode=""></image>-->
<!-- </view>-->
<!-- <view class="letters-content">-->
<!-- <view class="letters-item">-->
<!-- <view class="letters-title">-->
<!-- <view>-->
<!-- <text class="lable">隐患来源</text>-->
<!-- <text class="font">秦港一公司</text>-->
<!-- </view>-->
<!-- <view class="color-red">重大隐患</view>-->
<!-- </view>-->
<!-- <view class="letters-sub-title">-->
<!-- <text class="lable">隐患描述</text>-->
<!-- <text class="font">第二罐体出现不稳定情况第二罐体出现不稳定情况罐体...</text>-->
<!-- </view>-->
<!-- <view class="letters-date">-->
<!-- <text class="lable">发现时间</text>-->
<!-- <text class="font">2022-10-31 10:33:20</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="letters-item">-->
<!-- <view class="letters-title">-->
<!-- <view>-->
<!-- <text class="lable">隐患来源</text>-->
<!-- <text class="font">秦港一公司</text>-->
<!-- </view>-->
<!-- <view class="color-org">较大隐患</view>-->
<!-- </view>-->
<!-- <view class="letters-sub-title">-->
<!-- <text class="lable">隐患描述</text>-->
<!-- <text class="font">第二罐体出现不稳定情况第二罐体出现不稳定情况罐体...</text>-->
<!-- </view>-->
<!-- <view class="letters-date">-->
<!-- <text class="lable">发现时间</text>-->
<!-- <text class="font">2022-10-31 10:33:20</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="letters-item">-->
<!-- <view class="letters-title">-->
<!-- <view>-->
<!-- <text class="lable">隐患来源</text>-->
<!-- <text class="font">秦港一公司</text>-->
<!-- </view>-->
<!-- <view class="color-nomal">一般隐患</view>-->
<!-- </view>-->
<!-- <view class="letters-sub-title">-->
<!-- <text class="lable">隐患描述</text>-->
<!-- <text class="font">第二罐体出现不稳定情况第二罐体出现不稳定情况罐体...</text>-->
<!-- </view>-->
<!-- <view class="letters-date">-->
<!-- <text class="lable">发现时间</text>-->
<!-- <text class="font">2022-10-31 10:33:20</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="home-line">-->
<!-- &#45;&#45;&#45;&#45;&#45;&#45; END &#45;&#45;&#45;&#45;&#45;&#45;-->
<!-- </view>-->
<u-modal :show="updateVersion.modalShow" title="温馨提示" :showConfirmButton="updateVersion.showConfirmButton"
:showCancelButton="updateVersion.showCancelButton" :confirmText="updateVersion.confirmText" :cancelText="updateVersion.cancelText"
@cancel="modalCancel" @confirm="modalConfirm">
<view style="text-align: center;color:#606266">
<rich-text :nodes="updateVersion.modalContent"></rich-text>
</view>
</u-modal>
<u-modal :show="isPromiseUnsigned" title="温馨提示" @confirm="promiseUnsignedModalConfirm">
<view>有未签署的安全承诺点击确认前往签署</view>
</u-modal>
</view>
<view class="home-apps">
<view class="home-apps-item" v-for="(item,index) in baseList" :key="index" @click="fnNavigator(index)">
<view class="home-apps-item-img">
<image :src="item.img" mode=""></image>
</view>
<view class="text">
<text>{{ item.title }}</text>
</view>
</view>
</view>
<!-- <view class="home-message">-->
<!-- <view class="home-title">-->
<!-- <image src="../../static/message.png" mode=""></image>-->
<!-- </view>-->
<!-- <view class="home-content">-->
<!-- 站内信示例文字滚动显示最大-->
<!-- </view>-->
<!-- <view class="home-more">-->
<!-- 更多-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="home-letters">-->
<!-- <view class="letters-title">-->
<!-- <image src="../../static/stitle.png" mode=""></image>-->
<!-- </view>-->
<!-- <view class="letters-content">-->
<!-- <view class="letters-item">-->
<!-- <view class="letters-title">-->
<!-- <view>-->
<!-- <text class="lable">隐患来源</text>-->
<!-- <text class="font">秦港一公司</text>-->
<!-- </view>-->
<!-- <view class="color-red">重大隐患</view>-->
<!-- </view>-->
<!-- <view class="letters-sub-title">-->
<!-- <text class="lable">隐患描述</text>-->
<!-- <text class="font">第二罐体出现不稳定情况第二罐体出现不稳定情况罐体...</text>-->
<!-- </view>-->
<!-- <view class="letters-date">-->
<!-- <text class="lable">发现时间</text>-->
<!-- <text class="font">2022-10-31 10:33:20</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="letters-item">-->
<!-- <view class="letters-title">-->
<!-- <view>-->
<!-- <text class="lable">隐患来源</text>-->
<!-- <text class="font">秦港一公司</text>-->
<!-- </view>-->
<!-- <view class="color-org">较大隐患</view>-->
<!-- </view>-->
<!-- <view class="letters-sub-title">-->
<!-- <text class="lable">隐患描述</text>-->
<!-- <text class="font">第二罐体出现不稳定情况第二罐体出现不稳定情况罐体...</text>-->
<!-- </view>-->
<!-- <view class="letters-date">-->
<!-- <text class="lable">发现时间</text>-->
<!-- <text class="font">2022-10-31 10:33:20</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="letters-item">-->
<!-- <view class="letters-title">-->
<!-- <view>-->
<!-- <text class="lable">隐患来源</text>-->
<!-- <text class="font">秦港一公司</text>-->
<!-- </view>-->
<!-- <view class="color-nomal">一般隐患</view>-->
<!-- </view>-->
<!-- <view class="letters-sub-title">-->
<!-- <text class="lable">隐患描述</text>-->
<!-- <text class="font">第二罐体出现不稳定情况第二罐体出现不稳定情况罐体...</text>-->
<!-- </view>-->
<!-- <view class="letters-date">-->
<!-- <text class="lable">发现时间</text>-->
<!-- <text class="font">2022-10-31 10:33:20</text>-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<!-- </view>-->
<!-- <view class="home-line">-->
<!-- &#45;&#45;&#45;&#45;&#45;&#45; END &#45;&#45;&#45;&#45;&#45;&#45;-->
<!-- </view>-->
<u-modal :show="updateVersion.modalShow" title="温馨提示" :showConfirmButton="updateVersion.showConfirmButton"
:showCancelButton="updateVersion.showCancelButton" :confirmText="updateVersion.confirmText"
:cancelText="updateVersion.cancelText" @cancel="modalCancel" @confirm="modalConfirm">
<view style="text-align: center;color:#606266">
<rich-text :nodes="updateVersion.modalContent"></rich-text>
</view>
</u-modal>
<u-modal :show="isPromiseUnsigned" title="温馨提示" @confirm="promiseUnsignedModalConfirm">
<view>有未签署的安全承诺点击确认前往签署</view>
</u-modal>
</view>
</template>
<script>
import updateVersion from "../../utils/updateVersion";
import {getPromiseUnsigned} from "../../api";
export default {
mixins:[updateVersion],
data() {
return {
baseList: [
{
img: require('../../static/icon-apps/home-fgsxxgl.png'),
title: '分公司信息管理',
url: '/pages/branch-information-management/index/index'
},
{
img: require('../../static/icon-apps/home-fxfjgk.png'),
title: '风险分级管控',
url: '/pages/risk-level-control/index/index'
},
{
img: require('../../static/icon-apps/home-fgszczb.png'),
title: '分公司自查自报',
url: '/pages/branch-self-report/index/index'
},
{
img: require('../../static/icon-apps/home-ybyhgl.png'),
title: '一般隐患管理',
url: '/pages/general-hidden-management/index/index'
},
{
img: require('../../static/icon-apps/home-zdyhgl.png'),
title: '较大及重大隐患管理',
url: '/pages/larger-major-hidden-management/index/index'
},
{
img: require('../../static/icon-apps/home-aqhbjc.png'),
title: '安全环保检查',
url: '/pages/safety-environmental-inspection/index/index'
},
{
img: require('../../static/icon-apps/home-tjfxkp.png'),
title: '特级动火审批',
url: '/pages/super-hot/index/index'
},
{
img: require('../../static/icon-apps/home-zdgcgl.png'),
title: '重点工程管理',
url: '/pages/key-project-management/index/index'
},
{
img: require('../../static/icon-apps/home-znx.png'),
title: '秦港站内信',
url: '/pages/information/index/index'
},
],
isPromiseUnsigned: false
}
},
onShow() {
this.fnGetPromiseUnsigned()
},
onLoad() {
console.info(this.$store.state.filePath)
this.fnUpdateVersion()
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
}
},
// mounted() {
// this.loginUser = loginUser;
// if(this.loginUser.USERNAME){
// this.getUserInfo();
// }
// },
methods: {
import updateVersion from "../../utils/updateVersion";
import {
getPromiseUnsigned
} from "../../api";
export default {
mixins: [updateVersion],
data() {
return {
baseList: [{
img: require('../../static/icon-apps/home-fgsxxgl.png'),
title: '分公司信息管理',
url: '/pages/branch-information-management/index/index'
},
{
img: require('../../static/icon-apps/home-fxfjgk.png'),
title: '风险分级管控',
url: '/pages/risk-level-control/index/index'
},
{
img: require('../../static/icon-apps/home-fgszczb.png'),
title: '分公司自查自报',
url: '/pages/branch-self-report/index/index'
},
{
img: require('../../static/icon-apps/home-ybyhgl.png'),
title: '一般隐患管理',
url: '/pages/general-hidden-management/index/index'
},
{
img: require('../../static/icon-apps/home-zdyhgl.png'),
title: '较大及重大隐患管理',
url: '/pages/larger-major-hidden-management/index/index'
},
{
img: require('../../static/icon-apps/home-aqhbjc.png'),
title: '安全环保检查',
url: '/pages/safety-environmental-inspection/index/index'
},
{
img: require('../../static/icon-apps/home-tjfxkp.png'),
title: '特级动火审批',
url: '/pages/super-hot/index/index'
},
{
img: require('../../static/icon-apps/home-zdgcgl.png'),
title: '重点工程管理',
url: '/pages/key-project-management/key-project-out/list',
// url: '/pages/key-project-management/index/index'
},
{
img: require('../../static/icon-apps/home-znx.png'),
title: '秦港站内信',
url: '/pages/information/index/index'
},
],
isPromiseUnsigned: false
}
},
onShow() {
this.fnGetPromiseUnsigned()
},
onLoad() {
console.info(this.$store.state.filePath)
this.fnUpdateVersion()
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
}
},
// mounted() {
// this.loginUser = loginUser;
// if(this.loginUser.USERNAME){
// this.getUserInfo();
// }
// },
methods: {
// getUserInfo(){
// var _this = this;
// uni.request({
// url: basePath+"/app/user/getUserPhoto", //
// method: 'POST',
// dataType:'json',
// header:{
// 'Content-type':'application/x-www-form-urlencoded'
// },
// data: {
// USERNAME:this.loginUser.USERNAME,
// },
// success: (res) => {
// if('success' == res.data.result){
// _this.userPhoto =basePath +"/"+ res.data.userPhoto;
// }else{
// uni.showToast({
// title: res.data.message,
// duration: 2000
// });
// }
// }
// });
// },
async fnGetPromiseUnsigned() {
let resData = await getPromiseUnsigned({
USER_ID: this.userInfo.USER_ID
})
if (resData.ISSIGN === 1) {
uni.hideTabBar({
animation: true
})
this.isPromiseUnsigned = true
} else {
uni.showTabBar({
animation: true
})
this.isPromiseUnsigned = false
}
},
fnNavigator(e) {
if (e === 8) {
uni.$u.route({
url: this.baseList[e].url,
type: 'switchTab'
})
} else {
uni.$u.route({
url: this.baseList[e].url
})
}
},
promiseUnsignedModalConfirm() {
uni.$u.route({
url: '/pages/mine/promise/sign',
type: 'reLaunch'
})
}
},
}
// getUserInfo(){
// var _this = this;
// uni.request({
// url: basePath+"/app/user/getUserPhoto", //
// method: 'POST',
// dataType:'json',
// header:{
// 'Content-type':'application/x-www-form-urlencoded'
// },
// data: {
// USERNAME:this.loginUser.USERNAME,
// },
// success: (res) => {
// if('success' == res.data.result){
// _this.userPhoto =basePath +"/"+ res.data.userPhoto;
// }else{
// uni.showToast({
// title: res.data.message,
// duration: 2000
// });
// }
// }
// });
// },
async fnGetPromiseUnsigned() {
let resData = await getPromiseUnsigned({
USER_ID: this.userInfo.USER_ID
})
if (resData.ISSIGN === 1) {
uni.hideTabBar({
animation: true
})
this.isPromiseUnsigned = true
} else {
uni.showTabBar({
animation: true
})
this.isPromiseUnsigned = false
}
},
fnNavigator(e) {
if (e === 8) {
uni.$u.route({
url: this.baseList[e].url,
type: 'switchTab'
})
} else {
uni.$u.route({
url: this.baseList[e].url
})
}
},
promiseUnsignedModalConfirm() {
uni.$u.route({
url: '/pages/mine/promise/sign',
type: 'reLaunch'
})
}
},
}
</script>
<style lang="scss" scoped>
.page {
background-color: #f7f9ff;
min-height: 100vh;
}
.page {
background-color: #f7f9ff;
min-height: 100vh;
}
.about-infoer{
width: 100%;
position: relative;
padding: 20rpx;
box-sizing: border-box;
margin-top: -130rpx;
.about-info{
.about-infoer {
width: 100%;
background: #ffffff;
position: relative;
padding: 20rpx;
box-sizing: border-box;
border-radius: 10rpx;
display: flex;
align-items: center;
margin-top: -130rpx;
.about-info {
width: 100%;
background: #ffffff;
padding: 20rpx;
box-sizing: border-box;
border-radius: 10rpx;
display: flex;
align-items: center;
.about-info-main-tx{
width: 100rpx;
height: 100rpx;
background: #ccc;
border-radius: 100%;
}
.about-info-main-tx {
width: 100rpx;
height: 100rpx;
background: #ccc;
border-radius: 100%;
}
.about-info-text{
margin-left: 20rpx;
.about-info-text {
margin-left: 20rpx;
.title{ font-size: 32rpx; font-weight: bold;}
.title {
font-size: 32rpx;
font-weight: bold;
}
.phone{ color: #999999; font-size: 26rpx;}
.phone {
color: #999999;
font-size: 26rpx;
}
}
}
}
}
</style>

View File

@ -129,6 +129,7 @@ export default {
{name: '已验收隐患', id: '2'}
],
tabsType: '1',
CORPINFO_ID: '',
pageSize: 10,
currentPage: 1,
totalPage: 0,
@ -165,6 +166,9 @@ export default {
onShow() {
this.resetList()
},
onLoad() {
this.CORPINFO_ID = this.$route.query.CORPINFO_ID
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
@ -176,6 +180,7 @@ export default {
showCount: this.pageSize,
currentPage: this.currentPage,
CREATOR: this.userInfo.USER_ID,
CORPINFO_ID: this.CORPINFO_ID,
ISCHECK: this.tabsType
});
this.list = [...this.list,...resData.varList];

View File

@ -1,68 +1,76 @@
<template>
<view class="content">
<u-cell-group>
<u-cell v-for="(item,index) in baseList" :key="index" isLink :url="item.url">
<view slot="title">{{ item.title }}</view>
<view slot="value">
<u-badge :value="item.NUM"></u-badge></view>
</u-cell>
</u-cell-group>
</view>
<view class="content">
<u-cell-group>
<u-cell v-for="(item,index) in baseList" :key="index" isLink :url="item.url">
<view slot="title">{{ item.title }}</view>
<view slot="value">
<u-badge :value="item.NUM"></u-badge>
</view>
</u-cell>
</u-cell-group>
</view>
</template>
<script>
import {
getkeyprojectcount,
} from "../../../api";
import {
getkeyprojectcount,
} from "../../../api";
export default {
data() {
return {
count : {},
baseList: []
}
},
onShow(event) {
this.baseList = [
{
title: '安全环保检查管理',
url: '/pages/key-project-management/safety-environmental-inspection/list',
},
{
title: '隐患管理',
url: '/pages/key-project-management/hidden-management/list',
},
{
title: '处罚管理',
url: '/pages/key-project-management/penalty-management/list',
},
// {
// title: 'AI',
// url: '/pages/key-project-management/AI-warning/list',
// },
]
this.getData();
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
}
},
methods: {
fnNavigator(e) {
uni.$u.route({
url: this.baseList[e].url
})
},
async getData() {
let resData = await getkeyprojectcount({
loginUserId: this.userInfo.USER_ID,
})
this.$set(this.baseList[1], 'NUM', resData.pd.HIDDEN_COUNT)
this.$set(this.baseList[2], 'NUM', resData.pd.CF_COUNT)
}
},
}
export default {
data() {
return {
count: {},
CORPINFO_ID: '',
baseList: []
}
},
onLoad() {
this.CORPINFO_ID = this.$route.query.CORPINFO_ID
},
onShow(event) {
this.baseList = [{
title: '安全环保检查管理',
url: '/pages/key-project-management/safety-environmental-inspection/list'+ '?CORPINFO_ID='+this.CORPINFO_ID,
},
{
title: '隐患管理',
url: '/pages/key-project-management/hidden-management/list'+'?CORPINFO_ID='+this.CORPINFO_ID,
},
{
title: '处罚管理',
url: '/pages/key-project-management/penalty-management/list'+'?CORPINFO_ID='+this.CORPINFO_ID,
},
// {
// title: 'AI',
// url: '/pages/key-project-management/AI-warning/list',
// },
]
this.getData();
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
}
},
methods: {
fnNavigator(e) {
console.log(this.CORPINFO_ID)
uni.$u.route({
url: this.baseList[e].url+'?CORPINFO_ID'+this.CORPINFO_ID
})
},
async getData() {
let resData = await getkeyprojectcount({
loginUserId: this.userInfo.USER_ID,
CORPINFO_ID: this.CORPINFO_ID
})
this.$set(this.baseList[1], 'NUM', resData.pd.HIDDEN_COUNT)
this.$set(this.baseList[2], 'NUM', resData.pd.CF_COUNT)
}
},
}
</script>
<style scoped>

View File

@ -119,6 +119,7 @@ export default {
RECTIFICATIONDEPT_NAME: '',
RECTIFICATIONOR_NAME: '',
REASON: '',
CORPINFO_ID: '',
AMOUT: '',
DATE: uni.$u.timeFormat(new Date(), 'yyyy-mm-dd hh:MM'),
},
@ -128,6 +129,9 @@ export default {
onShow() {
this.resetList()
},
onLoad() {
this.CORPINFO_ID = this.$route.query.CORPINFO_ID
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
@ -138,6 +142,7 @@ export default {
let resData = await getKeyProjectsPunishList({
showCount: this.pageSize,
currentPage: this.currentPage,
CORPINFO_ID: this.CORPINFO_ID,
HANDLED: this.tabsType,
loginUserId: this.userInfo.USER_ID
});

View File

@ -59,12 +59,16 @@ export default {
data() {
return {
KEYWORDS: '',
CORPINFO_ID: '',
pageSize: 10,
currentPage: 1,
totalPage: 0,
list: [],
}
},
onLoad() {
this.CORPINFO_ID = this.$route.query.CORPINFO_ID
},
onShow() {
this.resetList()
},
@ -79,6 +83,7 @@ export default {
KEYWORDS: this.KEYWORDS,
showCount: this.pageSize,
currentPage: this.currentPage,
CORPINFO_ID: this.CORPINFO_ID,
UserId: this.userInfo.USER_ID,
STATE:'1'
});