YZProjectCloud/yanzhu-ui-app/miniprogram/pageage/project_checked/add/index.js

191 lines
4.0 KiB
JavaScript
Raw Normal View History

2025-07-28 09:52:09 +08:00
// pageage/project_checked/add/index.js
2025-08-03 18:18:48 +08:00
import config from "../../../config";
import fmt from "../../../utils/date.js";
import { getToken, getUserInfo } from "../../../utils/auth";
2025-08-02 15:44:20 +08:00
import {
projectCheckedList,
2025-08-03 18:18:48 +08:00
projectCheckedListCount,
} from "../../../api/project";
2025-08-02 15:44:20 +08:00
import {
findPlanDatas,
findRecursionPlan,
findPreviousSchedule,
2025-08-03 18:18:48 +08:00
submitPlanSchedule,
} from "../../../api/project";
2025-08-02 15:44:20 +08:00
2025-08-03 18:18:48 +08:00
const app = getApp();
2025-07-28 09:52:09 +08:00
Page({
2025-08-02 15:44:20 +08:00
/**
* 页面的初始数据
*/
data: {
maxDate: new Date(2088, 1, 1).getTime(),
2025-08-03 18:18:48 +08:00
minDate: new Date().getTime() + 3600 * 48 * 1000,
2025-08-02 15:44:20 +08:00
form: {
2025-08-03 18:18:48 +08:00
taskName: "",
2025-08-02 15:44:20 +08:00
task: null,
2025-08-03 18:18:48 +08:00
intro: "", //验收描述
2025-08-02 15:44:20 +08:00
imageUrls: [],
2025-08-03 18:18:48 +08:00
groupDeptUser: "", //班组长
checkingDate: "", //验收时间
technicianUser: "", //技术专员
superviseUser: "", //监理专员
2025-07-28 09:52:09 +08:00
},
2025-08-02 15:44:20 +08:00
projectUserInfo: {},
projectId: "",
projectName: "",
initData: {},
pageNum: 1,
pageSize: 10,
total: 0,
listData: [],
//任务计划
picker: false,
planOptions: [],
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
if (!getToken()) {
wx.redirectTo({
2025-08-03 18:18:48 +08:00
url: "../../../pages/login/login",
});
2025-08-02 15:44:20 +08:00
}
const proUserInfo = getUserInfo();
this.setData({
projectUserInfo: proUserInfo.projectUserInfo,
projectId: app.globalData.useProjectId,
projectName: app.globalData.useProjectName,
initData: {
id: app.globalData.useProjectId,
text: app.globalData.useProjectName,
},
pageNum: 1,
pageSize: 10,
listData: [],
total: 0,
form: {
2025-08-03 18:18:48 +08:00
taskName: "",
2025-08-02 15:44:20 +08:00
task: null,
2025-08-03 18:18:48 +08:00
intro: "",
checkingDate: fmt(new Date()).format("YYYY-MM-DD"),
},
2025-08-02 15:44:20 +08:00
});
this.initPlanDatas();
},
//项目切换 返回值
onProjectSelect(e) {
let projectId = e.detail.id;
let projectName = e.detail.text;
app.globalData.useProjectId = projectId;
app.globalData.useProjectName = projectName;
this.onLoad();
},
/**
* 初始化计划
*/
initPlanDatas() {
findPlanDatas(app.globalData.useProjectId).then((res) => {
let treeDatas = this.buildTree(res.data, 1, "");
this.setData({
2025-08-03 18:18:48 +08:00
planOptions: treeDatas,
});
2025-08-02 15:44:20 +08:00
});
},
closePicker() {
this.setData({
2025-08-03 18:18:48 +08:00
picker: false,
});
2025-08-02 15:44:20 +08:00
},
/**
2025-08-03 18:18:48 +08:00
* 打开选择窗
*/
2025-08-02 15:44:20 +08:00
openPicker() {
this.setData({
2025-08-03 18:18:48 +08:00
picker: true,
});
2025-08-02 15:44:20 +08:00
},
/**
2025-08-03 18:18:48 +08:00
* 构建树结构
* @param {*} all
* @param {*} id
*/
2025-08-02 15:44:20 +08:00
buildTree(all, id, path) {
let tmps = all.filter((d) => d.parentId == id);
if (tmps.length > 0) {
tmps.forEach((it) => {
it.fullPath = path ? path + "/" + it.taskName : it.taskName;
it.children = this.buildTree(all, it.taskId, it.fullPath);
});
2025-07-28 09:52:09 +08:00
}
2025-08-02 15:44:20 +08:00
return tmps;
},
handleClick: function (e) {
let item = e.detail.item;
if (item) {
this.setData({
form: {
task: item,
2025-08-03 18:18:48 +08:00
taskName: item.fullPath,
2025-08-02 15:44:20 +08:00
},
2025-08-03 18:18:48 +08:00
picker: false,
});
2025-08-02 15:44:20 +08:00
}
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
2025-08-03 18:18:48 +08:00
onReady() {},
2025-08-02 15:44:20 +08:00
/**
* 生命周期函数--监听页面显示
*/
2025-08-03 18:18:48 +08:00
onShow() {},
2025-08-02 15:44:20 +08:00
/**
* 生命周期函数--监听页面隐藏
*/
2025-08-03 18:18:48 +08:00
onHide() {},
2025-08-02 15:44:20 +08:00
/**
* 生命周期函数--监听页面卸载
*/
2025-08-03 18:18:48 +08:00
onUnload() {},
2025-08-02 15:44:20 +08:00
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
2025-08-03 18:18:48 +08:00
onPullDownRefresh() {},
2025-08-02 15:44:20 +08:00
/**
* 页面上拉触底事件的处理函数
*/
2025-08-03 18:18:48 +08:00
onReachBottom() {},
2025-08-02 15:44:20 +08:00
/**
* 用户点击右上角分享
*/
2025-08-03 18:18:48 +08:00
onShareAppMessage() {},
2025-08-02 15:44:20 +08:00
returnToPage: function () {
/*关闭当前页面,跳转到其它页面。*/
wx.redirectTo({
2025-08-03 18:18:48 +08:00
url: "../list/index",
});
2025-08-02 15:44:20 +08:00
},
onScrollToLower() {
let nal = Math.ceil(this.data.total / this.data.pageSize);
if (this.data.pageNum < nal) {
this.setData({
//pageNum: this.data.pageNum + 1
});
//this.getListData(this.data.activeState);
} else {
console.log("已经到底了,没有数据可加载!!!");
}
},
2025-08-03 18:18:48 +08:00
});