小程序端任务处理

This commit is contained in:
caoqianming 2022-11-18 18:16:41 +08:00
parent 5eaf074413
commit bb12f57e8b
18 changed files with 701 additions and 9 deletions

View File

@ -97,7 +97,10 @@
"pages/safefeedback/index",
"pages/safefeedback/add",
"pages/operation/operationedit",
"pages/mgt/index"
"pages/mgt/index",
"pages/checkjob/index2",
"pages/checkjob/detail2",
"pages/checkjob/check2"
],
"window": {
"backgroundTextStyle": "light",

166
pages/checkjob/check2.js Normal file
View File

@ -0,0 +1,166 @@
// pages/risktask/check.js
Page({
/**
* 页面的初始数据
*/
data: {
page: 1,
riskact: 0,
riskacttask:0,
group: 0
},
bindnoteInput: function (e) {
this.data.checknote = e.detail.value
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
console.log(options)
this.data.riskact = options.riskact
if(options.riskacttask){
this.data.riskacttask = options.riskacttask
this.getTaskDetail()
}
this.getlist()
},
getTaskDetail:function() {
wx.request({
url: getApp().globalData.serverUrl + 'api/riskacttask?a=detail&id=' + this.data.riskacttask,
header: {
'content-type': 'application/json', // 默认值
'Cookie': getApp().globalData.sessionId,
},
success: res => {
if (res.statusCode === 200) {
this.setData({
tasknote: res.data.data.tasknote,
})
}
}
});
},
getlist: function () {
var page = this.data.page
wx.showLoading({
title: '加载中',
})
wx.request({
url: getApp().globalData.serverUrl + 'api/risk?a=listall&table_type=2&riskact=' + this.data.riskact,
header: {
'content-type': 'application/json', // 默认值
'Cookie': getApp().globalData.sessionId,
},
success: res => {
if (res.statusCode === 200) {
wx.hideLoading()
console.log(res.data)
this.setData({
total: res.data.total,
alllist: res.data.rows
})
}
wx.hideLoading();
}
});
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
open: function (e) {
console.log(e)
wx.navigateTo({
url: '/pages/trouble/addtrouble?type=riskcheck&index=' + e.currentTarget.dataset.index,
})
},
submit: function () {
let alllist = this.data.alllist
let data = {'checks':[],'riskact':this.data.riskact, 'riskacttask':this.data.riskacttask}
for (var i = 0; i < alllist.length; i++) {
if (i.trouble != undefined){
data.checks.push({ 'id': alllist[i].id })
}
else{
data.checks.push({ 'id': alllist[i].id, 'trouble': alllist[i].trouble })
}
}
wx.showLoading({
title: '提交中',
})
if(this.data.checknote){
data.note = this.data.checknote //检查备注
}
wx.request({
url: getApp().globalData.serverUrl + 'api/riskcheck2?a=add',
header: {
'content-type': 'application/json', // 默认值
'Cookie': getApp().globalData.sessionId,
},
method: 'POST',
data: data,
success: res => {
if (res.statusCode === 200) {
var pages = getCurrentPages();
var currPage = pages[pages.length - 1]; //当前页面
var prevPage = pages[pages.length - 2]; //上一个页面
//直接调用上一个页面对象的setData()方法,把数据存到上一个页面中去
prevPage.setData({
riskact: this.data.riskact
});
wx.navigateBack({
})
}
wx.hideLoading();
}
});
},
})

View File

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

View File

@ -0,0 +1,33 @@
<view class="head">共{{total}}条检查条目</view>
<view class="weui-cells weui-cells_after-title" wx:if="{{tasknote}}">
<view class="weui-cell">
<view class="weui-cell__bd">
检查说明:{{tasknote}}
</view>
</view>
</view>
<view class="weui-cells weui-cells_after-title">
<block wx:for="{{alllist}}" wx:key="unique">
<view class="weui-media-box weui-media-box_appmsg">
<view class="weui-media-box__bd weui-media-box__bd_in-appmsg" >
<view class="weui-media-box__title">
{{item.content}}
</view>
<button class="weui-btn mini-btn" type="warn" size="mini" disabled="{{item.yhnum != null}}" data-index="{{index}}" bindtap="open">发现隐患</button>
<view class="weui-media-box__desc" style="color:red" wx:if="{{item.yhnum != null}}">{{item.yhnum}}</view>
</view>
</view>
</block>
</view>
<view class="weui-cells__title">检查备注</view>
<view class="weui-cells weui-cells_after-title">
<view class="weui-cell">
<view class="weui-cell__bd">
<textarea class="weui-textarea" placeholder="请输入检查备注" style="height: 4.6em" bindinput="bindnoteInput" maxlength="-1" />
</view>
</view>
</view>
<view class="btn-area" style="margin-top:6px">
<button class="weui-btn" type="primary" bindtap="submit"
disabled="{{alllist[0].user__userid!=null}}">排查完毕,提交!</button>
</view>

View File

@ -0,0 +1,14 @@
.weui-btn{
width:auto;
margin: 5px;
}
.container {
background-color: #fff;
color: #939393;
}
.head{
color:#fff;
background-color: cornflowerblue;
text-align: center;
}

66
pages/checkjob/detail2.js Normal file
View File

@ -0,0 +1,66 @@
// pages/checkjob/detail2.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

View File

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

View File

@ -0,0 +1,2 @@
<!--pages/checkjob/detail2.wxml-->
<text>pages/checkjob/detail2.wxml</text>

View File

@ -0,0 +1 @@
/* pages/checkjob/detail2.wxss */

277
pages/checkjob/index2.js Normal file
View File

@ -0,0 +1,277 @@
// pages/suggest/suggest.js
var sliderWidth = 96;
Page({
/**
* 页面的初始数据
*/
data: {
page: 1,
serverUrl: getApp().globalData.serverUrl,
alllist: [],
tabs: ["历史任务", "我的待办", "全厂待办"],
activeIndex: 1,
sliderOffset: 0,
sliderLeft: 0
},
tabClick: function (e) {
var that = this
that.setData({
sliderOffset: e.currentTarget.offsetLeft,
activeIndex: e.currentTarget.id
});
if (that.data.activeIndex == 0) {
that.getmylist(1)
that.data.mypage = 1
}
else if (that.data.activeIndex == 1) {
that.gettodolist(1)
that.data.todopage = 1
}
else if (that.data.activeIndex == 2) {
that.getalllist(1)
that.data.page = 1
}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
var that = this;
wx.getSystemInfo({
success: function (res) {
that.setData({
sliderLeft: (res.windowWidth / that.data.tabs.length - sliderWidth) / 2,
sliderOffset: res.windowWidth / that.data.tabs.length * that.data.activeIndex
});
}
});
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
var that = this;
that.onPullDownRefresh();
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
var that = this;
if (that.data.activeIndex == 0) {
that.getmylist(1)
wx.stopPullDownRefresh();
that.data.mypage = 1
}
else if (that.data.activeIndex == 1) {
that.gettodolist(1)
wx.stopPullDownRefresh();
that.data.todopage = 1
}
else if (that.data.activeIndex == 2) {
that.getalllist(1)
wx.stopPullDownRefresh();
that.data.page = 1
}
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
//上拉分页,将页码加1然后调用分页函数
var that = this;
if (that.data.activeIndex == 0) {
this.data.mypage = this.data.mypage + 1;
this.getmylist();
}
else if (that.data.activeIndex == 1) {
this.data.todopage = this.data.todopage + 1;
this.gettodolist();
}
else if (that.data.activeIndex == 2) {
this.data.page = this.data.page + 1;
this.getalllist();
}
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
getalllist: function (page) {
var that = this;
if (page != 1) { page = that.data.page }
wx.showLoading({
title: '加载中',
}),
wx.request({
url: this.data.serverUrl + 'api/riskacttask?a=listalltodo&table_type=2&rows=10&page=' + page,
header: {
'content-type': 'application/json', // 默认值
'Cookie': getApp().globalData.sessionId,
},
success: res => {
if (res.statusCode === 200) {
if (res.data.rows.length == 0) {
if (page == 1) {
this.setData({
total: 0,
alllist: []
})
}
else {
wx.showModal({
content: "已经到底啦!",
showCancel: false,
confirmText: "确定",
})
}
} else {
let list
if (page == 1) {
list = res.data.rows
} else {
list = this.data.alllist.concat(res.data.rows)
}
this.setData({
total: res.data.total,
alllist: list
})
}
}
wx.hideLoading();
}
});
},
getmylist: function (page) {
var that = this;
if (page != 1) { page = that.data.mypage }
wx.showLoading({
title: '加载中',
}),
wx.request({
url: this.data.serverUrl + 'api/riskacttask?a=listself&table_type=2&rows=10&page=' + page,
header: {
'content-type': 'application/json', // 默认值
'Cookie': getApp().globalData.sessionId,
},
success: res => {
if (res.statusCode === 200) {
if (res.data.rows.length == 0) {
if (page == 1) {
this.setData({
donetotal: 0,
donelist: []
})
}
else {
wx.showModal({
content: "已经到底啦!",
showCancel: false,
confirmText: "确定",
})
}
} else {
let list
if (page == 1) {
list = res.data.rows
} else {
list = this.data.donelist.concat(res.data.rows)
}
this.setData({
donetotal: res.data.total,
donelist: list
})
}
}
wx.hideLoading();
}
});
},
scan: function () {
wx.scanCode({
onlyFromCamera: true,
success(res) {
console.log(res)
let id = res.result.split('=')[1]
wx.navigateTo({
url: 'check?riskact=' + id,
})
}
})
},
gettodolist: function (page) {
var that = this;
if (page != 1) { page = that.data.todopage }
wx.showLoading({
title: '加载中',
}),
wx.request({
url: this.data.serverUrl + 'api/riskacttask?a=listmytodo2&table_type=2&rows=10&page=' + page,
header: {
'content-type': 'application/json', // 默认值
'Cookie': getApp().globalData.sessionId,
},
success: res => {
if (res.statusCode === 200) {
console.log(res.data)
if (res.data.rows.length == 0) {
if (page == 1) {
this.setData({
todototal: 0,
todolist: []
})
}
else {
wx.showModal({
content: "已经到底啦!",
showCancel: false,
confirmText: "确定",
})
}
} else {
let list
if (page == 1) {
list = res.data.rows
} else {
list = this.data.todolist.concat(res.data.rows)
}
this.setData({
todototal: res.data.total,
todolist: list
})
}
}
wx.hideLoading();
}
});
},
})

View File

@ -0,0 +1,5 @@
{
"navigationBarTitleText": "排查任务",
"enablePullDownRefresh": true,
"onReachBottomDistance": 20
}

View File

@ -0,0 +1,84 @@
<view class="weui-tab">
<view class="weui-navbar">
<block wx:for="{{tabs}}" wx:key="*this">
<view id="{{index}}" class="weui-navbar__item {{activeIndex == index ? 'weui-bar__item_on' : ''}}" bindtap="tabClick">
<view class="weui-navbar__title">{{item}}</view>
</view>
</block>
<view class="weui-navbar__slider" style="left: {{sliderLeft}}px; transform: translateX({{sliderOffset}}px); -webkit-transform: translateX({{sliderOffset}}px);"></view>
</view>
<view class="weui-tab__panel">
<view class="weui-tab__content" hidden="{{activeIndex != 0}}">
<view class="head">共{{donetotal}}条</view>
<view class="weui-cells weui-cells_after-title">
<block wx:for="{{donelist}}" wx:key="unique">
<navigator url="detail2?id={{item.id}}" class="weui-media-box weui-media-box_appmsg" hover-class="weui-cell_active">
<view class="weui-media-box__bd weui-media-box__bd_in-appmsg">
<view class="weui-media-box__title">
<span style="background-color:green;color:white">检查表</span>
{{item.riskact__name}}
</view>
<!-- <view class="weui-media-box__desc">
<span style="background-color:orange;color:white">所属岗位</span>
{{item.riskact__group__groupname}}
</view> -->
<view class="weui-media-box__desc">任务生成时间:{{item.taskadd}}</view>
<view class="weui-media-box__desc" wx:if="{{item.taskexpire}}">任务过期时间:{{item.taskexpire}}</view>
<view class="weui-media-box__desc" wx:if="{{item.user__name}}">执行人:{{item.user__name}}</view>
</view>
<view class="weui-panel__ft weui-cell__ft_in-access">
<view wx:if="{{item.taskdo!=null}}" class="weui-media-box__title" style="background-color:green;color:white">已执行</view>
<view wx:if="{{item.usable==2}}" class="weui-media-box__title" style="background-color:green;color:white">作废</view>
<view wx:if="{{item.usable==0 && item.taskdo==null}}" class="weui-media-box__title" style="background-color:red;color:white">已过期</view>
</view>
</navigator>
</block>
</view>
</view>
<view class="weui-tab__content" hidden="{{activeIndex != 1}}">
<view class="head">共{{todototal}}条任务</view>
<view class="weui-cells weui-cells_after-title">
<block wx:for="{{todolist}}" wx:key="unique">
<navigator url="check2?riskact={{item.riskact__id}}&riskacttask={{item.id}}" class="weui-media-box weui-media-box_appmsg" hover-class="weui-cell_active">
<view class="weui-media-box__bd weui-media-box__bd_in-appmsg">
<view class="weui-media-box__title">
<span style="background-color:green;color:white">检查表</span>
{{item.riskact__name}}
</view>
<view class="weui-media-box__desc">任务生成时间:{{item.taskadd}}</view>
<view class="weui-media-box__desc" wx:if="{{item.taskexpire}}">任务过期时间:{{item.taskexpire}}</view>
<view class="weui-media-box__desc" wx:if="{{item.user__name}}">执行人:{{item.user__name}}</view>
</view>
</navigator>
</block>
</view>
</view>
<view class="weui-tab__content" hidden="{{activeIndex != 2}}">
<view class="head">共{{total}}条任务</view>
<view class="weui-cells weui-cells_after-title">
<block wx:for="{{alllist}}" wx:key="unique">
<view class="weui-media-box weui-media-box_appmsg">
<view class="weui-media-box__bd weui-media-box__bd_in-appmsg">
<view class="weui-media-box__title">
<span style="background-color:green;color:white">检查表</span>
{{item.riskact__name}}
</view>
<!-- <view class="weui-media-box__desc">
<span style="background-color:orange;color:white">所属岗位</span>
{{item.group__groupname}}
</view> -->
<view class="weui-media-box__desc">任务生成时间:{{item.taskadd}}</view>
<view class="weui-media-box__desc" wx:if="{{item.taskexpire}}">任务过期时间:{{item.taskexpire}}</view>
<view class="weui-media-box__desc" wx:if="{{item.user__name}}">执行人:{{item.user__name}}</view>
</view>
</view>
</block>
</view>
</view>
</view>
</view>
<!-- <view style="position:fixed;bottom:0;left:0;width:100%;" hidden="{{activeIndex != 1}}">
<button class="weui-btn" type="primary" style="width:auto;margin:5px" bindtap="scan">扫一扫检查表</button>
</view> -->

View File

@ -0,0 +1,14 @@
.weui-btn{
width:auto;
margin: 5px;
}
.container {
background-color: #fff;
color: #939393;
}
.head{
color:#fff;
background-color: cornflowerblue;
text-align: center;
}

View File

@ -24,6 +24,11 @@
<view class="weui-grid__label">检查任务</view>
<view class="weui-badge" style="position: absolute;top: 1em;right: 1em;" wx:if="{{checknum!=0}}">{{checknum}}</view>
</navigator>
<navigator url="/pages/checkjob/index2" class="weui-grid" hover-class="weui-grid_active">
<image class="weui-grid__icon" src="../images/task.png" />
<view class="weui-grid__label">检查任务新</view>
<view class="weui-badge" style="position: absolute;top: 1em;right: 1em;" wx:if="{{checknum2!=0}}">{{checknum}}</view>
</navigator>
<navigator url="/pages/trouble/trouble" class="weui-grid" hover-class="weui-grid_active">
<image class="weui-grid__icon" src="../images/trouble.png" />
@ -42,8 +47,6 @@
<view class="weui-grid__label">违章举报</view>
<!-- <view class="weui-badge" style="position: absolute;top: 1em;right: 1em;" wx:if="{{yhgznum!=0}}">{{yhgznum}}</view> -->
</navigator>
</view>
<view class="weui-grids">
<navigator url="/pages/observe/observe" class="weui-grid" hover-class="weui-grid_active">
<image class="weui-grid__icon" src="../images/watch.png" />
<view class="weui-grid__label">行为观察</view>

View File

@ -30,6 +30,6 @@ white-space: nowrap;
}
.weui-grid {
width: 25%;
/* border-right:none; */
border-right:none;
border-bottom:none;
}

View File

@ -404,12 +404,21 @@ Page({
this.data.riskcheckdata = riskcheckdata
this.setData({
yhtype: 'riskcheck',
yhqy: riskcheckdata.riskact__area__id,
riskcheckindex:options.index
})
if(riskcheckdata.step){
this.setData({
yhqy: riskcheckdata.riskact__area__id,
yhqy__name: riskcheckdata.riskact__area__name,
yhdd: riskcheckdata.riskact__place,
riskstep: riskcheckdata.step,
riskcheckindex:options.index
})
})
}else{
this.setData({
riskcontent:riskcheckdata.content.substr(0,5)+'...',
})
}
}
},

View File

@ -2,8 +2,9 @@
<view class="page__bd">
<view class="weui-toptips weui-toptips_warn" wx:if="{{showTopTips}}">错误提示</view>
<view class="head" wx:if="{{yhtype=='inspect'}}">{{equipmentname}} 设备异常</view>
<view class="head" wx:if="{{yhtype=='risktask'}}">风险 {{riskstep}}</view>
<view class="head" wx:if="{{yhtype=='riskcheck'}}">风险 {{riskstep}}</view>
<view class="head" wx:if="{{riskstep}}">风险: {{riskstep}}</view>
<view class="head" wx:if="{{riskstep}}">风险: {{riskstep}}</view>
<view class="head" wx:if="{{riskcontent}}">检查项: {{riskcontent}}</view>
<view class="weui-cells__title">隐患图片</view>
<view class="weui-cells weui-cells_after-title">
<view class="weui-cell">

View File

@ -0,0 +1,8 @@
{
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
"projectname": "aqyj",
"setting": {
"compileHotReLoad": true,
"urlCheck": false
}
}