jhwxapp/miniprogram/pageage/flow_labour/list/index.js

326 lines
7.9 KiB
JavaScript

import {list,findGroupCountByApprove} from "../../../api/flowLabour"
import {
getToken
} from '../../../utils/auth'
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
userId:"",
deptId: "",
loginName: "",
projectId: "",
minRoleId: "",
initData: {},
show: false,
listData: [],
activeState: "jxz",
jxzCount: 0,
ywcCount: 0,
pageNum: 1,
pageSize: 10,
lastDataSize: 10,
list: []
},
getInfo(e) {
let {
id,
approveStatus
} = e.currentTarget.dataset.set
if (approveStatus == "100") {
wx.redirectTo({
url: `../info/index?id=${id}`,
})
} else {
if(this.data.minRoleId=='2' || this.data.minRoleId=='3'){
//超管可直接进入审批页面
wx.redirectTo({
url: `../check/index?id=${id}`,
})
}else if(this.data.minRoleId=='4' && (approveStatus == '20' || approveStatus == '31')){
wx.redirectTo({
url: `../check/index?id=${id}`,
})
}else if(this.data.minRoleId=='4' && (approveStatus == '10' || approveStatus == '21')){
wx.redirectTo({
url: `../info/index?id=${id}`,
})
}else if(this.data.minRoleId!='4' && (approveStatus == '10' || approveStatus == '21')){
wx.redirectTo({
url: `../check/index?id=${id}`,
})
}else if(this.data.minRoleId!='4' && (approveStatus == '20' || approveStatus == '31')){
wx.redirectTo({
url: `../info/index?id=${id}`,
})
}else{
wx.redirectTo({
url: `../info/index?id=${id}`,
})
}
}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
if(!getToken()){
wx.redirectTo({
url: '../../../pages/login/index',
})
}
if (options && options.barProId) {
//数据未加载完毕,从文件读取数据
if (app.globalData.projectInfoList.length == 0) {
wx.getStorage({
key: 'projectInfoList',
success: res => {
app.globalData.projectInfoList = res.data;
app.globalData.projectInfoList.forEach(item => {
if (item.projectId == options.barProId) {
app.globalData.projectId = item.projectId;
app.globalData.projectName = item.projectName;
}
});
//未查询到项目信息
if (!app.globalData.projectId) {
app.globalData.projectInfoList.push({
projectId: options.barProId,
projectId: options.barProName
});
app.globalData.projectId = options.barProId;
app.globalData.projectName = options.barProName;
}
//从缓存读取项目信息
this.setData({
initData: {
text: app.globalData.projectName,
id: app.globalData.projectId
}
})
let myProjects = this.selectComponent("#projectSel");
myProjects.load();
}
})
} else {
app.globalData.projectInfoList.forEach(item => {
if (item.projectId == options.barProId) {
app.globalData.projectId = item.projectId;
app.globalData.projectName = item.projectName;
}
});
//未查询到项目信息
if (!app.globalData.projectId) {
app.globalData.projectInfoList.push({
projectId: options.barProId,
projectId: options.barProName
});
app.globalData.projectId = options.barProId;
app.globalData.projectName = options.barProName;
}
//从缓存读取项目信息
this.setData({
initData: {
text: app.globalData.projectName,
id: app.globalData.projectId
}
})
}
} else {
//从缓存读取项目信息
this.setData({
initData: {
text: app.globalData.projectName,
id: app.globalData.projectId
}
})
}
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success: res => {
this.setData({
deptId: res.data.deptId,
userId: res.data.userId,
loginName: res.data.loginName,
projectId: app.globalData.projectId,
minRoleId: res.data.minRoleId,
pageNum: 1,
pageSize: 10,
lastDataSize: 10,
listData: []
})
this.getListData();
},
fail: err => {
//未获取用户信息时,重新登录
wx.redirectTo({
url: '../pages/login/index',
})
}
})
},
/**
* 查询项目材料进场验收数据
*/
getListData() {
//进入这里说明数据加载完毕
if (this.data.lastDataSize < this.data.pageSize) {
//app.toast("已经到底了,暂无可继续加载数据!")
return;
}
var that = this;
//判断角色,
let mr = this.data.minRoleId;
let deptId = this.data.deptId;
let projDept = this.data.deptId;
if (mr == 2 || mr == 3 || mr == 4) {
deptId = 0;
}
if(mr == 4){
projDept = app.globalData.projectInfoList[0].deptId
}
let param = {
"projectId": this.data.projectId,
"deptId": deptId,
"nowDept": projDept,
"nowRole": mr,
"nowUser": this.data.loginName,
"activeName": that.data.activeState
}
this.queryCount(param);
param.pageNum = that.data.pageNum;
param.pageSize = that.data.pageSize;
list(param).then(res =>{
if (res.code == "200") {
//这里处理this.data.lastDataSize=this.data.pageSize
if (that.data.list.length > 0 && res.rows.length > 0 && that.data.list[0].id == res.rows[0].id) {
that.setData({
lastDataSize: 0,
})
} else {
that.setData({
pageNum: that.data.pageNum + 1,
lastDataSize: res.rows.length,
list: res.rows,
listData: that.data.listData.concat(res.rows)
})
}
}
});
},
/**
* 加载更多数据
*/
onScrollToLower() {
console.log("滚动条到底了,开始加载新数据");
this.getListData();
},
//查询统计
queryCount(param) {
//查询统计数量
findGroupCountByApprove(param).then(res =>{
if(res.code==200){
this.setData({
jxzCount: res.data.db,
ywcCount: res.data.yb
});
}
});
},
/**
* 标签切换
*/
typeJump(e) {
let index = e.currentTarget.dataset.index;
let nav = "";
if (index == 1) {
nav = 'jxz';
} else if (index == 2) {
nav = 'ywc';
}
this.setData({
activeState: nav,
pageNum: 1,
pageSize: 10,
lastDataSize: 10,
listData: [],
list: []
});
this.getListData();
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.redirectTo({
url: '../../../pages/gengduogongneng/index',
})
},
//项目切换 返回值
onProjectSelect(e) {
let projectId = e.detail.id;
let projectName = e.detail.text;
app.globalData.projectId = projectId;
app.globalData.projectName = projectName;
this.onLoad();
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})