提交代码
parent
b58535e716
commit
bed3085a9b
|
@ -30,8 +30,8 @@ App({
|
||||||
// reqUrl:"http://wxw.ngrok.makalu.cc",
|
// reqUrl:"http://wxw.ngrok.makalu.cc",
|
||||||
//reqUrl:'https://jaapplets.makalu.cc',
|
//reqUrl:'https://jaapplets.makalu.cc',
|
||||||
//reqUrl:'https://sxyanzhu.com/jhwxapp',
|
//reqUrl:'https://sxyanzhu.com/jhwxapp',
|
||||||
//reqUrl:'https://cf.makalu.cc',
|
reqUrl:'https://cf.makalu.cc',
|
||||||
reqUrl:'http://127.0.0.1:8091',
|
//reqUrl:'http://127.0.0.1:8091',
|
||||||
uploadUrl:"https://cf.makalu.cc/wechat",
|
uploadUrl:"https://cf.makalu.cc/wechat",
|
||||||
|
|
||||||
//御景路数字化集成管控平台接口访问域名
|
//御景路数字化集成管控平台接口访问域名
|
||||||
|
|
|
@ -100,7 +100,6 @@
|
||||||
"van-col": "@vant/weapp/col",
|
"van-col": "@vant/weapp/col",
|
||||||
"van-popup": "@vant/weapp/popup/index",
|
"van-popup": "@vant/weapp/popup/index",
|
||||||
"van-picker": "@vant/weapp/picker/index",
|
"van-picker": "@vant/weapp/picker/index",
|
||||||
"van-uploader": "@vant/weapp/uploader/index",
|
|
||||||
"van-datetime-picker": "@vant/weapp/datetime-picker/index",
|
"van-datetime-picker": "@vant/weapp/datetime-picker/index",
|
||||||
"van-radio": "@vant/weapp/radio/index",
|
"van-radio": "@vant/weapp/radio/index",
|
||||||
"van-radio-group": "@vant/weapp/radio-group/index",
|
"van-radio-group": "@vant/weapp/radio-group/index",
|
||||||
|
@ -125,13 +124,13 @@
|
||||||
"voucher-date": "pages/components/voucher-date/index",
|
"voucher-date": "pages/components/voucher-date/index",
|
||||||
"voucher-datetime": "pages/components/voucher-datetime/index",
|
"voucher-datetime": "pages/components/voucher-datetime/index",
|
||||||
"file-uploader": "pages/components/file-uploader/index",
|
"file-uploader": "pages/components/file-uploader/index",
|
||||||
|
"file-uploader-all":"pages/components/file-uploader-all/index",
|
||||||
"project-select": "pages/components/project-select/index",
|
"project-select": "pages/components/project-select/index",
|
||||||
"safety-pie-chart": "./newComponents/safety-pie-chart/index",
|
"safety-pie-chart": "./newComponents/safety-pie-chart/index",
|
||||||
"safety-pie-charts": "./newComponents/safety-pie-charts/index",
|
"safety-pie-charts": "./newComponents/safety-pie-charts/index",
|
||||||
"safety-bar-chart": "./newComponents/safety-bar-chart/index",
|
"safety-bar-chart": "./newComponents/safety-bar-chart/index",
|
||||||
"safety-bar-charts": "./newComponents/safety-bar-charts/index",
|
"safety-bar-charts": "./newComponents/safety-bar-charts/index",
|
||||||
"safety-bar-chartss": "./newComponents/safety-bar-chartss/index",
|
"safety-bar-chartss": "./newComponents/safety-bar-chartss/index",
|
||||||
"file-uploader-copy": "pages/components/file-uploader-copy/index",
|
|
||||||
"voucher-many-select": "pages/components/voucher-many-select/index",
|
"voucher-many-select": "pages/components/voucher-many-select/index",
|
||||||
"sign": "pages/components/sign/sign",
|
"sign": "pages/components/sign/sign",
|
||||||
"safety-number": "./newComponents/number/index",
|
"safety-number": "./newComponents/number/index",
|
||||||
|
|
|
@ -1515,6 +1515,10 @@ swiper-item video{
|
||||||
background: #ff9800;
|
background: #ff9800;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
|
.file{
|
||||||
|
width: auto;
|
||||||
|
zoom:1;
|
||||||
|
}
|
||||||
.files{
|
.files{
|
||||||
word-break: break-all;
|
word-break: break-all;
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
|
|
|
@ -56,7 +56,7 @@
|
||||||
<!-- 默认上传样式 -->
|
<!-- 默认上传样式 -->
|
||||||
<view
|
<view
|
||||||
wx:if="{{ showUpload }}"
|
wx:if="{{ showUpload }}"
|
||||||
class="van-uploader__upload {{ disabled ? 'van-uploader__upload--disabled': ''}}"
|
class="bg_c van-uploader__upload {{ disabled ? 'van-uploader__upload--disabled': ''}}"
|
||||||
style="width: {{ utils.addUnit(previewSize) }}; height: {{ utils.addUnit(previewSize) }};"
|
style="width: {{ utils.addUnit(previewSize) }}; height: {{ utils.addUnit(previewSize) }};"
|
||||||
bindtap="startUpload"
|
bindtap="startUpload"
|
||||||
>
|
>
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
@import '../common/index.wxss';.van-uploader{position:relative;display:inline-block}.van-uploader__wrapper{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.van-uploader__slot:empty{display:none}.van-uploader__slot:not(:empty)+.van-uploader__upload{display:none!important}.van-uploader__upload{position:relative;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;width:80px;height:80px;margin:0 8px 8px 0;background-color:#f7f8fa;border-radius:8px}.van-uploader__upload:active{background-color:#f2f3f5}.van-uploader__upload-icon{color:#dcdee0;font-size:24px}.van-uploader__upload-text{margin-top:8px;color:#969799;font-size:12px}.van-uploader__upload--disabled{opacity:.5;opacity:var(--uploader-disabled-opacity,.5)}.van-uploader__preview{position:relative;margin:0 8px 8px 0;cursor:pointer}.van-uploader__preview-image{display:block;width:80px;height:80px;overflow:hidden;border-radius:8px}.van-uploader__preview-delete{position:absolute;top:0;right:0;z-index:1;display:-webkit-flex;display:flex;padding:10px;border-radius:50%;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.van-uploader__preview-delete__icon{color:#969799;font-size:18px;background-color:#fff;border-radius:50%}.van-uploader__file{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;width:80px;height:80px;background-color:#f7f8fa;border-radius:8px}.van-uploader__file-icon{color:#646566;font-size:20px}.van-uploader__file-name{box-sizing:border-box;width:100%;margin-top:8px;padding:0 4px;color:#646566;font-size:12px;text-align:center}.van-uploader__mask{position:absolute;top:0;right:0;bottom:0;left:0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;color:#fff;background-color:rgba(50,50,51,.88);border-radius:8px}.van-uploader__mask-icon{font-size:22px}.van-uploader__mask-message{margin-top:6px;padding:0 4px;font-size:12px;line-height:14px}.van-uploader__loading{width:22px;height:22px;color:#fff}
|
@import '../common/index.wxss';.van-uploader{position:relative;display:inline-block}.van-uploader__wrapper{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.van-uploader__slot:empty{display:none}.van-uploader__slot:not(:empty)+.van-uploader__upload{display:none!important}.van-uploader__upload{position:relative;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;width:80px;height:80px;margin:0 8px 8px 0;background-color:#f7f8fa;border-radius:8px}.van-uploader__upload:active{background-color:#28345a}.van-uploader__upload-icon{color:#dcdee0;font-size:24px}.van-uploader__upload-text{margin-top:8px;color:#eee;font-size:12px}.van-uploader__upload--disabled{opacity:.5;opacity:var(--uploader-disabled-opacity,.5)}.van-uploader__preview{position:relative;margin:0 8px 8px 0;cursor:pointer}.van-uploader__preview-image{display:block;width:80px;height:80px;overflow:hidden;border-radius:8px}.van-uploader__preview-delete{position:absolute;top:0;right:0;z-index:1;display:-webkit-flex;display:flex;padding:10px;border-radius:50%;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.van-uploader__preview-delete__icon{color:#969799;font-size:18px;background-color:#fff;border-radius:50%}.van-uploader__file{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;width:80px;height:80px;background-color:#f7f8fa;border-radius:8px}.van-uploader__file-icon{color:#646566;font-size:20px}.van-uploader__file-name{box-sizing:border-box;width:100%;margin-top:8px;padding:0 4px;color:#646566;font-size:12px;text-align:center}.van-uploader__mask{position:absolute;top:0;right:0;bottom:0;left:0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;color:#fff;background-color:rgba(50,50,51,.88);border-radius:8px}.van-uploader__mask-icon{font-size:22px}.van-uploader__mask-message{margin-top:6px;padding:0 4px;font-size:12px;line-height:14px}.van-uploader__loading{width:22px;height:22px;color:#28345a}.bg_c{background-color: #28345a;}
|
|
@ -39,14 +39,14 @@
|
||||||
<view class="inspect_info_list" >
|
<view class="inspect_info_list" >
|
||||||
<view class="inspect_info_title">工序部位</view>
|
<view class="inspect_info_title">工序部位</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<input placeholder="请填写验收工序部位" placeholder-style="color:#6777aa;" class="inspect_input_fill_in" bindinput="onInputCheckWorkingPositionValue" maxlength="200"/>
|
<input placeholder="请填写验收工序部位" placeholder-style="color:#6777aa;" class="inspect_input_fill_in" bindblur="onInputCheckWorkingPositionValue" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list" >
|
<view class="inspect_info_list" >
|
||||||
<view class="inspect_info_title">验收描述</view>
|
<view class="inspect_info_title">验收描述</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写验收结果描述"
|
<textarea class="add_textarea" placeholder="请填写验收结果描述"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputIntroValue" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputIntroValue" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
|
|
|
@ -32,14 +32,14 @@
|
||||||
<view class="inspect_info_title">隐患描述</view>
|
<view class="inspect_info_title">隐患描述</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写质量隐患描述"
|
<textarea class="add_textarea" placeholder="请填写质量隐患描述"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputWorkParts" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputWorkParts" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list" >
|
<view class="inspect_info_list" >
|
||||||
<view class="inspect_info_title">整改要求</view>
|
<view class="inspect_info_title">整改要求</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写隐患整改要求"
|
<textarea class="add_textarea" placeholder="请填写隐患整改要求"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputChangeInfoValue" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputChangeInfoValue" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
|
|
|
@ -130,7 +130,7 @@
|
||||||
<view class="inspect_info_list" >
|
<view class="inspect_info_list" >
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写整改复检意见"
|
<textarea class="add_textarea" placeholder="请填写整改复检意见"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputOpinion" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputOpinion" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
@ -120,7 +120,7 @@
|
||||||
<view class="inspect_info_title">整改说明</view>
|
<view class="inspect_info_title">整改说明</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写整改说明"
|
<textarea class="add_textarea" placeholder="请填写整改说明"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputOpinion" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputOpinion" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
|
|
|
@ -32,14 +32,14 @@
|
||||||
<view class="inspect_info_title">隐患描述</view>
|
<view class="inspect_info_title">隐患描述</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写质量隐患描述"
|
<textarea class="add_textarea" placeholder="请填写质量隐患描述"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputWorkParts" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputWorkParts" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list" >
|
<view class="inspect_info_list" >
|
||||||
<view class="inspect_info_title">整改要求</view>
|
<view class="inspect_info_title">整改要求</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写隐患整改要求"
|
<textarea class="add_textarea" placeholder="请填写隐患整改要求"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputChangeInfoValue" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputChangeInfoValue" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
|
|
|
@ -130,7 +130,7 @@
|
||||||
<view class="inspect_info_list" >
|
<view class="inspect_info_list" >
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写整改复检意见"
|
<textarea class="add_textarea" placeholder="请填写整改复检意见"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputOpinion" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputOpinion" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
@ -119,7 +119,7 @@
|
||||||
<view class="inspect_info_title">整改说明</view>
|
<view class="inspect_info_title">整改说明</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写整改说明"
|
<textarea class="add_textarea" placeholder="请填写整改说明"
|
||||||
placeholder-style="color:#6777aa;" bindinput="onInputOpinion" maxlength="200"/>
|
placeholder-style="color:#6777aa;" bindblur="onInputOpinion" maxlength="200"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
|
|
|
@ -7,80 +7,60 @@ Page({
|
||||||
*/
|
*/
|
||||||
data: {
|
data: {
|
||||||
maxDate:new Date(2088,1,1).getTime(),
|
maxDate:new Date(2088,1,1).getTime(),
|
||||||
currentDate:new Date().getTime(),
|
|
||||||
deptId:"",
|
deptId:"",
|
||||||
projectId:"",
|
projectId:"",
|
||||||
|
projectName:"",
|
||||||
loginName:"",
|
loginName:"",
|
||||||
userName:"",
|
userName:"",
|
||||||
imageInfoData:[],
|
imageInfoData:[],
|
||||||
data:{},
|
trainTitle:"",
|
||||||
projectType:"",
|
trainParticipants:"",
|
||||||
projectTypeName:"",
|
beginDate:"",
|
||||||
uploadImages:[],
|
trainContent:"",
|
||||||
request:app.globalData.reqUrl
|
trainFileData:[],
|
||||||
|
limit:1,
|
||||||
|
trainType:"",
|
||||||
|
title:"",
|
||||||
|
minTitle:"",
|
||||||
|
showDept:false,
|
||||||
|
projectDeptList:[],
|
||||||
|
navs:[],
|
||||||
|
deptNames:"",
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生命周期函数--监听页面加载
|
* 生命周期函数--监听页面加载
|
||||||
*/
|
*/
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
let {projectId} = options
|
let {projectId,projectName,trainType} = options
|
||||||
//获取缓存数据
|
//获取缓存数据
|
||||||
wx.getStorage({
|
wx.getStorage({
|
||||||
key: 'userinfo',
|
key: 'userinfo',
|
||||||
success:res=>{
|
success:res=>{
|
||||||
|
let title="";
|
||||||
|
let minTitle="";
|
||||||
|
if(trainType=="0"){
|
||||||
|
title="专项培训";
|
||||||
|
minTitle="培训";
|
||||||
|
}else{
|
||||||
|
title="应急演练";
|
||||||
|
minTitle="演练";
|
||||||
|
}
|
||||||
this.setData({
|
this.setData({
|
||||||
projectId,
|
projectId,
|
||||||
|
projectName,
|
||||||
|
trainType,
|
||||||
|
title,
|
||||||
|
minTitle,
|
||||||
deptId:res.data.deptId,
|
deptId:res.data.deptId,
|
||||||
loginName:res.data.loginName,
|
loginName:res.data.loginName,
|
||||||
userName:res.data.nickName
|
userName:res.data.nickName
|
||||||
})
|
})
|
||||||
this.getProjectScheduleData()
|
this.getProjectDeptList(projectId,res.data.deptId,res.data.minRoleId);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
//查询项目历史形象进度数据
|
|
||||||
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 上传图片
|
// list 上传图片
|
||||||
onImagesArr(e){
|
onImagesArr(e){
|
||||||
var data = this.data.imageInfoData;
|
var data = this.data.imageInfoData;
|
||||||
|
@ -90,18 +70,49 @@ Page({
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
//获取项目单位
|
||||||
|
getProjectDeptList(projectId,deptId,minRoleId){
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl+'/wechat/projectTrain/queryUnitList',
|
||||||
|
method:"get",
|
||||||
|
data:{
|
||||||
|
projectId:projectId,
|
||||||
|
nowDept:deptId,
|
||||||
|
nowRole:minRoleId
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
res = res.data
|
||||||
|
if(res.code == 200){
|
||||||
|
let temdata=[];
|
||||||
|
res.data.forEach((item)=>{
|
||||||
|
item.state='0';
|
||||||
|
temdata.push(item);
|
||||||
|
})
|
||||||
|
that.setData({
|
||||||
|
projectDeptList:temdata
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
//取消页面
|
//取消页面
|
||||||
cancelSaveView(){
|
cancelSaveView(){
|
||||||
wx.navigateBack()
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index?trainType='+this.data.trainType,
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
//保存
|
//保存
|
||||||
onProblemSubmitSave(){
|
onSave(){
|
||||||
this.setData({
|
this.setData({
|
||||||
loadShow:true
|
loadShow:true
|
||||||
})
|
})
|
||||||
let that = this
|
let that = this
|
||||||
let {projectId,loginName,imageInfoData,data,projectType} = that.data;
|
let {projectId,projectName,loginName,imageInfoData,trainType,trainTitle,trainParticipants,beginDate,trainContent,trainFileData,minTitle,deptId} = that.data;
|
||||||
|
debugger
|
||||||
//数据效验
|
//数据效验
|
||||||
if(projectId==""||loginName==""){
|
if(projectId==""||loginName==""){
|
||||||
app.toast("数据异常,请刷新页面重试!")
|
app.toast("数据异常,请刷新页面重试!")
|
||||||
|
@ -111,114 +122,85 @@ Page({
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(imageInfoData.length==0){
|
if(imageInfoData.length==0){
|
||||||
app.toast("请上传形象进度图片!")
|
app.toast("请上传"+minTitle+"图片!")
|
||||||
that.setData({
|
that.setData({
|
||||||
loadShow:false
|
loadShow:false
|
||||||
})
|
})
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(data.plannedNode==""){
|
if(trainTitle==""){
|
||||||
app.toast("请填写计划节点描述!")
|
app.toast("请填写"+minTitle+"标题!")
|
||||||
that.setData({
|
that.setData({
|
||||||
loadShow:false
|
loadShow:false
|
||||||
})
|
})
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(data.actualNode==""){
|
if(beginDate==""){
|
||||||
app.toast("请填写实际节点描述!")
|
app.toast("请选择"+minTitle+"时间!")
|
||||||
that.setData({
|
that.setData({
|
||||||
loadShow:false
|
loadShow:false
|
||||||
})
|
})
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(data.purchaseProgress==""){
|
if(trainParticipants==""){
|
||||||
if(projectType==4){
|
app.toast("请填写参与人数!")
|
||||||
app.toast("请填写结算进展描述!")
|
|
||||||
}else{
|
|
||||||
app.toast("请填写报建、设计进展描述!")
|
|
||||||
}
|
|
||||||
that.setData({
|
that.setData({
|
||||||
loadShow:false
|
loadShow:false
|
||||||
})
|
})
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(data.designProgress==""){
|
if(trainContent==""){
|
||||||
if(projectType==4){
|
app.toast("请填写"+minTitle+"内容!")
|
||||||
app.toast("请填写运维进展描述!")
|
|
||||||
}else{
|
|
||||||
app.toast("请填写报建、设计进展描述!")
|
|
||||||
}
|
|
||||||
that.setData({
|
that.setData({
|
||||||
loadShow:false
|
loadShow:false
|
||||||
})
|
})
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(data.constructionProgress==""){
|
if(trainFileData.length==0){
|
||||||
app.toast("请填施工进展描述!")
|
app.toast("请上传相关文件!")
|
||||||
that.setData({
|
that.setData({
|
||||||
loadShow:false
|
loadShow:false
|
||||||
})
|
});
|
||||||
return;
|
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 = [];
|
let fileUrls = [];
|
||||||
imageInfoData.forEach(async (item)=>{
|
imageInfoData.forEach(async (item)=>{
|
||||||
let uploadUrl = app.globalData.uploadUrl+'/common/upload'
|
let uploadUrl = app.globalData.uploadUrl+'/common/upload'
|
||||||
let name = "file"
|
let name = "file"
|
||||||
//这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片
|
//这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片
|
||||||
if(item.indexOf(that.data.request)==-1){
|
let obj = await that.syncUploadImage(uploadUrl,item,name);
|
||||||
let obj = await that.syncUploadImage(uploadUrl,item,name);
|
fileUrls.push(obj.data.fileName);
|
||||||
fileUrls.push(obj.data.fileName);
|
|
||||||
}else{
|
|
||||||
fileUrls.push(item.replace(that.data.request,"").replace(".min.jpg",""));
|
|
||||||
}
|
|
||||||
//验证图片上传完毕
|
//验证图片上传完毕
|
||||||
if(fileUrls.length == imageInfoData.length){
|
if(fileUrls.length == imageInfoData.length){
|
||||||
|
//上传文件
|
||||||
|
obj = await that.syncUploadImage(uploadUrl,trainFileData[0].path,name);
|
||||||
|
let depts = [];
|
||||||
|
this.data.navs.forEach((it)=>{
|
||||||
|
depts.push({deptId:that.data.projectDeptList[it].unitId});
|
||||||
|
});
|
||||||
|
debugger
|
||||||
let params = {
|
let params = {
|
||||||
projectId,
|
projectId,
|
||||||
image:fileUrls.toString(),
|
projectName,
|
||||||
plannedNode:data.plannedNode,
|
mainImage:fileUrls.toString(),
|
||||||
actualNode:data.actualNode,
|
trainType,
|
||||||
purchaseProgress:data.purchaseProgress,
|
trainTitle,
|
||||||
designProgress:data.designProgress,
|
beginDate:beginDate+" 12:00:00",
|
||||||
constructionProgress:data.constructionProgress,
|
trainParticipants,
|
||||||
acceptanceProgress:data.acceptanceProgress,
|
trainContent,
|
||||||
planForNextWeek:data.planForNextWeek,
|
trainFile:obj.data.fileName,
|
||||||
existingProblem:data.existingProblem,
|
deptId,
|
||||||
problemProgress:data.problemProgress,
|
workTrainDeptList:depts,
|
||||||
dataTemplate:projectType,
|
|
||||||
createBy:loginName
|
createBy:loginName
|
||||||
}
|
}
|
||||||
|
let url="";
|
||||||
|
if(trainType=="0"){
|
||||||
|
url="/wechat/projectTrain/addTrain";
|
||||||
|
}else{
|
||||||
|
url="/wechat/projectTrain/addEmergencyDrill";
|
||||||
|
}
|
||||||
wx.request({
|
wx.request({
|
||||||
url: app.globalData.reqUrl + '/wechat/projectSchedule/add',
|
url: app.globalData.reqUrl + url,
|
||||||
method:"POST",
|
method:"POST",
|
||||||
data:params,
|
data:params,
|
||||||
header: {
|
header: {
|
||||||
|
@ -233,8 +215,8 @@ Page({
|
||||||
if(res.code == 200){
|
if(res.code == 200){
|
||||||
app.toast("添加成功!")
|
app.toast("添加成功!")
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
wx.navigateTo({
|
wx.redirectTo({
|
||||||
url: '../list/index',
|
url: '../list/index?trainType='+trainType,
|
||||||
})
|
})
|
||||||
},200)
|
},200)
|
||||||
}
|
}
|
||||||
|
@ -278,38 +260,71 @@ Page({
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
plannedNodeAction: function (options) {
|
trainTitleAction: function (options) {
|
||||||
this.data.data.plannedNode = options.detail.value;
|
this.data.trainTitle = options.detail.value;
|
||||||
},
|
},
|
||||||
actualNodeAction: function (options) {
|
onInputNumber: function (options) {
|
||||||
this.data.data.actualNode=options.detail.value;
|
let value = options.detail.value;
|
||||||
|
value = value.replace(/[^0-9]/g, ''); // 正则表达式替换非数字为空
|
||||||
|
this.setData({
|
||||||
|
trainParticipants: value
|
||||||
|
});
|
||||||
},
|
},
|
||||||
purchaseProgressAction: function (options) {
|
trainContent: function (options) {
|
||||||
this.data.data.purchaseProgress = options.detail.value
|
this.data.trainContent = options.detail.value
|
||||||
},
|
},
|
||||||
designProgressAction: function (options) {
|
|
||||||
this.data.data.designProgress = options.detail.value
|
fileUpload(a,b,c){
|
||||||
|
let file=a.detail;
|
||||||
|
this.setData({
|
||||||
|
trainFileData: file
|
||||||
|
});
|
||||||
},
|
},
|
||||||
constructionProgressAction: function (options) {
|
|
||||||
this.data.data.constructionProgress = options.detail.value
|
//演练训练时间
|
||||||
|
onInputTime(e){
|
||||||
|
let beginDate = e.detail
|
||||||
|
this.setData({
|
||||||
|
beginDate
|
||||||
|
})
|
||||||
},
|
},
|
||||||
acceptanceProgressAction: function (options) {
|
|
||||||
this.data.data.acceptanceProgress = options.detail.value
|
onShowDept(){
|
||||||
|
this.setData({
|
||||||
|
showDept:true
|
||||||
|
})
|
||||||
},
|
},
|
||||||
planForNextWeekAction: function (options) {
|
|
||||||
this.data.data.planForNextWeek = options.detail.value
|
onCloseDept(){
|
||||||
|
this.setData({
|
||||||
|
showDept:false
|
||||||
|
})
|
||||||
},
|
},
|
||||||
existingProblemAction: function (options) {
|
|
||||||
this.data.data.existingProblem = options.detail.value
|
changeDept(event){
|
||||||
},
|
let idx = event.target.dataset.index;
|
||||||
problemProgressAction: function (options) {
|
let data = this.data.projectDeptList;
|
||||||
this.data.data.problemProgress = options.detail.value
|
if(this.data.navs.indexOf(idx)>-1){
|
||||||
|
this.data.navs.splice(this.data.navs.indexOf(idx), 1);
|
||||||
|
data[idx].state='0';
|
||||||
|
}else{
|
||||||
|
this.data.navs.push(idx);
|
||||||
|
data[idx].state='1';
|
||||||
|
}
|
||||||
|
let deptNames = "";
|
||||||
|
this.data.navs.forEach((it)=>{
|
||||||
|
deptNames+=","+data[idx].unitName;
|
||||||
|
});
|
||||||
|
this.setData({
|
||||||
|
deptNames:deptNames.substring(1),
|
||||||
|
projectDeptList:data
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
returnToPage: function () {
|
returnToPage: function () {
|
||||||
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
wx.navigateTo({
|
wx.redirectTo({
|
||||||
url: '../list/index',
|
url: '../list/index?trainType='+this.data.trainType,
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
{
|
{
|
||||||
"usingComponents": {
|
"usingComponents": {
|
||||||
|
"van-row": "@vant/weapp/row",
|
||||||
|
"van-col": "@vant/weapp/col",
|
||||||
|
"van-popup": "@vant/weapp/popup",
|
||||||
|
"van-picker": "@vant/weapp/picker/index",
|
||||||
|
"van-area": "@vant/weapp/area/index",
|
||||||
|
"mkl-multi-select": "/components/@mkl/multi-select/index",
|
||||||
"van-overlay": "@vant/weapp/overlay/index"
|
"van-overlay": "@vant/weapp/overlay/index"
|
||||||
},
|
},
|
||||||
"navigationStyle":"custom",
|
"navigationStyle":"custom"
|
||||||
"navigationBarTitleText": "新增形象进度"
|
|
||||||
}
|
}
|
|
@ -6,7 +6,7 @@
|
||||||
<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 class="header_name">新增形象进度</view>
|
<view class="header_name">新增{{title}}</view>
|
||||||
</van-col>
|
</van-col>
|
||||||
</van-row>
|
</van-row>
|
||||||
</view>
|
</view>
|
||||||
|
@ -14,102 +14,62 @@
|
||||||
<view class="max_content">
|
<view class="max_content">
|
||||||
<view class="inspect_info">
|
<view class="inspect_info">
|
||||||
<view class="module_title module_title_flex">
|
<view class="module_title module_title_flex">
|
||||||
<view>{{data.projectName}}</view>
|
<view>{{projectName}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">形象进度图片</view>
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">{{minTitle}}图片</view>
|
||||||
<view class="problem_list_info_con">
|
<view class="problem_list_info_con">
|
||||||
<file-uploader bindimages="onImagesArr" fileUrlArray="{{uploadImages}}"
|
<file-uploader bindimages="onImagesArr" limit="{{limit}}"></file-uploader>
|
||||||
></file-uploader>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">计划节点</view>
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">{{minTitle}}标题</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写计划节点描述"
|
<input placeholder="请填写{{minTitle}}标题" placeholder-style="color:#6777aa;" class="inspect_input_fill_in" bindblur="trainTitleAction" maxlength="30"/>
|
||||||
placeholder-style="color:#6777aa;" model:value="{{data.plannedNode}}" maxlength="800" bindblur="plannedNodeAction"/>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">实际节点</view>
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">{{minTitle}}时间</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写实际节点描述"
|
<voucher-date counts="5" placeholder="请选择{{minTitle}}时间" maxDate="{{maxDate}}" bindchange="onInputTime"></voucher-date>
|
||||||
placeholder-style="color:#6777aa;" model:value="{{data.actualNode}}" maxlength="800" bindblur="actualNodeAction"/>
|
</view>
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list" wx:if="{{projectType!=4}}">
|
<view class="inspect_info_list">
|
||||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">融资、招采进展</view>
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">参与人数</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写融资、招采进展描述"
|
<input type="number" placeholder="请填写参与人数" placeholder-style="color:#6777aa;" class="inspect_input_fill_in" bindblur="onInputNumber" value="{{trainParticipants}}"/>
|
||||||
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>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list">
|
||||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">施工进展</view>
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">{{minTitle}}内容</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填施工进展描述"
|
<textarea class="add_textarea" placeholder="请填写{{minTitle}}内容"
|
||||||
placeholder-style="color:#6777aa;" model:value="{{data.constructionProgress}}" maxlength="800" bindblur="constructionProgressAction"/>
|
placeholder-style="color:#6777aa;" maxlength="800" bindblur="trainContent"/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list" style="width: 100%;">
|
||||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">验收进展</view>
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">相关文件</view>
|
||||||
<view class="inspect_info_content">
|
<view class="problem_list_info_con">
|
||||||
<textarea class="add_textarea" placeholder="请填写验收进展描述"
|
<file-uploader-all bindfiles="fileUpload" limit="{{limit}}"></file-uploader-all>
|
||||||
placeholder-style="color:#6777aa;" model:value="{{data.acceptanceProgress}}" maxlength="800" bindblur="acceptanceProgressAction"/>
|
</view>
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_info_list">
|
<view class="inspect_info_list" style="float: none;">
|
||||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">下周计划</view>
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">协作团队</view>
|
||||||
<view class="inspect_info_content">
|
<view class="inspect_info_content">
|
||||||
<textarea class="add_textarea" placeholder="请填写下周计划描述"
|
<input placeholder="请选择协作团队" placeholder-style="color:#6777aa;" class="inspect_input_fill_in" bindtap="onShowDept" value="{{deptNames}}" disabled="disabled"/>
|
||||||
placeholder-style="color:#6777aa;" model:value="{{data.planForNextWeek}}" maxlength="800" bindblur="planForNextWeekAction"/>
|
</view>
|
||||||
</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>
|
</view>
|
||||||
<view class="problem_submit_to">
|
<view class="problem_submit_to">
|
||||||
<view class="problem_submit_to_btn" bindtap="cancelSaveView">取消</view>
|
<view class="problem_submit_to_btn" bindtap="cancelSaveView">取消</view>
|
||||||
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onProblemSubmitSave">保存</view>
|
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onSave">保存</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<van-popup position="bottom" show="{{ showDept }}" bind:close="onCloseDept">
|
||||||
|
<view class="max_tab_name">
|
||||||
|
<view wx:for="{{projectDeptList}}" wx:key="index" data-index="{{index}}" bindtap="changeDept" data-name="{{item.deptName}}" data-id="{{item.deptId}}" class="font_color {{ item.state=='1' ? 'active' :' '}}">{{item.deptName}}</view>
|
||||||
|
</view>
|
||||||
|
</van-popup>
|
||||||
<van-overlay show="{{loadShow}}">
|
<van-overlay show="{{loadShow}}">
|
||||||
<view class="gif">
|
<view class="gif">
|
||||||
<image src="../../../images/loding2.gif"></image>
|
<image src="../../../images/loding2.gif"></image>
|
||||||
|
|
|
@ -11,3 +11,26 @@
|
||||||
.radio_label_class{
|
.radio_label_class{
|
||||||
color: #ffffff !important;
|
color: #ffffff !important;
|
||||||
}
|
}
|
||||||
|
.max_tab_name{
|
||||||
|
padding: 0 40rpx;
|
||||||
|
font-size:30rpx;
|
||||||
|
height: 460rpx;
|
||||||
|
overflow: auto;
|
||||||
|
margin-top: 20rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.van-popup.van-popup--bottom{
|
||||||
|
background: #232a44;
|
||||||
|
}
|
||||||
|
.van-popup {
|
||||||
|
background-color: var(--popup-background-color,#232a44) !important;
|
||||||
|
}
|
||||||
|
.font_color{
|
||||||
|
padding: 15rpx 0;
|
||||||
|
color: #157dd2;
|
||||||
|
}
|
||||||
|
.active{
|
||||||
|
font-size:30rpx;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #14feff
|
||||||
|
}
|
||||||
|
|
|
@ -18,6 +18,8 @@ Page({
|
||||||
minTitle:"",
|
minTitle:"",
|
||||||
fileUrls:[],
|
fileUrls:[],
|
||||||
fileNames:[],
|
fileNames:[],
|
||||||
|
minFileImages:[],
|
||||||
|
fileImages:[],
|
||||||
request:app.globalData.reqUrl
|
request:app.globalData.reqUrl
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -78,16 +80,29 @@ Page({
|
||||||
}
|
}
|
||||||
let fileNames = [];
|
let fileNames = [];
|
||||||
let fileUrls = [];
|
let fileUrls = [];
|
||||||
|
let minFileImages = [];
|
||||||
|
let fileImages = [];
|
||||||
|
//判断附件
|
||||||
if(res.data.trainFile){
|
if(res.data.trainFile){
|
||||||
res.data.trainFile.split(',').forEach(element => {
|
res.data.trainFile.split(',').forEach(element => {
|
||||||
let it = element.split('/');
|
let _file = element.split('.');
|
||||||
fileNames.push(it[it.length-1]);
|
_file = _file[_file.length-1].toLocaleUpperCase();
|
||||||
fileUrls.push(element);
|
//判断附件类型,如果是图片直接展示,非图片则显示附件
|
||||||
|
if(_file=="PNG"||_file=="JPG"||_file=="JPEG"){
|
||||||
|
fileImages.push(that.data.request+element);
|
||||||
|
minFileImages.push(that.data.request+element+'.min.jpg');
|
||||||
|
}else{
|
||||||
|
let it = element.split('/');
|
||||||
|
fileNames.push(it[it.length-1]);
|
||||||
|
fileUrls.push(element);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
that.setData({
|
that.setData({
|
||||||
fileUrls,
|
fileUrls,
|
||||||
fileNames,
|
fileNames,
|
||||||
|
minFileImages,
|
||||||
|
fileImages,
|
||||||
infoData:res.data,
|
infoData:res.data,
|
||||||
imageList:urls,
|
imageList:urls,
|
||||||
minImageList:minUrls,
|
minImageList:minUrls,
|
||||||
|
@ -122,8 +137,9 @@ Page({
|
||||||
},
|
},
|
||||||
deleteData(){
|
deleteData(){
|
||||||
let {id} = this.data
|
let {id} = this.data
|
||||||
|
let that = this;
|
||||||
let url="";
|
let url="";
|
||||||
if(this.data.trainType==0){
|
if(this.data.trainType=="0"){
|
||||||
url="/wechat/projectTrain/removeTrain";
|
url="/wechat/projectTrain/removeTrain";
|
||||||
}else{
|
}else{
|
||||||
url="/wechat/projectTrain/removeEmergencyDrill";
|
url="/wechat/projectTrain/removeEmergencyDrill";
|
||||||
|
@ -139,7 +155,7 @@ Page({
|
||||||
method:"get",
|
method:"get",
|
||||||
success(res){
|
success(res){
|
||||||
app.toast("删除成功!")
|
app.toast("删除成功!")
|
||||||
wx.navigateTo({
|
wx.redirectTo({
|
||||||
url: `../list/index?trainType=`+that.data.trainType,
|
url: `../list/index?trainType=`+that.data.trainType,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -155,14 +171,40 @@ Page({
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
//展示图片
|
||||||
|
showFileImg:function(e){
|
||||||
|
var that=this;
|
||||||
|
wx.previewImage({
|
||||||
|
urls: that.data.fileImages,
|
||||||
|
current: that.data.fileImages[e.currentTarget.dataset.index]
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
downFile:function(e){
|
downFile:function(e){
|
||||||
//let idx = e.currentTarget.dataset['index'];
|
let idx = e.currentTarget.dataset['index'];
|
||||||
app.toast("暂不支持下载!如需下载请前往后台管理系统!!")
|
let that = this;
|
||||||
|
wx.downloadFile({
|
||||||
|
// 示例 url,并非真实存在
|
||||||
|
url: that.data.request+that.fileUrls[idx],
|
||||||
|
success: function (res) {
|
||||||
|
const filePath = res.tempFilePath
|
||||||
|
wx.openDocument({
|
||||||
|
filePath: filePath,
|
||||||
|
success: function (res) {
|
||||||
|
console.log('打开文档成功')
|
||||||
|
},
|
||||||
|
fail:function(res) {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
//app.toast("暂不支持下载!如需下载请前往后台管理系统!!")
|
||||||
},
|
},
|
||||||
|
|
||||||
returnToPage: function () {
|
returnToPage: function () {
|
||||||
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
wx.navigateTo({
|
wx.redirectTo({
|
||||||
url: '../list/index?trainType='+this.data.trainType,
|
url: '../list/index?trainType='+this.data.trainType,
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
<view class="inspect_overview_list">
|
<view class="inspect_overview_list">
|
||||||
<van-row>
|
<van-row>
|
||||||
<van-col span="6"><text class="color_purple">参与人数</text></van-col>
|
<van-col span="6"><text class="color_purple">参与人数</text></van-col>
|
||||||
<van-col span="18">{{infoData.trainParticipants}} 人</van-col>
|
<van-col class="safety_issue_number" span="18">{{infoData.trainParticipants}} 人</van-col>
|
||||||
</van-row>
|
</van-row>
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_overview_list">
|
<view class="inspect_overview_list">
|
||||||
|
@ -76,7 +76,10 @@
|
||||||
<van-row>
|
<van-row>
|
||||||
<van-col span="6"><text class="color_purple">相关文件</text></van-col>
|
<van-col span="6"><text class="color_purple">相关文件</text></van-col>
|
||||||
<van-col span="18">
|
<van-col span="18">
|
||||||
<view wx:for="{{fileNames}}" wx:key="index" bindtap="downFile" data-index="{{index}}">
|
<view class="in-img-div" wx:if="{{minFileImages.length>0}}" wx:for="{{minFileImages}}" wx:key="index">
|
||||||
|
<image bindtap='showFileImg' data-index="{{index}}" src='{{item}}'></image>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{fileNames.length>0}}" wx:for="{{fileNames}}" wx:key="index" bindtap="downFile" data-index="{{index}}">
|
||||||
<text class="color_blue files">{{item}}</text>
|
<text class="color_blue files">{{item}}</text>
|
||||||
</view>
|
</view>
|
||||||
</van-col>
|
</van-col>
|
||||||
|
|
|
@ -30,7 +30,7 @@ Page({
|
||||||
|
|
||||||
skipAdd(){
|
skipAdd(){
|
||||||
wx.redirectTo({
|
wx.redirectTo({
|
||||||
url: `../add/index?projectId=${this.data.initData.id}&trainType=`+this.data.trainType,
|
url: `../add/index?projectId=${this.data.initData.id}&projectName=${this.data.initData.text}&trainType=`+this.data.trainType,
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_list_info_data">
|
<view class="inspect_list_info_data">
|
||||||
<view class="inspect_list_info_data_prop color_blue">{{minTitle}}时间:<text class="color_blue">{{item.beginDate}}</text></view>
|
<view class="inspect_list_info_data_prop color_blue">{{minTitle}}时间:<text class="color_blue">{{item.beginDate}}</text></view>
|
||||||
<view class="inspect_list_info_data_prop color_blue">参与人数:<text class="color_purple">{{item.trainParticipants}} 人</text></view>
|
<view class="inspect_list_info_data_prop color_blue safety_issue_number">参与人数:<text class="color_purple">{{item.trainParticipants}} 人</text></view>
|
||||||
<view class="inspect_list_info_data_prop color_orange">协同单位:<text class="color_orange">{{item.trainDeptNames}}</text></view>
|
<view class="inspect_list_info_data_prop color_orange">协同单位:<text class="color_orange">{{item.trainDeptNames}}</text></view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
@ -5,18 +5,28 @@ Component({
|
||||||
* 组件的属性列表
|
* 组件的属性列表
|
||||||
*/
|
*/
|
||||||
properties: {
|
properties: {
|
||||||
scr:{
|
fileUrlArray:{
|
||||||
type:String
|
type:Array
|
||||||
|
},
|
||||||
|
limit:{
|
||||||
|
type:Number
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**数据监听 */
|
||||||
|
observers: {
|
||||||
|
fileUrlArray:function(val){
|
||||||
|
this.setData({
|
||||||
|
uploaderList:val
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 组件的初始数据
|
* 组件的初始数据
|
||||||
*/
|
*/
|
||||||
data: {
|
data: {
|
||||||
quantity:1,
|
quantity:5,
|
||||||
uploaderList: [],
|
uploaderList: [],
|
||||||
uploaderNum:0,
|
uploaderNum:0,
|
||||||
showUpload:true
|
showUpload:true
|
||||||
|
@ -44,26 +54,19 @@ Component({
|
||||||
showUpload: true
|
showUpload: true
|
||||||
})
|
})
|
||||||
console.log(this.data.uploaderList)
|
console.log(this.data.uploaderList)
|
||||||
this.triggerEvent("images", this.data.uploaderList);
|
this.triggerEvent("files", this.data.uploaderList);
|
||||||
},
|
|
||||||
//展示图片
|
|
||||||
showImg:function(e){
|
|
||||||
var that=this;
|
|
||||||
wx.previewImage({
|
|
||||||
urls: that.data.uploaderList,
|
|
||||||
current: that.data.uploaderList[e.currentTarget.dataset.index]
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
//上传图片
|
//上传图片
|
||||||
upload: function(e) {
|
upload: function(e) {
|
||||||
|
if(this.data.limit){
|
||||||
|
this.data.quantity=this.data.limit;
|
||||||
|
}
|
||||||
var that = this;
|
var that = this;
|
||||||
wx.chooseImage({
|
wx.chooseMessageFile({
|
||||||
count: that.data.quantity - that.data.uploaderNum, // 默认9
|
count: that.data.quantity - that.data.uploaderNum, // 默认9
|
||||||
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
|
|
||||||
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
|
|
||||||
success: function(res) {
|
success: function(res) {
|
||||||
// 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
|
// 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
|
||||||
let tempFilePaths = res.tempFilePaths;
|
let tempFilePaths = res.tempFiles;
|
||||||
let uploaderList = that.data.uploaderList.concat(tempFilePaths);
|
let uploaderList = that.data.uploaderList.concat(tempFilePaths);
|
||||||
if (uploaderList.length==that.data.quantity){
|
if (uploaderList.length==that.data.quantity){
|
||||||
that.setData({
|
that.setData({
|
||||||
|
@ -74,7 +77,7 @@ Component({
|
||||||
uploaderList: uploaderList,
|
uploaderList: uploaderList,
|
||||||
uploaderNum: uploaderList.length,
|
uploaderNum: uploaderList.length,
|
||||||
})
|
})
|
||||||
that.triggerEvent("images", that.data.uploaderList);
|
that.triggerEvent("files", that.data.uploaderList);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
|
@ -0,0 +1,14 @@
|
||||||
|
<!--components/fillings/index.wxml-->
|
||||||
|
<view class="filling_selector_max">
|
||||||
|
<!-- 上传图片 -->
|
||||||
|
<view class="file">
|
||||||
|
<view class="files" wx:for="{{uploaderList}}" wx:key="index">
|
||||||
|
<text data-index="{{index}}">{{item.name}}</text>
|
||||||
|
<view class="in-delete" bindtap='clearImg' data-index="{{index}}">×</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="in-add">
|
||||||
|
<view class="in-add-click" bindtap='upload' wx:if="{{showUpload}}"></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
|
@ -22,10 +22,6 @@
|
||||||
.filling_selector_input input{
|
.filling_selector_input input{
|
||||||
padding: 15rpx 0;
|
padding: 15rpx 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* 上传图片 */
|
/* 上传图片 */
|
||||||
.in-modular-upload{
|
.in-modular-upload{
|
||||||
padding: 40rpx 0;
|
padding: 40rpx 0;
|
||||||
|
@ -46,21 +42,16 @@
|
||||||
width: auto;
|
width: auto;
|
||||||
zoom:1
|
zoom:1
|
||||||
}
|
}
|
||||||
.in-add{
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
.in-add-click{
|
.in-add-click{
|
||||||
width: 200rpx;
|
width: 180rpx;
|
||||||
height: 200rpx;
|
height:180rpx;
|
||||||
border: 1px dashed #28345a;
|
border: 1px dashed #28345a;
|
||||||
border-radius: 10rpx;
|
border-radius: 10rpx;
|
||||||
background: #28345a url("http://fileimg.makalu.cc/WEB_162F576788AE44F08ADDFFC06CD5923F.png") no-repeat center/70%;
|
background: #28345a url("http://fileimg.makalu.cc/WEB_162F576788AE44F08ADDFFC06CD5923F.png") no-repeat center/70%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.in-img-div image{
|
.in-img-div image{
|
||||||
width: 200rpx;
|
width: 180rpx;
|
||||||
height: 200rpx;
|
height: 180rpx;
|
||||||
border-radius: 15rpx;
|
border-radius: 15rpx;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
|
@ -1,18 +0,0 @@
|
||||||
<!--components/fillings/index.wxml-->
|
|
||||||
<view class="filling_selector_max">
|
|
||||||
<!-- 上传图片 -->
|
|
||||||
<view class="in-img-max">
|
|
||||||
<view class="in-img-div" wx:for="{{uploaderList}}" wx:key="index" style="border: 1px solid green;">
|
|
||||||
<image bindtap='showImg' data-index="{{index}}" src='{{item}}' style="width:164px;height:107px;"></image>
|
|
||||||
<view class="in-delete" bindtap='clearImg' data-index="{{index}}">×</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="in-add" wx:if="{{scr != ''}}">
|
|
||||||
<view class="in-add-click" bindtap='upload' wx:if="{{showUpload}}" style="width:164px;height:107px;background:url({{scr}}) no-repeat center/100%;"></view>
|
|
||||||
</view>
|
|
||||||
<view class="in-add" wx:if="{{scr == ''}}">
|
|
||||||
<view class="in-add-click" bindtap='upload' wx:if="{{showUpload}}"></view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
</view>
|
|
||||||
</view>
|
|
|
@ -7,6 +7,9 @@ Component({
|
||||||
properties: {
|
properties: {
|
||||||
fileUrlArray:{
|
fileUrlArray:{
|
||||||
type:Array
|
type:Array
|
||||||
|
},
|
||||||
|
limit:{
|
||||||
|
type:Number
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -63,6 +66,9 @@ Component({
|
||||||
},
|
},
|
||||||
//上传图片
|
//上传图片
|
||||||
upload: function(e) {
|
upload: function(e) {
|
||||||
|
if(this.data.limit){
|
||||||
|
this.data.quantity=this.data.limit;
|
||||||
|
}
|
||||||
var that = this;
|
var that = this;
|
||||||
wx.chooseImage({
|
wx.chooseImage({
|
||||||
count: that.data.quantity - that.data.uploaderNum, // 默认9
|
count: that.data.quantity - that.data.uploaderNum, // 默认9
|
||||||
|
|
|
@ -22,10 +22,6 @@
|
||||||
.filling_selector_input input{
|
.filling_selector_input input{
|
||||||
padding: 15rpx 0;
|
padding: 15rpx 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* 上传图片 */
|
/* 上传图片 */
|
||||||
.in-modular-upload{
|
.in-modular-upload{
|
||||||
padding: 40rpx 0;
|
padding: 40rpx 0;
|
||||||
|
@ -56,8 +52,6 @@
|
||||||
border-radius: 10rpx;
|
border-radius: 10rpx;
|
||||||
background: #28345a url("http://fileimg.makalu.cc/WEB_162F576788AE44F08ADDFFC06CD5923F.png") no-repeat center/70%;
|
background: #28345a url("http://fileimg.makalu.cc/WEB_162F576788AE44F08ADDFFC06CD5923F.png") no-repeat center/70%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.in-img-div image{
|
.in-img-div image{
|
||||||
width: 180rpx;
|
width: 180rpx;
|
||||||
height: 180rpx;
|
height: 180rpx;
|
||||||
|
|
|
@ -194,10 +194,11 @@
|
||||||
}
|
}
|
||||||
.max_tab_name{
|
.max_tab_name{
|
||||||
padding: 0 40rpx;
|
padding: 0 40rpx;
|
||||||
font-size:28rpx;
|
font-size:30rpx;
|
||||||
height: 430rpx;
|
height: 460rpx;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
margin-top: 20rpx;
|
margin-top: 20rpx;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.font_color{
|
.font_color{
|
||||||
|
|
|
@ -8,10 +8,10 @@
|
||||||
<view class="login_dl">登录</view>
|
<view class="login_dl">登录</view>
|
||||||
<view class="login_ex">产发工程数字管理平台,请使用手机号登录</view>
|
<view class="login_ex">产发工程数字管理平台,请使用手机号登录</view>
|
||||||
<view class="login_input">
|
<view class="login_input">
|
||||||
<input placeholder="输入账户号码" placeholder-style="color:#5e6ea2" bindinput="name"/>
|
<input placeholder="输入账户号码" placeholder-style="color:#5e6ea2" bindblur="name"/>
|
||||||
</view>
|
</view>
|
||||||
<view class="login_input">
|
<view class="login_input">
|
||||||
<input placeholder="输入账户密码" placeholder-style="color:#5e6ea2" password="true" bindinput="psw"/>
|
<input placeholder="输入账户密码" placeholder-style="color:#5e6ea2" password="true" bindblur="psw"/>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -209,10 +209,11 @@
|
||||||
}
|
}
|
||||||
.max_tab_name{
|
.max_tab_name{
|
||||||
padding: 0 40rpx;
|
padding: 0 40rpx;
|
||||||
font-size:28rpx;
|
font-size:30rpx;
|
||||||
height: 430rpx;
|
height: 460rpx;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
margin-top: 20rpx;
|
margin-top: 20rpx;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.font_color{
|
.font_color{
|
||||||
|
|
|
@ -631,25 +631,25 @@ Page({
|
||||||
//跳转到安全管控
|
//跳转到安全管控
|
||||||
XMSP:function(){
|
XMSP:function(){
|
||||||
app.toast("敬请期待!");
|
app.toast("敬请期待!");
|
||||||
// wx.navigateTo({
|
wx.redirectTo({
|
||||||
// url:'../../pageage/project_problemmodify/security/list/index'
|
url:'../newAddPage/safetyManagement/index'
|
||||||
// })
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
//跳转到质量管理
|
//跳转到质量管理
|
||||||
ZLGL2:function(){
|
ZLGL2:function(){
|
||||||
app.toast("敬请期待!");
|
app.toast("敬请期待!");
|
||||||
//wx.navigateTo({
|
wx.redirectTo({
|
||||||
// url:'../../pageage/project_problemmodify/quality/list/index'
|
url:'../Quality-Assurance/index'
|
||||||
//})
|
})
|
||||||
},
|
},
|
||||||
//跳转到进度管理
|
//跳转到进度管理
|
||||||
JDGL2:function(){
|
JDGL2:function(){
|
||||||
app.toast("敬请期待!");
|
app.toast("敬请期待!");
|
||||||
// wx.redirectTo({
|
wx.redirectTo({
|
||||||
// //url: '../deepExcavation/index'
|
// //url: '../deepExcavation/index'
|
||||||
// url:'../../pageage/Progress-management/index'
|
url:'../../pageage/Progress-management/index'
|
||||||
// })
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
//跳转到更多功能
|
//跳转到更多功能
|
||||||
|
|
Loading…
Reference in New Issue