YZProjectCloud/yanzhu-ui-app/miniprogram/pageage/project_more/index.js

175 lines
4.1 KiB
JavaScript

import { getToken, getUserInfo } from "../../utils/auth";
import { findUserMenuList } from "../../api/publics";
import { findMyTask } from "../api/flowable";
import { countGroupByStatus, countTechByStatus } from "../../api/project";
const app = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
active: 1,
projectId: "",
projectName: "",
subDeptUserInfo: {},
menuList: [],
initData: {},
aqglDb: 0,
zlglDb: 0,
todoDB: 0,
fbdwDB: 0,
fbrtDB: 0,
aqyhDB: 0,
zlyhDB: 0,
checkDB: 0, //举牌验收数量
isGroup: false, //是否是班组
},
//项目切换 返回值
onProjectSelect(e) {
let projectId = e.detail.id;
let projectName = e.detail.text;
app.globalData.useProjectId = projectId;
app.globalData.useProjectName = projectName;
this.onLoad();
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
if (!getToken()) {
wx.redirectTo({
url: "../../pages/login/login",
});
}
const proUserInfo = getUserInfo();
this.setData({
projectId: app.globalData.useProjectId,
projectName: app.globalData.useProjectName,
initData: {
id: app.globalData.useProjectId,
text: app.globalData.useProjectName,
},
active: proUserInfo.projectUserInfo.subDeptType == "1" ? 4 : 1,
isGroup: proUserInfo.projectUserInfo.userPost == "3",
subDeptUserInfo: proUserInfo.projectUserInfo,
});
//用户权限菜单
this.getUserMenuList(app.globalData.useProjectId);
this.awaitTask();
},
/**
* 查询功能菜单
* @param {*} proId
*/
getUserMenuList: function (proId) {
findUserMenuList(proId, this.data.active == 1 ? "" : "gdgn").then((res) => {
if (res.code == 200) {
this.setData({
menuList: res.data,
});
}
});
},
goMenu: function (event) {
let _url = event.currentTarget.dataset.url;
if (!_url) {
app.toast("正在建设中...");
return false;
}
wx.setStorageSync("nav-menu", "xmgl");
wx.redirectTo({
url: _url,
});
//跳转到其它小程序
//wx.navigateToMiniProgram({
// appId: 'wx7c39a25db91228f7',
// path: 'pages/tabbar/order-new/index?type=0'
//})
},
// 底部导航
onChange(event) {
// event.detail 的值为当前选中项的索引
this.setData({
active: event.detail,
});
},
//跳转到项目概况
XMGK: function () {
wx.setStorageSync("nav-menu", "xmgk");
wx.redirectTo({
url: "../project_info/index",
});
},
//跳转到安全管理
AQGL: function () {
wx.setStorageSync("nav-menu", "aqgl");
wx.redirectTo({
url: "../project_safety/index",
});
},
//跳转到质量管理
ZLGL: function () {
wx.setStorageSync("nav-menu", "zlgl");
wx.redirectTo({
url: "../project_quality/index",
});
},
//跳转到进度管理
JDGL: function () {
wx.setStorageSync("nav-menu", "xmgl");
wx.redirectTo({
url: "../project_schedule/list/index",
});
},
/**
* 统计代办
*/
awaitTask() {
let param = "proId=" + app.globalData.useProjectId;
findMyTask(param).then((res) => {
if (res.code == 200) {
let proUserInfo = this.data.subDeptUserInfo;
this.setData({
todoDb:
proUserInfo.subDeptType == "1"
? res.data.dwsh + res.data.rysh
: res.data.todo,
fbdwDB: res.data.dwsh,
fbrtDB: res.data.rysh,
aqglDb: proUserInfo.subDeptType == "1" ? res.data.aqgl : 0,
zlglDb: proUserInfo.subDeptType == "1" ? res.data.zlgl : 0,
aqyhDB: res.data.aqgl,
zlyhDB: res.data.zlgl,
});
}
});
param = {
projectId: app.globalData.useProjectId,
phoneNumber: app.globalData.userData.phonenumber,
};
let ajax = null;
if (this.data.isGroup) {
ajax = countGroupByStatus(param);
}
if (ajax) {
ajax.then((res) => {
if (res.success) {
this.setData({
checkDB: res.data.cnt || 0,
});
}
});
}
},
});