// pageage/safetyManagement/addSafetyInspect/index.js const app = getApp() Page({ /** * 页面的初始数据 */ data: { maxDate:new Date(2088,1,1).getTime(), deptId:"", deptName:"", userId:"", nickName:"", loginName:"", projectId:"", projectName:"", remark:"", filesData:[], limit:9, fileType:["doc","docx","xls","xlsx","ppt","pptx","txt","pdf","png","jpg","jpeg","mp4"], procDefId:"", approveTitle:"", deploymentId:"", activeName:"", flowNodeList:[], flowNodes:[] }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { let {procDefId,approveTitle,deploymentId} = options //获取缓存数据 wx.getStorage({ key: 'userinfo', success:res=>{ this.setData({ projectId:app.globalData.projectId, projectName:app.globalData.projectName, procDefId, approveTitle, deploymentId, deptId:res.data.deptId, deptName:res.data.deptName, userId:res.data.userId, nickName:res.data.nickName, loginName:res.data.loginName }) this.getFlowNodes(); } }) }, //取消页面 cancelSaveView(){ /*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/ wx.redirectTo({ url: '../myFlowDefinition/index' }) }, getFlowNode(val){ let flowNodeList = this.data.flowNodeList; for(let i=0;i0){ return this.getFlowNode(flowNodeList[i].outgoingFlows[0].targetRef); } } } }, //查询工作流节点 getFlowNodes(){ let that = this; wx.request({ url: app.globalData.reqUrl + '/wechat/flowTask/readNotes/'+this.data.deploymentId, method:"get", data:{}, header: { "Content-Type": "application/json" }, success(res){ res = res.data if(res.code == 200){ that.setData({ flowNodeList:res.data }) if(res.data.length>0){ let list = that.data.flowNodes; list.push({id:res.data[0].id,name:res.data[0].name}); that.setData({ flowNodes:list }) return that.getFlowNode(res.data[0].outgoingFlows[0].targetRef); } }else{ app.toast(res.msg); } } }) }, //保存 onSave(){ this.setData({ loadShow:true }) let {procDefId,projectId,userId,loginName,remark,filesData} = this.data; //数据效验 if(projectId==""||loginName==""||userId==""||procDefId==""){ app.toast("数据异常,请刷新页面重试!") this.setData({ loadShow:false }) return; } if(remark==""){ app.toast("请填写申请说明!") this.setData({ loadShow:false }) return; } if(filesData.length==0){ app.toast("请上传审批内容!") this.setData({ loadShow:false }); return; } for(let i=0;i{ let uploadUrl = app.globalData.uploadUrl+'/common/upload' let name = "file" //这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片 let obj = await that.syncUploadImage(uploadUrl,item.path,name); fileUrls.push(obj.data.fileName); //验证图片上传完毕 if(fileUrls.length == filesData.length){ let params = { procDefId, userId, userName:loginName, nickName, variables:{ businessKey:projectId, projectName, files:fileUrls.toString(), remark, } } wx.request({ url: app.globalData.reqUrl + '/wechat/flowTask/startProcessInstance', method:"POST", data:params, header: { "Username": loginName, "Content-Type": "application/json" }, success(res){ that.setData({ loadShow:false }) res =res.data if(res.code == 200){ app.toast("提交申请成功!") setTimeout(()=>{ wx.redirectTo({ url: '../myProcessIns/index', }) },200) }else{ app.toast(res.msg); } } }) } }) }, /** * 这里考虑上传图片异步问题,封装为同步 */ syncUploadImage(url,uploadFile,name) { return new Promise((resolve, reject) => { wx.uploadFile({ url, // 上传的服务器接口地址 filePath: uploadFile, header: { "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8" }, name, //上传的所需字段,后端提供 formData: { user: 'test' }, success: (res) => { // 上传完成操作 const data = JSON.parse(res.data) resolve({ data: data }) }, fail: (err) => { //上传失败:修改pedding为reject console.log("访问接口失败", err); wx.showToast({ title: "网络出错,上传失败", icon: 'none', duration: 1000 }); reject(err) } }); }) }, //申请说明 remarkblur: function (options) { this.data.remark = options.detail.value; }, fileUpload(options){ let file=options.detail; this.setData({ filesData: file }); }, // 手风琴 onChange(event) { this.setData({ activeName: event.detail, }); }, returnToPage: function () { /*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/ wx.redirectTo({ url: '../myFlowDefinition/index', }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })