提交形象进度

main
姜玉琦 2023-08-28 22:23:01 +08:00
parent e69bf75a22
commit b95cf85726
32 changed files with 1131 additions and 28 deletions

View File

@ -84,7 +84,10 @@
"project_problemmodify/quality/info/index", "project_problemmodify/quality/info/index",
"project_problemmodify/quality/modify/index", "project_problemmodify/quality/modify/index",
"project_problemmodify/quality/check/index", "project_problemmodify/quality/check/index",
"project_problemmodify/quality/add/index" "project_problemmodify/quality/add/index",
"project_schedule/list/index",
"project_schedule/add/index",
"project_schedule/info/index"
], ],
"independent": false "independent": false
} }

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -53,10 +53,12 @@ Page({
if(res.code == 200){ if(res.code == 200){
let urls = []; let urls = [];
let minUrls = []; let minUrls = [];
res.data.imageUrls.split(',').forEach(element => { if(res.data.imageUrls){
urls.push(that.data.request+element); res.data.imageUrls.split(',').forEach(element => {
minUrls.push(that.data.request+element+'.min.jpg'); urls.push(that.data.request+element);
}); minUrls.push(that.data.request+element+'.min.jpg');
});
}
that.setData({ that.setData({
infoData:res.data, infoData:res.data,
imageList:urls, imageList:urls,
@ -94,6 +96,9 @@ Page({
let {id} = this.data let {id} = this.data
wx.request({ wx.request({
url: app.globalData.reqUrl+'/wechat/projectchecking/remove', url: app.globalData.reqUrl+'/wechat/projectchecking/remove',
header: {
"Username": this.data.loginName,
},
data:{ data:{
id:id id:id
}, },

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -26,14 +26,14 @@ Page({
}, },
skipAdd(){ skipAdd(){
wx.navigateTo({ wx.redirectTo({
url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text, url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text,
}) })
}, },
getInfo(e){ getInfo(e){
let {id} = e.currentTarget.dataset.set let {id} = e.currentTarget.dataset.set
wx.navigateTo({ wx.redirectTo({
url: `../info/index?id=${id}`, url: `../info/index?id=${id}`,
}) })
}, },

View File

@ -1,7 +1,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -130,6 +130,9 @@ Page({
let {id} = this.data let {id} = this.data
wx.request({ wx.request({
url: app.globalData.reqUrl+'/wechat/projectProblemmodify/removeQuality', url: app.globalData.reqUrl+'/wechat/projectProblemmodify/removeQuality',
header: {
"Username": this.data.loginName,
},
data:{ data:{
id:id id:id
}, },

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -30,7 +30,7 @@ Page({
}, },
skipAdd(){ skipAdd(){
wx.navigateTo({ wx.redirectTo({
url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text, url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text,
}) })
}, },
@ -39,16 +39,16 @@ Page({
let {id,checkState,lordSentUser,recheckSendUser} = e.currentTarget.dataset.set let {id,checkState,lordSentUser,recheckSendUser} = e.currentTarget.dataset.set
if((checkState==0 || checkState==3) && lordSentUser==this.data.loginName){ if((checkState==0 || checkState==3) && lordSentUser==this.data.loginName){
//整改页面(状态时待整改&&整改人是当前登录人) //整改页面(状态时待整改&&整改人是当前登录人)
wx.navigateTo({ wx.redirectTo({
url: `../modify/index?id=${id}`, url: `../modify/index?id=${id}`,
}) })
}else if(checkState==1 && recheckSendUser==this.data.loginName){ }else if(checkState==1 && recheckSendUser==this.data.loginName){
//复检页面 (状态时待复检&&复检人是当前登录人) //复检页面 (状态时待复检&&复检人是当前登录人)
wx.navigateTo({ wx.redirectTo({
url: `../check/index?id=${id}`, url: `../check/index?id=${id}`,
}) })
}else{ }else{
wx.navigateTo({ wx.redirectTo({
url: `../info/index?id=${id}`, url: `../info/index?id=${id}`,
}) })
} }

View File

@ -1,7 +1,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -128,6 +128,9 @@ Page({
let {id} = this.data let {id} = this.data
wx.request({ wx.request({
url: app.globalData.reqUrl+'/wechat/projectProblemmodify/removeSafety', url: app.globalData.reqUrl+'/wechat/projectProblemmodify/removeSafety',
header: {
"Username": this.data.loginName,
},
data:{ data:{
id:id id:id
}, },

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -30,7 +30,7 @@ Page({
}, },
skipAdd(){ skipAdd(){
wx.navigateTo({ wx.redirectTo({
url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text, url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text,
}) })
}, },
@ -39,16 +39,16 @@ Page({
let {id,checkState,lordSentUser,recheckSendUser} = e.currentTarget.dataset.set let {id,checkState,lordSentUser,recheckSendUser} = e.currentTarget.dataset.set
if((checkState==0 || checkState==3) && lordSentUser==this.data.loginName){ if((checkState==0 || checkState==3) && lordSentUser==this.data.loginName){
//整改页面(状态时待整改&&整改人是当前登录人) //整改页面(状态时待整改&&整改人是当前登录人)
wx.navigateTo({ wx.redirectTo({
url: `../modify/index?id=${id}`, url: `../modify/index?id=${id}`,
}) })
}else if(checkState==1 && recheckSendUser==this.data.loginName){ }else if(checkState==1 && recheckSendUser==this.data.loginName){
//复检页面 (状态时待复检&&复检人是当前登录人) //复检页面 (状态时待复检&&复检人是当前登录人)
wx.navigateTo({ wx.redirectTo({
url: `../check/index?id=${id}`, url: `../check/index?id=${id}`,
}) })
}else{ }else{
wx.navigateTo({ wx.redirectTo({
url: `../info/index?id=${id}`, url: `../info/index?id=${id}`,
}) })
} }

View File

@ -1,7 +1,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -2,7 +2,7 @@
<view class="header_title"> <view class="header_title">
<view class="header_title_row"> <view class="header_title_row">
<van-row> <van-row>
<van-col span="3"> <van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view> <view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col> </van-col>
<van-col span="15"> <van-col span="15">

View File

@ -0,0 +1,364 @@
// pageage/safetyManagement/addSafetyInspect/index.js
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
maxDate:new Date(2088,1,1).getTime(),
currentDate:new Date().getTime(),
deptId:"",
projectId:"",
loginName:"",
userName:"",
imageInfoData:[],
data:{},
projectType:"",
projectTypeName:"",
uploadImages:[],
request:app.globalData.reqUrl
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
let {projectId} = options
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success:res=>{
this.setData({
projectId,
deptId:res.data.deptId,
loginName:res.data.loginName,
userName:res.data.nickName
})
this.getProjectScheduleData()
}
})
},
//查询项目历史形象进度数据
getProjectScheduleData(){
let that = this
wx.request({
url: app.globalData.reqUrl+'/wechat/projectSchedule/lastInfo',
method:"get",
data:{
projectId:that.data.projectId
},
header:{
'content-type': 'application/x-www-form-urlencoded'
},
success(res){
res = res.data
if(res.code == 200){
let type = res.data.projectType;
let typeName = "";
switch(type){
case "1" : typeName = "在建"; break;
case "2" : typeName = "拟建"; break;
case "3" : typeName = "前期"; break;
case "4" : typeName = "完工"; break;
}
let minUrls = [];
if(res.data.image){
res.data.image.split(',').forEach(element => {
minUrls.push(that.data.request+element+'.min.jpg');
});
}
that.setData({
data:res.data,
projectType:type,
projectTypeName:typeName,
uploadImages:minUrls,
imageInfoData:minUrls
})
}
}
})
},
// list 上传图片
onImagesArr(e){
var data = this.data.imageInfoData;
data = e.detail
this.setData({
imageInfoData:data
})
},
//取消页面
cancelSaveView(){
wx.navigateBack()
},
//保存
onProblemSubmitSave(){
this.setData({
loadShow:true
})
let that = this
let {projectId,loginName,imageInfoData,data,projectType} = that.data;
//数据效验
if(projectId==""||loginName==""){
app.toast("数据异常,请刷新页面重试!")
that.setData({
loadShow:false
})
return;
}
if(imageInfoData.length==0){
app.toast("请上传形象进度图片!")
that.setData({
loadShow:false
})
return;
}
if(data.plannedNode==""){
app.toast("请填写计划节点描述!")
that.setData({
loadShow:false
})
return;
}
if(data.actualNode==""){
app.toast("请填写实际节点描述!")
that.setData({
loadShow:false
})
return;
}
if(data.purchaseProgress==""){
if(projectType==4){
app.toast("请填写结算进展描述!")
}else{
app.toast("请填写报建、设计进展描述!")
}
that.setData({
loadShow:false
})
return;
}
if(data.designProgress==""){
if(projectType==4){
app.toast("请填写运维进展描述!")
}else{
app.toast("请填写报建、设计进展描述!")
}
that.setData({
loadShow:false
})
return;
}
if(data.constructionProgress==""){
app.toast("请填施工进展描述!")
that.setData({
loadShow:false
})
return;
}
if(data.acceptanceProgress==""){
app.toast("请填写验收进展描述!")
that.setData({
loadShow:false
})
return;
}
if(data.planForNextWeek==""){
app.toast("请填写下周计划描述!")
that.setData({
loadShow:false
})
return;
}
if(data.existingProblem==""){
app.toast("请填写存在问题描述!")
that.setData({
loadShow:false
})
return;
}
if(data.problemProgress==""){
app.toast("请填写问题推进情况描述!")
that.setData({
loadShow:false
})
return;
}
let fileUrls = [];
imageInfoData.forEach(async (item)=>{
let uploadUrl = app.globalData.uploadUrl+'/common/upload'
let name = "file"
//这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片
if(item.indexOf(that.data.request)==-1){
let obj = await that.syncUploadImage(uploadUrl,item,name);
fileUrls.push(obj.data.fileName);
}else{
fileUrls.push(item.replace(that.data.request,"").replace(".min.jpg",""));
}
//验证图片上传完毕
if(fileUrls.length == imageInfoData.length){
let params = {
projectId,
image:fileUrls.toString(),
plannedNode:data.plannedNode,
actualNode:data.actualNode,
purchaseProgress:data.purchaseProgress,
designProgress:data.designProgress,
constructionProgress:data.constructionProgress,
acceptanceProgress:data.acceptanceProgress,
planForNextWeek:data.planForNextWeek,
existingProblem:data.existingProblem,
problemProgress:data.problemProgress,
dataTemplate:projectType,
createBy:loginName
}
wx.request({
url: app.globalData.reqUrl + '/wechat/projectSchedule/add',
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.navigateTo({
url: '../list/index',
})
},200)
}
}
})
}
})
},
/**
* 这里考虑上传图片异步问题封装为同步
*/
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)
}
});
})
},
plannedNodeAction: function (options) {
this.data.data.plannedNode = options.detail.value;
},
actualNodeAction: function (options) {
this.data.data.actualNode=options.detail.value;
},
purchaseProgressAction: function (options) {
this.data.data.purchaseProgress = options.detail.value
},
designProgressAction: function (options) {
this.data.data.designProgress = options.detail.value
},
constructionProgressAction: function (options) {
this.data.data.constructionProgress = options.detail.value
},
acceptanceProgressAction: function (options) {
this.data.data.acceptanceProgress = options.detail.value
},
planForNextWeekAction: function (options) {
this.data.data.planForNextWeek = options.detail.value
},
existingProblemAction: function (options) {
this.data.data.existingProblem = options.detail.value
},
problemProgressAction: function (options) {
this.data.data.problemProgress = options.detail.value
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.navigateTo({
url: '../list/index',
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

View File

@ -0,0 +1,7 @@
{
"usingComponents": {
"van-overlay": "@vant/weapp/overlay/index"
},
"navigationStyle":"custom",
"navigationBarTitleText": "新增形象进度"
}

View File

@ -0,0 +1,166 @@
<!--pageage/safetyManagement/addSafetyInspect/index.wxml-->
<view class="header_title">
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col>
<van-col span="15">
<view class="header_name">新增形象进度</view>
</van-col>
</van-row>
</view>
</view>
<view class="max_content">
<view class="inspect_info">
<view class="module_title module_title_flex">
<view>{{data.projectName}}</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">形象进度图片</view>
<view class="problem_list_info_con">
<file-uploader bindimages="onImagesArr" fileUrlArray="{{uploadImages}}"
></file-uploader>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">计划节点</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写计划节点描述"
placeholder-style="color:#6777aa;" model:value="{{data.plannedNode}}" maxlength="800" bindblur="plannedNodeAction"/>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">实际节点</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写实际节点描述"
placeholder-style="color:#6777aa;" model:value="{{data.actualNode}}" maxlength="800" bindblur="actualNodeAction"/>
</view>
</view>
<view class="inspect_info_list" wx:if="{{projectType!=4}}">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">融资、招采进展</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写融资、招采进展描述"
placeholder-style="color:#6777aa;" model:value="{{data.purchaseProgress}}" maxlength="800" bindblur="purchaseProgressAction"/>
</view>
</view>
<view class="inspect_info_list" wx:if="{{projectType==4}}">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">结算进展</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写结算进展描述"
placeholder-style="color:#6777aa;" model:value="{{data.purchaseProgress}}" maxlength="800" bindblur="purchaseProgressAction"/>
</view>
</view>
<view class="inspect_info_list" wx:if="{{projectType!=4}}">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">报建、设计进展</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写报建、设计进展描述"
placeholder-style="color:#6777aa;" model:value="{{data.designProgress}}" maxlength="800" bindblur="designProgressAction"/>
</view>
</view>
<view class="inspect_info_list" wx:if="{{projectType==4}}">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">运维进展</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写运维进展描述"
placeholder-style="color:#6777aa;" model:value="{{data.designProgress}}" maxlength="800" bindblur="designProgressAction"/>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">施工进展</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填施工进展描述"
placeholder-style="color:#6777aa;" model:value="{{data.constructionProgress}}" maxlength="800" bindblur="constructionProgressAction"/>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">验收进展</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写验收进展描述"
placeholder-style="color:#6777aa;" model:value="{{data.acceptanceProgress}}" maxlength="800" bindblur="acceptanceProgressAction"/>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">下周计划</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写下周计划描述"
placeholder-style="color:#6777aa;" model:value="{{data.planForNextWeek}}" maxlength="800" bindblur="planForNextWeekAction"/>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">存在问题</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写存在问题描述"
placeholder-style="color:#6777aa;" model:value="{{data.existingProblem}}" maxlength="800" bindblur="existingProblemAction"/>
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">问题推进情况</view>
<view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写问题推进情况描述"
placeholder-style="color:#6777aa;" model:value="{{data.problemProgress}}" maxlength="800" bindblur="problemProgressAction"/>
</view>
</view>
<view class="safety_inspect_title module_title_flex">
<text class="color_orange">{{projectTypeName}}项目,正在使用相关模板填报数据</text>
</view>
</view>
<view class="problem_submit_to">
<view class="problem_submit_to_btn" bindtap="cancelSaveView">取消</view>
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onProblemSubmitSave">保存</view>
</view>
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -0,0 +1,13 @@
/* pageage/safetyManagement/addSafetyInspect/index.wxss */
.van-popup{
background: none !important;
}
.van-image__img{
border-radius: 10rpx !important;
}
.radio_custom_class{
padding: 10rpx 100rpx 10rpx 0;
}
.radio_label_class{
color: #ffffff !important;
}

View File

@ -0,0 +1,179 @@
// pageage/project_checking/info/index.js
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
id:"",
infoData:{},
imageList:[],
minImageList:[],
loadShow:false,
loginName:"",
showDel:false,
request:app.globalData.reqUrl
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
let {id} = options
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success:res=>{
this.setData({
id,
loginName:res.data.loginName
})
this.getInfo();
}
})
},
/**
* 获取安全检查详情信息
*
*/
getInfo(){
let {id} = this.data
let that = this
wx.request({
url: app.globalData.reqUrl+'/wechat/projectSchedule/info',
method:"get",
data:{
id:id
},
success(res){
res = res.data
if(res.code == 200){
let urls = [];
let minUrls = [];
if(res.data.image){
res.data.image.split(',').forEach(element => {
urls.push(that.data.request+element);
minUrls.push(that.data.request+element+'.min.jpg');
});
}
that.setData({
infoData:res.data,
imageList:urls,
minImageList:minUrls,
loadShow:false
})
//判断当前能否删除
if(res.data.createBy==that.data.loginName){
that.setData({
showDel:true
})
}
}
}
})
},
onDelete(){
//弹出确认
let that = this
wx.showModal({
title: '提示',
content: '是否确定删除此条数据?',
success: function (sm) {
if (sm.confirm) {
// 用户点击了确定 可以调用了
that.deleteData();
} else if (sm.cancel) {
console.log('用户点击取消');
}
}
})
},
deleteData(){
let {id} = this.data
wx.request({
url: app.globalData.reqUrl+'/wechat/projectSchedule/remove',
header: {
"Username": this.data.loginName,
},
data:{
id:id
},
method:"get",
success(res){
app.toast("删除成功!")
wx.navigateTo({
url: `../list/index`,
})
}
})
},
//展示图片
showImg:function(e){
var that=this;
wx.previewImage({
urls: that.data.imageList,
current: that.data.imageList[e.currentTarget.dataset.index]
})
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.navigateTo({
url: '../list/index',
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

View File

@ -0,0 +1,7 @@
{
"usingComponents": {
"van-popup": "@vant/weapp/popup/index"
},
"navigationStyle":"custom",
"navigationBarTitleText": "形象进度详情"
}

View File

@ -0,0 +1,116 @@
<!--pageage/safetyManagement/problemRectification/index.wxml-->
<view class="header_title">
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col>
<van-col span="15">
<view class="header_name">形象进度详情</view>
</van-col>
</van-row>
</view>
</view>
<view class="max_content">
<view class="inspect_overview_max">
<view class="inspect_overview">
<view class="module_title module_title_padding">
<view>{{infoData.projectName}}</view>
</view>
<view class="inspect_overview_list_max">
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">形象图片</text></van-col>
<view class="problem_list_info_con in-img-max">
<view class="in-img-div" wx:for="{{minImageList}}" wx:key="index">
<image bindtap='showImg' data-index="{{index}}" src='{{item}}'></image>
</view>
</view>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_blue">计划节点</text></van-col>
<van-col span="18" class="color_blue">{{infoData.plannedNode}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_orange">实际节点</text></van-col>
<van-col span="18" class="color_orange">{{infoData.actualNode}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="${{infoData.dataTemplate!='4'}}">
<van-row>
<van-col span="6"><text class="color_purple">融资招采</text></van-col>
<van-col span="18">{{infoData.purchaseProgress}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="${{infoData.dataTemplate=='4'}}">
<van-row>
<van-col span="6"><text class="color_purple">结算进展</text></van-col>
<van-col span="18">{{infoData.purchaseProgress}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="${{infoData.dataTemplate!='4'}}">
<van-row>
<van-col span="6"><text class="color_purple">报建设计</text></van-col>
<van-col span="18">{{infoData.designProgress}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="${{infoData.dataTemplate=='4'}}">
<van-row>
<van-col span="6"><text class="color_purple">运维进展{{infoData.dataTemplate=='4'}}{{infoData.dataTemplate}}</text></van-col>
<van-col span="18">{{infoData.designProgress}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">施工进展</text></van-col>
<van-col span="18" class="color_orange">{{infoData.constructionProgress}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">验收进展</text></van-col>
<van-col span="18">{{infoData.acceptanceProgress}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">下周计划</text></van-col>
<van-col span="18" class="color_green">{{infoData.planForNextWeek}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">存在问题</text></van-col>
<van-col span="18">{{infoData.existingProblem}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">问题推进</text></van-col>
<van-col span="18">{{infoData.problemProgress}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_blue">提交用户</text></van-col>
<van-col span="18" class="color_blue">{{infoData.createBy}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">提价时间</text></van-col>
<van-col span="18">{{infoData.createTime}}</van-col>
</van-row>
</view>
</view>
</view>
</view>
<view class="problem_submit_to" wx:if="{{showDel}}">
<view class="problem_submit_to_btn problem_submit_to_delete" bindtap="onDelete">删除</view>
</view>
</view>

View File

@ -0,0 +1,23 @@
/* pageage/project_checking/info/index.wxss */
.in-img-max:after{
display:block;
clear:both;
content:"";
visibility:hidden;
height:0
}
.in-img-max{
width: auto;
zoom:1
}
.in-img-div{
position: relative;
margin: 0 8px 8px 0;
float: left;
}
.in-img-div image{
width: 180rpx;
height: 180rpx;
border-radius: 15rpx;
position: relative;
}

View File

@ -0,0 +1,145 @@
// pageage/safetyManagement/securityCheckGR/index.js
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
deptId:"",
loginName:"",
userName:"",
projectId:"",
projectData:{},
projectNameArgs:"",
initData: {},
show:false,
listData:[],
request:app.globalData.reqUrl
},
onClose(){
this.setData({ show: false });
},
showPopup() {
this.setData({ show: true });
},
skipAdd(){
wx.redirectTo({
url: `../add/index?projectId=${this.data.initData.id}`,
})
},
getInfo(e){
let {id} = e.currentTarget.dataset.set
wx.redirectTo({
url: `../info/index?id=${id}`,
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success:res=>{
this.setData({
deptId:res.data.deptId,
loginName:res.data.loginName,
userName:res.data.userName,
projectId:app.globalData.projectId,
projectNameArgs:app.globalData.projectName,
initData:{text:app.globalData.projectName,id:app.globalData.projectId}
})
this.getListData(app.globalData.projectId);
}
})
},
/**
* 查询项目举牌验收数据
*/
getListData(projectId) {
var that = this;
wx.request({
url: app.globalData.reqUrl + '/wechat/projectSchedule/list',
data: {
"projectId": projectId
},
method: "get",
success: function (res) {
that.setData({
listData:res.data.data
})
}
})
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.redirectTo({
url: '../../../pages/gengduogongneng/gengduogongneng',
})
},
//项目切换 返回值
onProjectSelect(e){
let projectId = e.detail.id;
let projectName = e.detail.text;
app.globalData.projectId = projectId;
app.globalData.projectName = projectName;
this.onLoad();
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

View File

@ -0,0 +1,8 @@
{
"usingComponents": {
"van-overlay": "@vant/weapp/overlay/index" ,
"van-popup": "@vant/weapp/popup/index"
},
"navigationStyle":"custom",
"navigationBarTitleText": "形象进度管理"
}

View File

@ -0,0 +1,60 @@
<view class="header_title">
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col>
<van-col span="15">
<view class="header_name">形象进度管理</view>
</van-col>
</van-row>
</view>
</view>
<view class="max_content">
<project-select init="{{initData}}" bindchange="onProjectSelect"></project-select>
<view class="inspect_max">
<view class="inspect_list">
<view class="inspect_for" wx:for="{{listData}}" wx:key="index" data-set="{{item}}" bindtap="getInfo">
<view class="inspect_for_bgd">
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{index < 9 ?'0'+(index+1):(index+1)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">提交时间:{{item.createTime}}</view>
</view>
</view>
<view class="inspect_list_info">
<view class="inspect_list_info_details">
<view class="inspect_list_info_img">
<van-image width="120rpx" height="120rpx" fit="cover" src="{{request+item.mainImage+'.min.jpg'}}"/>
</view>
<view class="inspect_list_info_data">
<view class="inspect_list_info_data_prop color_blue">计划节点:<text class="color_blue">{{item.plannedNode}}</text></view>
<view class="inspect_list_info_data_prop color_orange">实际节点:<text class="color_orange">{{item.actualNode}}</text></view>
</view>
</view>
<view class="inspect_list_info_position">下周计划:<text class="color_purple">{{item.planForNextWeek}}</text></view>
</view>
</view>
</view>
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
</view>
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<view>新增</view>
</view>
</view></view>

View File

@ -0,0 +1 @@
/* pageage/project_checking_list/project_checking_list.wxss */