提交代码
parent
fc5b619e58
commit
06dff7bedb
|
@ -0,0 +1,55 @@
|
|||
import {
|
||||
request
|
||||
} from '../utils/request'
|
||||
|
||||
// 查询工程功能检验列表
|
||||
export function listProjectFunVerify(data,pageNum,pageSize) {
|
||||
return request({
|
||||
url: '/wechat/projectFunVerify/list?pageNum='+pageNum+'pageSize'+pageSize,
|
||||
method: 'get',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 统计工程功能检验
|
||||
export function findGroupCountByApprove(data) {
|
||||
return request({
|
||||
url: '/wechat/projectFunVerify/findGroupCountByApprove',
|
||||
method: 'get',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 查询工程功能检验详细
|
||||
export function getProjectFunVerify(id) {
|
||||
return request({
|
||||
url: '/wechat/projectFunVerify/info/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增工程功能检验
|
||||
export function addProjectFunVerify(data) {
|
||||
return request({
|
||||
url: '/wechat/projectFunVerify/add',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改工程功能检验
|
||||
export function updateProjectFunVerify(data) {
|
||||
return request({
|
||||
url: '/wechat/projectFunVerify/edit',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除工程功能检验
|
||||
export function delProjectFunVerify(id) {
|
||||
return request({
|
||||
url: '/wechat/projectFunVerify/remove/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
|
@ -64,4 +64,13 @@ export function getDictCache(type){
|
|||
url: '/wechat/publics/v1/getDictCache/'+type,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 获取审批流程信息
|
||||
export function selectProjectAuditinfoList(data){
|
||||
return request({
|
||||
url: '/wechat/projectAuditinfo/selectProjectAuditinfo',
|
||||
method: 'get',
|
||||
data:data
|
||||
})
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ App({
|
|||
reqUrl:'https://szgcwx.jhncidg.com',
|
||||
//reqUrl:'http://127.0.0.1:8091',
|
||||
uploadUrl:"https://szgcwx.jhncidg.com/wechat",
|
||||
//uploadUrl:'http://127.0.0.1:8082/wechat',
|
||||
//uploadUrl:'http://127.0.0.1:8091/wechat',
|
||||
|
||||
//御景路数字化集成管控平台接口访问域名
|
||||
szhUrl:'https://szh.makalu.cc',
|
||||
|
|
|
@ -31,7 +31,8 @@
|
|||
"pages/project_approve/approveCheckDetection/index",
|
||||
"pages/project_approve/approveChecking/index",
|
||||
"pages/project_approve/approveMaterialSeal/index",
|
||||
"pages/project_approve/approveMeasure/index"
|
||||
"pages/project_approve/approveMeasure/index",
|
||||
"pages/project_approve/approveFunVerify/index"
|
||||
],
|
||||
"subpackages": [
|
||||
{
|
||||
|
@ -68,6 +69,10 @@
|
|||
"project_checking/list/index",
|
||||
"project_checking/edit/index",
|
||||
"project_checking/info/index",
|
||||
"project_funVerify/add/index",
|
||||
"project_funVerify/list/index",
|
||||
"project_funVerify/edit/index",
|
||||
"project_funVerify/info/index",
|
||||
"project_problemmodify/security/list/index",
|
||||
"project_problemmodify/security/info/index",
|
||||
"project_problemmodify/security/modify/index",
|
||||
|
@ -148,7 +153,7 @@
|
|||
"voucher-date": "pages/components/voucher-date/index",
|
||||
"voucher-datetime": "pages/components/voucher-datetime/index",
|
||||
"file-uploader": "pages/components/file-uploader/index",
|
||||
"file-uploader-all":"pages/components/file-uploader-all/index",
|
||||
"file-uploader-all": "pages/components/file-uploader-all/index",
|
||||
"project-select": "pages/components/project-select/index",
|
||||
"safety-pie-chart": "./newComponents/safety-pie-chart/index",
|
||||
"safety-pie-charts": "./newComponents/safety-pie-charts/index",
|
||||
|
@ -163,7 +168,7 @@
|
|||
"van-dropdown-menu": "@vant/weapp/dropdown-menu/index",
|
||||
"van-dropdown-item": "@vant/weapp/dropdown-item/index",
|
||||
"curve-echarts": "pages/components/curve-echarts/index",
|
||||
"user-infos":"pages/components/user-infos/index"
|
||||
"user-infos": "pages/components/user-infos/index"
|
||||
},
|
||||
"window": {
|
||||
"backgroundTextStyle": "light",
|
||||
|
|
|
@ -0,0 +1,408 @@
|
|||
import {
|
||||
syncFileUpload
|
||||
} from '../../../utils/request'
|
||||
import {
|
||||
getDictCache
|
||||
} from '../../../api/publics'
|
||||
import {
|
||||
addProjectFunVerify
|
||||
} from '../../../api/projectFunVerify'
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
maxDate: new Date(2088, 1, 1).getTime(),
|
||||
minDate: new Date(2001, 1, 1).getTime(),
|
||||
deptId: "",
|
||||
projectId: "",
|
||||
projectName: "",
|
||||
loginName: "",
|
||||
userName: "",
|
||||
rectifierData: [],
|
||||
rectifierData2: [],
|
||||
imageInfoData: [],
|
||||
checkingResult: "1",
|
||||
//验收时间
|
||||
checkTime: '',
|
||||
qualityUser: "",
|
||||
qualityUserName: "",
|
||||
superviseUser: "",
|
||||
superviseUserName: "",
|
||||
checkName: "",
|
||||
intro: "",
|
||||
checkType: "1",
|
||||
dataTypeList: [],
|
||||
list: [{
|
||||
id: 1,
|
||||
text: "合格"
|
||||
}, {
|
||||
id: 2,
|
||||
text: "不合格"
|
||||
}],
|
||||
flowNodes: [{
|
||||
text: '开始'
|
||||
}, {
|
||||
text: '提交申请'
|
||||
}, {
|
||||
text: '监理审批'
|
||||
}, {
|
||||
text: '结束'
|
||||
}],
|
||||
limit: 999,
|
||||
active: 0,
|
||||
checkFiles: "",
|
||||
fileType: ["doc", "docx", "xls", "xlsx", "ppt", "pptx", "pdf", "png", "jpg", "jpeg"]
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
let {
|
||||
projectId,
|
||||
projectName
|
||||
} = options
|
||||
//获取缓存数据
|
||||
wx.getStorage({
|
||||
key: 'userinfo',
|
||||
success: res => {
|
||||
this.setData({
|
||||
projectId,
|
||||
projectName,
|
||||
deptId: res.data.deptId,
|
||||
loginName: res.data.loginName,
|
||||
userName: res.data.nickName
|
||||
})
|
||||
this.getProjectUserData();
|
||||
this.getDataTypeList();
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
//查询项目人员数据
|
||||
getProjectUserData() {
|
||||
let that = this
|
||||
wx.request({
|
||||
url: app.globalData.reqUrl + '/wechat/projectuserinfo/selectProjectUnitUser',
|
||||
method: "get",
|
||||
data: {
|
||||
unitType: "4",
|
||||
projectId: that.data.projectId
|
||||
},
|
||||
header: {
|
||||
'content-type': 'application/x-www-form-urlencoded'
|
||||
},
|
||||
success(res) {
|
||||
res = res.data
|
||||
if (res.code == 200) {
|
||||
that.setData({
|
||||
rectifierData: res.data,
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
wx.request({
|
||||
url: app.globalData.reqUrl + '/wechat/projectuserinfo/selectProjectUnitUser',
|
||||
method: "get",
|
||||
data: {
|
||||
unitType: "2",
|
||||
projectId: that.data.projectId
|
||||
},
|
||||
header: {
|
||||
'content-type': 'application/x-www-form-urlencoded'
|
||||
},
|
||||
success(res) {
|
||||
res = res.data
|
||||
if (res.code == 200) {
|
||||
that.setData({
|
||||
rectifierData2: res.data,
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
//查询验收类型数据
|
||||
getDataTypeList() {
|
||||
getDictCache('project_fun_verify_type').then(res => {
|
||||
if (res.code == 200) {
|
||||
let list = [];
|
||||
res.data.forEach(item =>{
|
||||
list.push({id:item.dictValue,text:item.dictLabel});
|
||||
});
|
||||
this.setData({
|
||||
dataTypeList: list
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
//切换验收结果
|
||||
onSelectType(e) {
|
||||
this.setData({
|
||||
checkingResult: e.detail.id
|
||||
})
|
||||
},
|
||||
|
||||
//验收类型
|
||||
onSelectType(e) {
|
||||
this.setData({
|
||||
checkType: e.detail.id
|
||||
})
|
||||
},
|
||||
|
||||
//工序部位
|
||||
onInputCheckName(e) {
|
||||
this.setData({
|
||||
checkName: e.detail.value
|
||||
})
|
||||
},
|
||||
//验收描述
|
||||
onInputIntroValue(e) {
|
||||
let intro = e.detail.value
|
||||
this.setData({
|
||||
intro
|
||||
})
|
||||
},
|
||||
|
||||
//验收时间
|
||||
onInputTime(e) {
|
||||
let checkTime = e.detail
|
||||
this.setData({
|
||||
checkTime
|
||||
})
|
||||
},
|
||||
|
||||
// list 上传图片
|
||||
onImagesArr(e) {
|
||||
var data = this.data.imageInfoData
|
||||
data = e.detail
|
||||
this.setData({
|
||||
imageInfoData: data
|
||||
})
|
||||
},
|
||||
|
||||
//添加质量专员
|
||||
onAddQualityUser(e) {
|
||||
if (e.detail.length > 0) {
|
||||
this.setData({
|
||||
qualityUser: e.detail[0].phoneNumber,
|
||||
qualityUserName: e.detail[0].userName
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
//添加监理专员
|
||||
onAddSuperviseUser(e) {
|
||||
if (e.detail.length > 0) {
|
||||
this.setData({
|
||||
superviseUser: e.detail[0].phoneNumber,
|
||||
superviseUserName: e.detail[0].userName
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
//取消页面
|
||||
cancelSaveView() {
|
||||
this.returnToPage()
|
||||
},
|
||||
|
||||
//保存
|
||||
onProblemSubmitSave() {
|
||||
let that = this
|
||||
let {
|
||||
projectId,
|
||||
deptId,
|
||||
qualityUser,
|
||||
qualityUserName,
|
||||
superviseUser,
|
||||
superviseUserName,
|
||||
checkName,
|
||||
intro,
|
||||
checkTime,
|
||||
checkingResult,
|
||||
imageInfoData,
|
||||
loginName,
|
||||
checkType,
|
||||
checkFiles
|
||||
} = that.data;
|
||||
//数据效验
|
||||
if (projectId == "" || deptId == "") {
|
||||
app.toast("数据异常,请刷新页面重试!")
|
||||
return;
|
||||
}
|
||||
if (imageInfoData.length == 0) {
|
||||
app.toast("请上传检验报告!")
|
||||
return;
|
||||
}
|
||||
if (checkType == "") {
|
||||
app.toast("请选择检验类型!")
|
||||
return;
|
||||
}
|
||||
if (qualityUser == "" || qualityUserName == "") {
|
||||
app.toast("请选择质量专员!")
|
||||
return;
|
||||
}
|
||||
if (superviseUser == "" || superviseUserName == "") {
|
||||
app.toast("请选择监理专员!")
|
||||
return;
|
||||
}
|
||||
if (checkName == "") {
|
||||
app.toast("请填写检验名称!")
|
||||
return;
|
||||
}
|
||||
if (checkTime == "") {
|
||||
app.toast("请选择检验时间!")
|
||||
return;
|
||||
}
|
||||
if (intro == "") {
|
||||
app.toast("请填写检验描述!")
|
||||
return;
|
||||
}
|
||||
// if(checkingResult==""){
|
||||
// app.toast("请选择验收结果!")
|
||||
// that.setData({
|
||||
// loadShow:false
|
||||
// })
|
||||
// return;
|
||||
// }
|
||||
if (checkFiles.length > 0) {
|
||||
for (let i = 0; i < checkFiles.length; i++) {
|
||||
let _fileType = checkFiles[i].path.split('.');
|
||||
_fileType = _fileType[_fileType.length - 1].toLowerCase();
|
||||
//判断附件类型,如果是图片直接展示,非图片则显示附件
|
||||
if (that.data.fileType.indexOf(_fileType) == -1) {
|
||||
app.toast("当前 [ " + _fileType + " ] 文件不支持上传!")
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
let _images = [];
|
||||
let _files = [];
|
||||
imageInfoData.forEach(item => {
|
||||
syncFileUpload(item).then(res => {
|
||||
_images.push(res.fileName);
|
||||
//验证图片上传完毕
|
||||
if (_images.length == imageInfoData.length) {
|
||||
let params = {
|
||||
projectId,
|
||||
deptId: deptId,
|
||||
qualityUser,
|
||||
qualityUserName,
|
||||
superviseUser,
|
||||
superviseUserName,
|
||||
checkType,
|
||||
checkName,
|
||||
checkDate: checkTime,
|
||||
intro,
|
||||
//checkResult:checkingResult,
|
||||
approveStatus: "1",
|
||||
createBy: loginName,
|
||||
imageUrls: _images.toString()
|
||||
}
|
||||
if (checkFiles.length > 0) {
|
||||
checkFiles.forEach(file => {
|
||||
syncFileUpload(file.path).then(res => {
|
||||
_files.push(res.fileName);
|
||||
if (checkFiles.length == _files.length) {
|
||||
params.checkFiles = _files.toString();
|
||||
that.submitForm(params);
|
||||
}
|
||||
});
|
||||
});
|
||||
} else {
|
||||
that.submitForm(params);
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 提交表单
|
||||
* @param {*} params
|
||||
*/
|
||||
submitForm(params) {
|
||||
addProjectFunVerify(params).then(res => {
|
||||
if (res.code == 200) {
|
||||
app.toast("新增工程功能检验成功!")
|
||||
setTimeout(() => {
|
||||
wx.redirectTo({
|
||||
url: '../list/index',
|
||||
})
|
||||
}, 300)
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 相关附件上传
|
||||
* @param {*} options
|
||||
*/
|
||||
otherFileUpload(options) {
|
||||
let file = options.detail;
|
||||
this.setData({
|
||||
checkFiles: file
|
||||
});
|
||||
},
|
||||
|
||||
returnToPage: function () {
|
||||
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||
wx.redirectTo({
|
||||
url: '../list/index',
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"usingComponents": {
|
||||
"van-steps": "@vant/weapp/steps/index",
|
||||
"van-overlay": "@vant/weapp/overlay/index"
|
||||
},
|
||||
"navigationStyle":"custom",
|
||||
"navigationBarTitleText": "新增工程功能检验"
|
||||
}
|
|
@ -0,0 +1,83 @@
|
|||
<wxs module="format" src="/utils/format.wxs"></wxs>
|
||||
<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">
|
||||
<van-steps steps="{{ flowNodes }}" active="{{ active }}" />
|
||||
<view class="inspect_info">
|
||||
<view class="module_title module_title_flex">
|
||||
<view>{{projectName}}</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">检验报告</view>
|
||||
<view class="inspect_info_content">
|
||||
<file-uploader bindimages="onImagesArr" limit="{{limit}}"></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">
|
||||
<voucher-select columns="{{dataTypeList}}" placeholder="请选择验收类型" bindchange="onSelectType"></voucher-select>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">检验名称</view>
|
||||
<view class="inspect_info_content">
|
||||
<input placeholder="请填写检验名称" placeholder-style="color:#6777aa;" class="inspect_input_fill_in" bindinput="onInputCheckName" maxlength="200" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">质量专员</view>
|
||||
<view class="inspect_info_content">
|
||||
<select-group-person rectifierData="{{rectifierData2}}" multiple="{{fales}}" bindselected="onAddQualityUser" data-index="1" choose="{{item.person_responsible}}" title="请选择质量专员">
|
||||
</select-group-person>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">监理专员</view>
|
||||
<view class="inspect_info_content">
|
||||
<select-group-person rectifierData="{{rectifierData}}" multiple="{{fales}}" bindselected="onAddSuperviseUser" data-index="2" choose="{{item.person_responsible}}" title="请选择监理专员">
|
||||
</select-group-person>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">检验时间</view>
|
||||
<view class="inspect_info_content">
|
||||
<voucher-date counts="5" placeholder="请选择检验时间" minDate="{{minDate}}" maxDate="{{maxDate}}" bindchange="onInputTime"></voucher-date>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">检验描述</view>
|
||||
<view class="inspect_info_content">
|
||||
<textarea class="add_textarea" placeholder="请填写检验描述" placeholder-style="color:#6777aa;" bindinput="onInputIntroValue" maxlength="200" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">相关附件 <text class="code_label_2" style="color: #CCC;">[非必填项]</text></view>
|
||||
<view class="inspect_info_content">
|
||||
<file-uploader-all bindfiles="otherFileUpload" limit="{{10}}"></file-uploader-all>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list" wx:if="{{false}}">
|
||||
<view class="inspect_info_title">验收结果</view>
|
||||
<view class="inspect_info_content">
|
||||
<voucher-select columns="{{list}}" placeholder="请选择验收结果" bindchange="onSelectType"></voucher-select>
|
||||
</view>
|
||||
</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>
|
|
@ -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;
|
||||
}
|
|
@ -0,0 +1,519 @@
|
|||
import {
|
||||
syncFileUpload
|
||||
} from '../../../utils/request'
|
||||
import {
|
||||
getDictCache,
|
||||
selectProjectAuditinfoList
|
||||
} from '../../../api/publics'
|
||||
import {
|
||||
getProjectFunVerify,
|
||||
updateProjectFunVerify
|
||||
} from '../../../api/projectFunVerify'
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
maxDate: new Date(2088, 1, 1).getTime(),
|
||||
deptId: "",
|
||||
projectId: "",
|
||||
projectName: "",
|
||||
loginName: "",
|
||||
userName: "",
|
||||
rectifierData: [],
|
||||
rectifierData2: [],
|
||||
imageInfoData: [],
|
||||
checkingResult: "1",
|
||||
//验收时间
|
||||
checkTime: '',
|
||||
qualityUser: "",
|
||||
qualityUserName: "",
|
||||
superviseUser: "",
|
||||
superviseUserName: "",
|
||||
checkName: "",
|
||||
intro: "",
|
||||
infoData: {},
|
||||
activeName: "",
|
||||
flowRecordList: [],
|
||||
minUrls: [],
|
||||
checkType: "",
|
||||
dataTypeList: [],
|
||||
list: [{
|
||||
id: 1,
|
||||
text: "合格"
|
||||
}, {
|
||||
id: 2,
|
||||
text: "不合格"
|
||||
}],
|
||||
request: app.globalData.reqUrl,
|
||||
flowNodes: [{
|
||||
text: '开始'
|
||||
}, {
|
||||
text: '提交申请'
|
||||
}, {
|
||||
text: '监理审批'
|
||||
}, {
|
||||
text: '结束'
|
||||
}],
|
||||
limit: 999,
|
||||
active: 1,
|
||||
checkFiles: "",
|
||||
fileType: ["doc", "docx", "xls", "xlsx", "ppt", "pptx", "pdf", "png", "jpg", "jpeg"],
|
||||
fileUrlArray: []
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
let {
|
||||
id
|
||||
} = options
|
||||
//获取缓存数据
|
||||
wx.getStorage({
|
||||
key: 'userinfo',
|
||||
success: res => {
|
||||
this.setData({
|
||||
id,
|
||||
projectId: app.globalData.projectId,
|
||||
projectName: app.globalData.projectName,
|
||||
deptId: res.data.deptId,
|
||||
loginName: res.data.loginName,
|
||||
userName: res.data.nickName
|
||||
})
|
||||
this.getProjectUserData();
|
||||
this.getDataTypeList();
|
||||
this.getInfo();
|
||||
this.getAuditinfo();
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
//查询项目人员数据
|
||||
getProjectUserData() {
|
||||
let that = this
|
||||
wx.request({
|
||||
url: app.globalData.reqUrl + '/wechat/projectuserinfo/selectProjectUnitUser',
|
||||
method: "get",
|
||||
data: {
|
||||
unitType: "4",
|
||||
projectId: that.data.projectId
|
||||
},
|
||||
header: {
|
||||
'content-type': 'application/x-www-form-urlencoded'
|
||||
},
|
||||
success(res) {
|
||||
res = res.data
|
||||
if (res.code == 200) {
|
||||
let tempData = []
|
||||
that.setData({
|
||||
rectifierData: res.data,
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
wx.request({
|
||||
url: app.globalData.reqUrl + '/wechat/projectuserinfo/selectProjectUnitUser',
|
||||
method: "get",
|
||||
data: {
|
||||
unitType: "2",
|
||||
projectId: that.data.projectId
|
||||
},
|
||||
header: {
|
||||
'content-type': 'application/x-www-form-urlencoded'
|
||||
},
|
||||
success(res) {
|
||||
res = res.data
|
||||
if (res.code == 200) {
|
||||
let tempData = []
|
||||
that.setData({
|
||||
rectifierData2: res.data,
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
//查询验收类型数据
|
||||
getDataTypeList() {
|
||||
getDictCache('project_fun_verify_type').then(res => {
|
||||
if (res.code == 200) {
|
||||
let list = [];
|
||||
res.data.forEach(item =>{
|
||||
list.push({id:item.dictValue,text:item.dictLabel});
|
||||
});
|
||||
this.setData({
|
||||
dataTypeList: list
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
//切换验收结果
|
||||
onSelectType(e) {
|
||||
this.setData({
|
||||
checkingResult: e.detail.id
|
||||
})
|
||||
},
|
||||
|
||||
//验收类型
|
||||
onSelectType(e) {
|
||||
this.setData({
|
||||
checkType: e.detail.id
|
||||
})
|
||||
},
|
||||
|
||||
//工序部位
|
||||
onInputCheckNameValue(e) {
|
||||
this.setData({
|
||||
checkName:e.detail.value
|
||||
})
|
||||
},
|
||||
|
||||
//验收描述
|
||||
onInputIntroValue(e) {
|
||||
let intro = e.detail.value
|
||||
this.setData({
|
||||
intro
|
||||
})
|
||||
},
|
||||
|
||||
//验收时间
|
||||
onInputTime(e) {
|
||||
let checkTime = e.detail
|
||||
this.setData({
|
||||
checkTime
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取安全检查详情信息
|
||||
*
|
||||
*/
|
||||
getInfo() {
|
||||
getProjectFunVerify(this.data.id).then(res =>{
|
||||
if(res.code==200){
|
||||
let imageInfoData = [];
|
||||
if (res.data.imageUrls) {
|
||||
res.data.imageUrls.split(',').forEach(element => {
|
||||
imageInfoData.push(this.data.request + element + '.min.jpg');
|
||||
});
|
||||
}
|
||||
let checkFiles = [];
|
||||
if (res.data.checkFiles) {
|
||||
res.data.checkFiles.split(",").forEach(item => {
|
||||
let it = item.split('/');
|
||||
checkFiles.push({
|
||||
'name': it[it.length - 1],
|
||||
path: item
|
||||
});
|
||||
});
|
||||
}
|
||||
this.setData({
|
||||
infoData: res.data,
|
||||
fileUrlArray: checkFiles,
|
||||
checkType: res.data.checkType,
|
||||
qualityUser: res.data.qualityUser,
|
||||
qualityUserName: res.data.qualityUserName,
|
||||
superviseUser: res.data.superviseUser,
|
||||
superviseUserName: res.data.superviseUserName,
|
||||
checkName: res.data.checkName,
|
||||
intro: res.data.intro,
|
||||
checkTime: res.data.checkDate,
|
||||
imageInfoData
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 查询流程日志
|
||||
*/
|
||||
getAuditinfo() {
|
||||
let param = {
|
||||
fromType: "5",
|
||||
fromId: this.data.id
|
||||
}
|
||||
selectProjectAuditinfoList(param).then(res =>{
|
||||
if (res.code == 200) {
|
||||
this.setData({
|
||||
flowRecordList: res.data
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 手风琴
|
||||
onChange(event) {
|
||||
this.setData({
|
||||
activeName: event.detail,
|
||||
});
|
||||
},
|
||||
|
||||
// list 上传图片
|
||||
onImagesArr(e) {
|
||||
var data = this.data.imageInfoData
|
||||
data = e.detail
|
||||
this.setData({
|
||||
imageInfoData: data
|
||||
})
|
||||
},
|
||||
|
||||
//添加质量专员
|
||||
onAddQualityUser(e) {
|
||||
if (e.detail.length > 0) {
|
||||
this.setData({
|
||||
qualityUser: e.detail[0].phoneNumber,
|
||||
qualityUserName: e.detail[0].userName
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
//添加监理专员
|
||||
onAddSuperviseUser(e) {
|
||||
if (e.detail.length > 0) {
|
||||
this.setData({
|
||||
superviseUser: e.detail[0].phoneNumber,
|
||||
superviseUserName: e.detail[0].userName
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
//取消页面
|
||||
cancelSaveView() {
|
||||
this.returnToPage()
|
||||
},
|
||||
|
||||
//保存
|
||||
onProblemSubmitSave() {
|
||||
let that = this
|
||||
let {
|
||||
id,
|
||||
qualityUser,
|
||||
qualityUserName,
|
||||
superviseUser,
|
||||
superviseUserName,
|
||||
checkName,
|
||||
intro,
|
||||
checkTime,
|
||||
imageInfoData,
|
||||
loginName,
|
||||
checkType,
|
||||
checkFiles
|
||||
} = that.data;
|
||||
//数据效验
|
||||
if (id == "") {
|
||||
app.toast("数据异常,请刷新页面重试!")
|
||||
return;
|
||||
}
|
||||
if (imageInfoData.length == 0) {
|
||||
app.toast("请上传检验报告!")
|
||||
return;
|
||||
}
|
||||
if (checkType == "") {
|
||||
app.toast("请选择检验类型!")
|
||||
return;
|
||||
}
|
||||
if (qualityUser == "" || qualityUserName == "") {
|
||||
app.toast("请选择质量专员!")
|
||||
return;
|
||||
}
|
||||
if (superviseUser == "" || superviseUserName == "") {
|
||||
app.toast("请选择监理专员!")
|
||||
return;
|
||||
}
|
||||
if (checkName == "") {
|
||||
app.toast("请填写检验名称!")
|
||||
return;
|
||||
}
|
||||
if (checkTime == "") {
|
||||
app.toast("请选择验收时间!")
|
||||
return;
|
||||
}
|
||||
if (intro == "") {
|
||||
app.toast("请填写检验描述!")
|
||||
return;
|
||||
}
|
||||
if (checkFiles.length > 0) {
|
||||
for (let i = 0; i < checkFiles.length; i++) {
|
||||
let _fileType = checkFiles[i].path.split('.');
|
||||
_fileType = _fileType[_fileType.length - 1].toLowerCase();
|
||||
//判断附件类型,如果是图片直接展示,非图片则显示附件
|
||||
if (that.data.fileType.indexOf(_fileType) == -1) {
|
||||
app.toast("当前 [ " + _fileType + " ] 文件不支持上传!")
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
let _images = [];
|
||||
let _checkFiles = [];
|
||||
imageInfoData.forEach(async (item) => {
|
||||
let uploadUrl = app.globalData.uploadUrl + '/common/upload'
|
||||
let name = "file"
|
||||
//这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片
|
||||
if (item.indexOf(that.data.request) > -1) {
|
||||
_images.push(item.replace(that.data.request, "").replace(".min.jpg", ""));
|
||||
} else {
|
||||
let obj = await that.syncUploadImage(uploadUrl, item, name);
|
||||
_images.push(obj.data.fileName);
|
||||
}
|
||||
//验证图片上传完毕
|
||||
if (_images.length == imageInfoData.length) {
|
||||
let params = {
|
||||
id,
|
||||
qualityUser,
|
||||
qualityUserName,
|
||||
superviseUser,
|
||||
superviseUserName,
|
||||
checkType,
|
||||
checkName,
|
||||
checkDate: checkTime,
|
||||
intro,
|
||||
//checkResult:checkingResult,
|
||||
approveStatus: "1",
|
||||
createBy: loginName,
|
||||
imageUrls: _images.toString()
|
||||
}
|
||||
if (checkFiles.length > 0) {
|
||||
checkFiles.forEach(async (file) => {
|
||||
if (file.path.indexOf('/profile/') > -1) {
|
||||
_checkFiles.push(file.path);
|
||||
} else {
|
||||
let obj = await that.syncUploadImage(uploadUrl, file.path, name);
|
||||
_checkFiles.push(obj.data.fileName);
|
||||
}
|
||||
if (checkFiles.length == _checkFiles.length) {
|
||||
params.checkFiles = _checkFiles.toString();
|
||||
this.submitForm(params);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
this.submitForm(params);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 提交表单
|
||||
* @param {*} params
|
||||
*/
|
||||
submitForm(data){
|
||||
updateProjectFunVerify(data).then(res =>{
|
||||
if (res.code == 200) {
|
||||
app.toast("修改成功!")
|
||||
setTimeout(() => {
|
||||
wx.redirectTo({
|
||||
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)
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
|
||||
returnToPage: function () {
|
||||
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||
wx.redirectTo({
|
||||
url: '../list/index',
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 相关附件上传
|
||||
* @param {*} options
|
||||
*/
|
||||
otherFileUpload(options) {
|
||||
let file = options.detail;
|
||||
this.setData({
|
||||
checkFiles: file
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"usingComponents": {
|
||||
"van-overlay": "@vant/weapp/overlay/index",
|
||||
"van-collapse": "@vant/weapp/collapse",
|
||||
"van-steps": "@vant/weapp/steps/index",
|
||||
"van-collapse-item": "@vant/weapp/collapse-item"
|
||||
},
|
||||
"navigationStyle":"custom",
|
||||
"navigationBarTitleText": "修改工程功能检验"
|
||||
}
|
|
@ -0,0 +1,114 @@
|
|||
<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">
|
||||
<van-steps steps="{{ flowNodes }}" active="{{ active }}" rejectNode="{{ active<100 && infoData.approveStatus=='3' ? active+1:0 }}" />
|
||||
<view class="inspect_info">
|
||||
<view class="module_title module_title_flex">
|
||||
<view>{{projectName}}</view>
|
||||
</view>
|
||||
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
|
||||
<van-collapse value="{{activeName}}" bind:change="onChange">
|
||||
<van-collapse-item title="审批日志" name="2">
|
||||
<view class="inspect_list">
|
||||
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
|
||||
<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">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
|
||||
<view class="module_title module_title_flex inspect_list_title_text">
|
||||
<text wx:if="{{item.approveStatus==1}}">提交工程功能检验</text>
|
||||
<text wx:if="{{item.approveStatus!=1}}">审批工程功能检验</text>
|
||||
{{item.commentResult}}
|
||||
<text wx:if="{{item.commentResult==4}}" class="timeline_for_state_1 color_green">合格</text>
|
||||
<text wx:if="{{item.commentResult==3}}" class="timeline_for_state_2 color_purple">不合格</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_list_info gk_open_con">
|
||||
<view wx:if="{{item.userName}}">
|
||||
<image src="/images/lw_3.png"></image>办理用户:<text>{{item.userName}}</text>
|
||||
</view>
|
||||
<view wx:if="{{item.deptName}}">
|
||||
<image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text>
|
||||
</view>
|
||||
<view>
|
||||
<image src="/images/s_6.png"></image>办理时间:<text>{{item.createTime}}</text>
|
||||
</view>
|
||||
<view wx:if="{{item.comment}}">
|
||||
<image src="/images/s_7.png"></image>审批意见:<text>{{item.comment}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-collapse-item>
|
||||
</van-collapse>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">检验报告</view>
|
||||
<view class="inspect_info_content">
|
||||
<file-uploader bindimages="onImagesArr" fileUrlArray="{{imageInfoData}}" limit="{{limit}}"></file-uploader>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">检验类型</view>
|
||||
<view class="inspect_info_content">
|
||||
<voucher-select columns="{{dataTypeList}}" placeholder="请选择检验类型" bindchange="onSelectType" selectValue="{{infoData.checkType}}"></voucher-select>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">检验名称</view>
|
||||
<view class="inspect_info_content">
|
||||
<input placeholder="请填写检验名称" placeholder-style="color:#6777aa;" model:value="{{infoData.checkName}}" class="inspect_input_fill_in" bindinput="onInputCheckNameValue" maxlength="200" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">质量专员</view>
|
||||
<view class="inspect_info_content">
|
||||
<select-group-person rectifierData="{{rectifierData2}}" multiple="{{fales}}" bindselected="onAddQualityUser" data-index="1" choose="{{qualityUserName}}" title="请选择质量专员">
|
||||
</select-group-person>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">监理专员</view>
|
||||
<view class="inspect_info_content">
|
||||
<select-group-person rectifierData="{{rectifierData}}" multiple="{{fales}}" bindselected="onAddSuperviseUser" data-index="2" choose="{{superviseUserName}}" title="请选择监理专员">
|
||||
</select-group-person>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">检验时间</view>
|
||||
<view class="inspect_info_content">
|
||||
<voucher-date counts="5" placeholder="请选择检验时间" maxDate="{{maxDate}}" bindchange="onInputTime" time="{{infoData.checkDate}}"></voucher-date>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">检验描述</view>
|
||||
<view class="inspect_info_content">
|
||||
<textarea class="add_textarea" placeholder="请填写检验描述" model:value="{{infoData.intro}}" placeholder-style="color:#6777aa;" bindinput="onInputIntroValue" maxlength="200" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">相关附件 <text class="code_label_2" style="color: #CCC;">[非必填项]</text></view>
|
||||
<view class="inspect_info_content">
|
||||
<file-uploader-all bindfiles="otherFileUpload" limit="{{10}}" fileUrlArray="{{fileUrlArray}}"></file-uploader-all>
|
||||
</view>
|
||||
</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>
|
|
@ -0,0 +1,61 @@
|
|||
/* 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;
|
||||
}
|
||||
.van-collapse.van-hairline--top-bottom:after{
|
||||
border-width: 0px 0;
|
||||
}
|
||||
.van-cell.van-cell--borderless{
|
||||
background-color: #2b345b;
|
||||
color: #fff;
|
||||
margin-top: 30rpx;
|
||||
border-radius: 5rpx;
|
||||
}
|
||||
.van-cell.van-cell--borderless:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item__title.van-collapse-item__title--expanded:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item .van-cell:after{
|
||||
border-bottom: 0;
|
||||
}
|
||||
.van-collapse-item.van-hairline--top:after{
|
||||
border-top-width:0
|
||||
}
|
||||
.van-cell.van-cell--clickable{
|
||||
background-color: #2b345b;
|
||||
margin-top: 5rpx;
|
||||
margin-bottom: 5rpx;
|
||||
color: #fff;
|
||||
border-radius: 15rpx;
|
||||
|
||||
}
|
||||
.van-cell.van-cell--clickable:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item__wrapper .van-collapse-item__content{
|
||||
background-color: #1e2336;
|
||||
color:#8ca4ec ;
|
||||
border-width: 0px 0;
|
||||
}
|
||||
.gk_open_con view{
|
||||
padding: 10rpx 0;
|
||||
width: 100%;
|
||||
}
|
||||
.gk_open_con image{
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
margin-right: 5rpx;
|
||||
position: relative;
|
||||
top: 5rpx;
|
||||
}
|
|
@ -0,0 +1,253 @@
|
|||
import {
|
||||
selectProjectAuditinfoList
|
||||
} from '../../../api/publics'
|
||||
import {
|
||||
getProjectFunVerify,
|
||||
delProjectFunVerify
|
||||
} from '../../../api/projectFunVerify'
|
||||
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
id: "",
|
||||
infoData: {},
|
||||
imageList: [],
|
||||
minImageList: [],
|
||||
loginName: "",
|
||||
showDel: true,
|
||||
activeName: "",
|
||||
flowRecordList: [],
|
||||
request: app.globalData.reqUrl,
|
||||
flowNodes: [{
|
||||
text: '开始'
|
||||
}, {
|
||||
text: '提交申请'
|
||||
}, {
|
||||
text: '监理审批'
|
||||
}, {
|
||||
text: '结束'
|
||||
}],
|
||||
active: 100,
|
||||
checkFiles:[]
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
let {
|
||||
id
|
||||
} = options
|
||||
//获取缓存数据
|
||||
wx.getStorage({
|
||||
key: 'userinfo',
|
||||
success: res => {
|
||||
this.setData({
|
||||
id,
|
||||
loginName: res.data.loginName
|
||||
})
|
||||
this.getInfo();
|
||||
this.getAuditinfo();
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取安全检查详情信息
|
||||
*
|
||||
*/
|
||||
getInfo() {
|
||||
getProjectFunVerify(this.data.id).then(res =>{
|
||||
if(res.code==200){
|
||||
let state = this.data.active;
|
||||
if (res.data.approveStatus == "1") {
|
||||
state = 2;
|
||||
} else if (res.data.approveStatus == "3") {
|
||||
state = 1;
|
||||
}
|
||||
this.setData({
|
||||
active: state
|
||||
})
|
||||
let urls = [];
|
||||
let minUrls = [];
|
||||
let checkFiles = [];
|
||||
if (res.data.imageUrls) {
|
||||
res.data.imageUrls.split(',').forEach(element => {
|
||||
urls.push(this.data.request + element);
|
||||
minUrls.push(this.data.request + element + '.min.jpg');
|
||||
});
|
||||
}
|
||||
if(res.data.checkFiles){
|
||||
res.data.checkFiles.split(",").forEach(item =>{
|
||||
let it = item.split('/');
|
||||
checkFiles.push({'name':it[it.length-1],path:item});
|
||||
});
|
||||
}
|
||||
this.setData({
|
||||
infoData: res.data,
|
||||
imageList: urls,
|
||||
minImageList: minUrls,
|
||||
checkFiles,
|
||||
})
|
||||
//判断当前能否删除
|
||||
if (res.data.createBy == this.data.loginName && res.data.approveStatus != "4") {
|
||||
this.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() {
|
||||
delProjectFunVerify(this.data.id).then(res =>{
|
||||
app.toast("删除成功!")
|
||||
wx.navigateTo({
|
||||
url: `../list/index`,
|
||||
})
|
||||
});
|
||||
},
|
||||
|
||||
//跳转修改页面
|
||||
onUpdate: function () {
|
||||
let id = this.data.id;
|
||||
wx.redirectTo({
|
||||
url: `../edit/index?id=${id}`,
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 查询流程日志
|
||||
*/
|
||||
getAuditinfo() {
|
||||
let params = {
|
||||
fromType: "5",
|
||||
fromId: this.data.id
|
||||
}
|
||||
selectProjectAuditinfoList(params).then(res =>{
|
||||
if (res.code == 200) {
|
||||
this.setData({
|
||||
flowRecordList: res.data
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 手风琴
|
||||
onChange(event) {
|
||||
this.setData({
|
||||
activeName: event.detail,
|
||||
});
|
||||
},
|
||||
|
||||
//展示图片
|
||||
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',
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 下载附件
|
||||
* @param {*} e
|
||||
*/
|
||||
downFile: function (e) {
|
||||
let {
|
||||
path,
|
||||
} = e.currentTarget.dataset.set
|
||||
wx.downloadFile({
|
||||
url: app.globalData.uploadUrl + '/common/download/resource?resource=' + path,
|
||||
success: function (res) {
|
||||
const filePath = res.tempFilePath
|
||||
wx.openDocument({
|
||||
filePath: filePath,
|
||||
success: function (res) {
|
||||
console.log('打开文档成功')
|
||||
},
|
||||
fail: function (res) {
|
||||
console.log(res)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"usingComponents": {
|
||||
"van-popup": "@vant/weapp/popup/index",
|
||||
"van-collapse": "@vant/weapp/collapse",
|
||||
"van-steps": "@vant/weapp/steps/index",
|
||||
"van-collapse-item": "@vant/weapp/collapse-item"
|
||||
},
|
||||
"navigationStyle":"custom",
|
||||
"navigationBarTitleText": "工程功能检验详情"
|
||||
}
|
|
@ -0,0 +1,152 @@
|
|||
<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">
|
||||
<van-steps steps="{{ flowNodes }}" active="{{ active }}" rejectNode="{{ active<100 && infoData.approveStatus=='3' ? active+1:0 }}" />
|
||||
<view class="inspect_overview_max">
|
||||
<view class="inspect_overview">
|
||||
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
|
||||
<van-collapse value="{{activeName}}" bind:change="onChange">
|
||||
<van-collapse-item title="审批日志" name="2">
|
||||
<view class="inspect_list">
|
||||
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
|
||||
<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">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
|
||||
<view class="module_title module_title_flex inspect_list_title_text">
|
||||
<text wx:if="{{item.approveStatus==1}}">提交工程功能检验</text>
|
||||
<text wx:if="{{item.approveStatus!=1}}">审批工程功能检验</text>
|
||||
<text wx:if="{{item.approveStatus==4}}" class="timeline_for_state_1 color_green">合格</text>
|
||||
<text wx:if="{{item.approveStatus==3}}" class="timeline_for_state_2 color_purple">不合格</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_list_info gk_open_con">
|
||||
<view wx:if="{{item.userName}}">
|
||||
<image src="/images/lw_3.png"></image>办理用户:<text>{{item.userName}}</text>
|
||||
</view>
|
||||
<view wx:if="{{item.deptName}}">
|
||||
<image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text>
|
||||
</view>
|
||||
<view>
|
||||
<image src="/images/s_6.png"></image>办理时间:<text>{{item.createTime}}</text>
|
||||
</view>
|
||||
<view wx:if="{{item.comment}}">
|
||||
<image src="/images/s_7.png"></image>审批意见:<text>{{item.comment}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-collapse-item>
|
||||
</van-collapse>
|
||||
</view>
|
||||
<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>
|
||||
<van-col span="18">{{infoData.deptName}}</van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
<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_purple">检验类型</text></van-col>
|
||||
<van-col span="18" class="color_blue">{{infoData.checkTypeName}}</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.checkName}}</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.qualityUserName}} {{infoData.qualityUser}}</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.superviseUserName}} {{infoData.superviseUser}}</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.checkDate}}</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.intro}}</van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
<view class="inspect_overview_list" wx:if="{{checkFiles.length>0}}">
|
||||
<van-row>
|
||||
<van-col span="6"><text class="color_purple">相关附件</text></van-col>
|
||||
<van-col span="18"></van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
<view class="inspect_overview_list" wx:if="{{checkFiles.length>0}}">
|
||||
<view class="files_parent" wx:for="{{checkFiles}}" wx:key="index" bindtap="downFile" data-set="{{item}}">
|
||||
<text class="color_blue files">{{item.name}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_overview_list" wx:if="{{infoData.approveStatus!=null}}">
|
||||
<van-row>
|
||||
<van-col span="6"><text class="color_purple">验收结果</text></van-col>
|
||||
<van-col span="18">
|
||||
<text wx:if="{{infoData.approveStatus==1}}" class="code_label_2 code_label_blueviolet" style="padding: 10rpx 40rpx;font-size: 25rpx;">待审批</text>
|
||||
<text wx:if="{{infoData.approveStatus==4}}" class="code_label_2 code_label_green" style="padding: 10rpx 40rpx;font-size: 25rpx;">合格</text>
|
||||
<text wx:if="{{infoData.approveStatus==3}}" class="code_label_2 code_label_red" style="padding: 10rpx 40rpx;font-size: 25rpx;">不合格</text>
|
||||
</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 class="inspect_overview_list">
|
||||
<van-row>
|
||||
<van-col span="6"><text class="color_purple">提交用户</text></van-col>
|
||||
<van-col span="18">{{infoData.createBy}}</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 class="problem_submit_to_btn problem_submit_to_save" bindtap="onUpdate">修改</view>
|
||||
</view>
|
||||
</view>
|
|
@ -0,0 +1,71 @@
|
|||
/* 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;
|
||||
}
|
||||
.van-collapse.van-hairline--top-bottom:after{
|
||||
border-width: 0px 0;
|
||||
}
|
||||
.van-cell.van-cell--borderless{
|
||||
background-color: #2b345b;
|
||||
color: #fff;
|
||||
margin-top: 30rpx;
|
||||
border-radius: 5rpx;
|
||||
}
|
||||
.van-cell.van-cell--borderless:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item__title.van-collapse-item__title--expanded:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item .van-cell:after{
|
||||
border-bottom: 0;
|
||||
}
|
||||
.van-collapse-item.van-hairline--top:after{
|
||||
border-top-width:0
|
||||
}
|
||||
.van-cell.van-cell--clickable{
|
||||
background-color: #2b345b;
|
||||
margin-top: 5rpx;
|
||||
margin-bottom: 5rpx;
|
||||
color: #fff;
|
||||
border-radius: 15rpx;
|
||||
|
||||
}
|
||||
.van-cell.van-cell--clickable:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item__wrapper .van-collapse-item__content{
|
||||
background-color: #1e2336;
|
||||
color:#8ca4ec ;
|
||||
border-width: 0px 0;
|
||||
}
|
||||
.gk_open_con view{
|
||||
padding: 10rpx 0;
|
||||
width: 100%;
|
||||
}
|
||||
.gk_open_con image{
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
margin-right: 5rpx;
|
||||
position: relative;
|
||||
top: 5rpx;
|
||||
}
|
|
@ -0,0 +1,330 @@
|
|||
import {
|
||||
getToken
|
||||
} from '../../../utils/auth'
|
||||
import {
|
||||
listProjectFunVerify,
|
||||
findGroupCountByApprove
|
||||
} from '../../../api/projectFunVerify'
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
deptId: "",
|
||||
loginName: "",
|
||||
userName: "",
|
||||
minRoleId: "",
|
||||
projectId: "",
|
||||
projectData: {},
|
||||
projectNameArgs: "",
|
||||
initData: {},
|
||||
show: false,
|
||||
listData: [],
|
||||
jxzCount: 0,
|
||||
ywcCount: 0,
|
||||
activeState: "jxz",
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
lastDataSize: 10,
|
||||
list: [],
|
||||
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}&projectName=` + this.data.initData.text,
|
||||
})
|
||||
},
|
||||
|
||||
getInfo(e) {
|
||||
let {
|
||||
id,
|
||||
approveStatus,
|
||||
superviseUser
|
||||
} = e.currentTarget.dataset.set
|
||||
if (approveStatus == "1" && superviseUser == this.data.loginName) {
|
||||
wx.redirectTo({
|
||||
url: `../../../pages/project_approve/approveFunVerify/index?id=${id}`
|
||||
})
|
||||
} else {
|
||||
wx.redirectTo({
|
||||
url: `../info/index?id=${id}`
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
if(!getToken()){
|
||||
wx.redirectTo({
|
||||
url: '../../../pages/login/index',
|
||||
})
|
||||
}
|
||||
if (options && options.barProId) {
|
||||
//数据未加载完毕,从文件读取数据
|
||||
if (app.globalData.projectInfoList.length == 0) {
|
||||
wx.getStorage({
|
||||
key: 'projectInfoList',
|
||||
success: res => {
|
||||
app.globalData.projectInfoList = res.data;
|
||||
app.globalData.projectInfoList.forEach(item => {
|
||||
if (item.projectId == options.barProId) {
|
||||
app.globalData.projectId = item.projectId;
|
||||
app.globalData.projectName = item.projectName;
|
||||
}
|
||||
});
|
||||
//未查询到项目信息
|
||||
if (!app.globalData.projectId) {
|
||||
app.globalData.projectInfoList.push({
|
||||
projectId: options.barProId,
|
||||
projectId: options.barProName
|
||||
});
|
||||
app.globalData.projectId = options.barProId;
|
||||
app.globalData.projectName = options.barProName;
|
||||
}
|
||||
//从缓存读取项目信息
|
||||
this.setData({
|
||||
initData: {
|
||||
text: app.globalData.projectName,
|
||||
id: app.globalData.projectId
|
||||
}
|
||||
})
|
||||
let myProjects = this.selectComponent("#projectSel");
|
||||
myProjects.load();
|
||||
},
|
||||
fail: err => {
|
||||
//未获取用户信息时,重新登录
|
||||
wx.redirectTo({
|
||||
url: '../pages/login/index',
|
||||
})
|
||||
}
|
||||
})
|
||||
} else {
|
||||
app.globalData.projectInfoList.forEach(item => {
|
||||
if (item.projectId == options.barProId) {
|
||||
app.globalData.projectId = item.projectId;
|
||||
app.globalData.projectName = item.projectName;
|
||||
}
|
||||
});
|
||||
//未查询到项目信息
|
||||
if (!app.globalData.projectId) {
|
||||
app.globalData.projectInfoList.push({
|
||||
projectId: options.barProId,
|
||||
projectId: options.barProName
|
||||
});
|
||||
app.globalData.projectId = options.barProId;
|
||||
app.globalData.projectName = options.barProName;
|
||||
}
|
||||
//从缓存读取项目信息
|
||||
this.setData({
|
||||
initData: {
|
||||
text: app.globalData.projectName,
|
||||
id: app.globalData.projectId
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
//从缓存读取项目信息
|
||||
this.setData({
|
||||
initData: {
|
||||
text: app.globalData.projectName,
|
||||
id: app.globalData.projectId
|
||||
}
|
||||
})
|
||||
}
|
||||
//获取缓存数据
|
||||
wx.getStorage({
|
||||
key: 'userinfo',
|
||||
success: res => {
|
||||
this.setData({
|
||||
deptId: res.data.deptId,
|
||||
loginName: res.data.loginName,
|
||||
userName: res.data.userName,
|
||||
minRoleId: res.data.minRoleId,
|
||||
projectId: app.globalData.projectId,
|
||||
projectNameArgs: app.globalData.projectName,
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
lastDataSize: 10,
|
||||
listData: []
|
||||
})
|
||||
this.getProjectFunVerifyData();
|
||||
},
|
||||
fail: err => {
|
||||
//未获取用户信息时,重新登录
|
||||
wx.redirectTo({
|
||||
url: '../pages/login/index',
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 查询项目举牌验收数据
|
||||
*/
|
||||
getProjectFunVerifyData() {
|
||||
//进入这里说明数据加载完毕
|
||||
if (this.data.lastDataSize < this.data.pageSize) {
|
||||
//app.toast("已经到底了,暂无可继续加载数据!")
|
||||
return;
|
||||
}
|
||||
var that = this;
|
||||
//判断角色,
|
||||
let mr = this.data.minRoleId;
|
||||
let deptId = this.data.deptId;
|
||||
if (mr == 2 || mr == 3 || mr == 4) {
|
||||
deptId = 0;
|
||||
}
|
||||
let param = {
|
||||
"projectId": this.data.projectId,
|
||||
"deptId": deptId,
|
||||
"nowUserName": this.data.loginName,
|
||||
"activeName": this.data.activeState
|
||||
}
|
||||
this.queryCount(param);
|
||||
listProjectFunVerify(param,that.data.pageNum,that.data.pageSize).then(res =>{
|
||||
if (res.code == "200") {
|
||||
//这里处理this.data.lastDataSize=this.data.pageSize
|
||||
if (that.data.list.length > 0 && res.rows.length > 0 && that.data.list[0].id == res.rows[0].id) {
|
||||
that.setData({
|
||||
lastDataSize: 0,
|
||||
})
|
||||
} else {
|
||||
that.setData({
|
||||
pageNum: that.data.pageNum + 1,
|
||||
lastDataSize: res.rows.length,
|
||||
list: res.rows,
|
||||
listData: that.data.listData.concat(res.rows)
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 加载更多数据
|
||||
*/
|
||||
onScrollToLower() {
|
||||
console.log("滚动条到底了,开始加载新数据");
|
||||
this.getProjectFunVerifyData();
|
||||
},
|
||||
|
||||
//查询统计
|
||||
queryCount(param) {
|
||||
//查询统计数量
|
||||
findGroupCountByApprove(param).then(res =>{
|
||||
this.setData({
|
||||
jxzCount: res.data.jxz,
|
||||
ywcCount: res.data.ywc
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 标签切换
|
||||
*/
|
||||
typeJump(e) {
|
||||
let index = e.currentTarget.dataset.index;
|
||||
let nav = "";
|
||||
if (index == 1) {
|
||||
nav = 'jxz';
|
||||
} else if (index == 2) {
|
||||
nav = 'ywc';
|
||||
}
|
||||
this.setData({
|
||||
activeState: nav,
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
lastDataSize: 10,
|
||||
listData: [],
|
||||
list: []
|
||||
});
|
||||
this.getProjectFunVerifyData();
|
||||
},
|
||||
|
||||
returnToPage: function () {
|
||||
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||
if (wx.getStorageSync('nav-menu') == "gd") {
|
||||
wx.redirectTo({
|
||||
url: '../../../pages/gengduogongneng/index',
|
||||
})
|
||||
} else {
|
||||
wx.redirectTo({
|
||||
url: '../../../pages/quality_manage/index',
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
//项目切换 返回值
|
||||
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() {
|
||||
|
||||
}
|
||||
})
|
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"usingComponents": {
|
||||
"van-overlay": "@vant/weapp/overlay/index" ,
|
||||
"van-popup": "@vant/weapp/popup/index"
|
||||
},
|
||||
"navigationStyle":"custom",
|
||||
"navigationBarTitleText": "举牌验收管理"
|
||||
}
|
|
@ -0,0 +1,63 @@
|
|||
<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>
|
||||
<scroll-view class="max_content_scroll" type="list" scroll-y bindscrolltolower="onScrollToLower">
|
||||
<project-select init="{{initData}}" bindchange="onProjectSelect" id="projectSel"></project-select>
|
||||
<view class="modify_video_nav" style="margin-top: 5rpx;">
|
||||
<view class="{{activeState=='jxz'?'active':''}}" bindtap="typeJump" data-index="1"><text>进行中({{jxzCount}})</text></view>
|
||||
<view class="{{activeState=='ywc'?'active':''}}" bindtap="typeJump" data-index="2"><text>已完成({{ywcCount}})</text></view>
|
||||
</view>
|
||||
<view class="inspect_max_scroll">
|
||||
<view class="inspect_for_scroll" v-if="{{ listData.length>0 }}" 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.checkTypeName}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_list_info">
|
||||
<view class="inspect_list_info_details">
|
||||
<view class="inspect_list_info_img">
|
||||
<view wx:if="{{item.approveStatus==1}}" class="code_label_2 code_label_blueviolet">待审批</view>
|
||||
<view wx:if="{{item.approveStatus==4}}" class="code_label_2 code_label_green">合格</view>
|
||||
<view wx:if="{{item.approveStatus==3}}" class="code_label_2 code_label_red">不合格</view>
|
||||
<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">检验名称:<text>{{item.checkName}}</text></view>
|
||||
<view class="inspect_list_info_data_prop">质量专员:<text>{{item.qualityUserName}}</text></view>
|
||||
<view class="inspect_list_info_data_prop">监理专员:<text>{{item.superviseUserName}}</text></view>
|
||||
<view class="inspect_list_info_data_prop">检验时间:<text class="color_blue">{{item.checkDate}}</text></view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_list_info_position">检验描述:<text class="color_purple">{{item.intro}}</text></view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view wx:if="{{listData.length==0}}">
|
||||
<view style="padding-top: 70px;text-align: -webkit-center;">
|
||||
<image src="https://szgcwx.jhncidg.com/staticFiles/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>
|
||||
</scroll-view>
|
|
@ -0,0 +1 @@
|
|||
/* pageage/project_checking_list/project_checking_list.wxss */
|
|
@ -22,13 +22,13 @@ Page({
|
|||
standardActive: '',
|
||||
typeList: [{
|
||||
id: 1,
|
||||
name: '作业标准化',
|
||||
icon: config.baseUrl + '/staticFiles/img/zybzh.png',
|
||||
name: '现场管理标准',
|
||||
icon: config.baseUrl + '/staticFiles/img/xcglbzh.png',
|
||||
count: 0,
|
||||
}, {
|
||||
id: 2,
|
||||
name: '现场管理标准',
|
||||
icon: config.baseUrl + '/staticFiles/img/xcglbzh.png',
|
||||
name: '作业标准化',
|
||||
icon: config.baseUrl + '/staticFiles/img/zybzh.png',
|
||||
count: 0,
|
||||
},
|
||||
{
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
// pageage/project_checking/info/index.js
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
|
@ -10,7 +9,6 @@ Page({
|
|||
infoData:{},
|
||||
imageList:[],
|
||||
minImageList:[],
|
||||
loadShow:false,
|
||||
loginName:"",
|
||||
request:app.globalData.reqUrl,
|
||||
list:[{id:1,text:"合格"},{id:2,text:"不合格"}],
|
||||
|
@ -80,7 +78,6 @@ Page({
|
|||
imageList:urls,
|
||||
minImageList:minUrls,
|
||||
checkingFiles,
|
||||
loadShow:false
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@ -89,9 +86,6 @@ Page({
|
|||
|
||||
//保存
|
||||
onSubmitSave(){
|
||||
this.setData({
|
||||
loadShow:true
|
||||
})
|
||||
let that = this
|
||||
let {infoData,result,comment,loginName} = that.data;
|
||||
//数据效验
|
||||
|
@ -99,24 +93,15 @@ Page({
|
|||
|
||||
}else{
|
||||
app.toast("数据异常,请刷新页面重试!")
|
||||
that.setData({
|
||||
loadShow:false
|
||||
})
|
||||
return;
|
||||
}
|
||||
|
||||
if(result==""){
|
||||
app.toast("请选择审批结果!")
|
||||
that.setData({
|
||||
loadShow:false
|
||||
})
|
||||
return;
|
||||
}
|
||||
if(comment==""){
|
||||
app.toast("请填写审批意见!")
|
||||
that.setData({
|
||||
loadShow:false
|
||||
})
|
||||
return;
|
||||
}
|
||||
let params = {
|
||||
|
@ -142,9 +127,6 @@ Page({
|
|||
"Content-Type": "application/json"
|
||||
},
|
||||
success(res){
|
||||
that.setData({
|
||||
loadShow:false
|
||||
})
|
||||
res = res.data
|
||||
if(res.code == 200){
|
||||
app.toast("审批成功!")
|
||||
|
@ -157,9 +139,6 @@ Page({
|
|||
}
|
||||
})
|
||||
} else if (sm.cancel) {
|
||||
that.setData({
|
||||
loadShow:false
|
||||
})
|
||||
console.log('用户点击取消');
|
||||
}
|
||||
}
|
||||
|
@ -238,7 +217,7 @@ Page({
|
|||
returnToPage: function () {
|
||||
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||
wx.redirectTo({
|
||||
url: '../../../pageage/project_checking/list/index',
|
||||
url: '../../../pageage/project_funVerify/list/index',
|
||||
})
|
||||
},
|
||||
|
||||
|
|
|
@ -0,0 +1,283 @@
|
|||
import {
|
||||
getDictCache,
|
||||
selectProjectAuditinfoList
|
||||
} from '../../../api/publics'
|
||||
import {
|
||||
getProjectFunVerify,
|
||||
updateProjectFunVerify
|
||||
} from '../../../api/projectFunVerify'
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
id: "",
|
||||
infoData: {},
|
||||
imageList: [],
|
||||
minImageList: [],
|
||||
loadShow: false,
|
||||
loginName: "",
|
||||
request: app.globalData.reqUrl,
|
||||
list: [{
|
||||
id: 1,
|
||||
text: "合格"
|
||||
}, {
|
||||
id: 2,
|
||||
text: "不合格"
|
||||
}],
|
||||
result: "1",
|
||||
comment: "",
|
||||
flowNodes: [{
|
||||
text: '开始'
|
||||
}, {
|
||||
text: '提交申请'
|
||||
}, {
|
||||
text: '监理审批'
|
||||
}, {
|
||||
text: '结束'
|
||||
}],
|
||||
active: 2,
|
||||
checkFiles: []
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
let {
|
||||
id
|
||||
} = options
|
||||
//获取缓存数据
|
||||
wx.getStorage({
|
||||
key: 'userinfo',
|
||||
success: res => {
|
||||
this.setData({
|
||||
id,
|
||||
loginName: res.data.loginName
|
||||
})
|
||||
this.getInfo();
|
||||
this.getAuditinfo();
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 获取安全检查详情信息
|
||||
*
|
||||
*/
|
||||
getInfo() {
|
||||
let that = this;
|
||||
getProjectFunVerify(this.data.id).then(res => {
|
||||
if (res.code == 200) {
|
||||
let urls = [];
|
||||
let minUrls = [];
|
||||
let checkFiles = [];
|
||||
if (res.data.imageUrls) {
|
||||
res.data.imageUrls.split(',').forEach(element => {
|
||||
urls.push(that.data.request + element);
|
||||
minUrls.push(that.data.request + element + '.min.jpg');
|
||||
});
|
||||
}
|
||||
if (res.data.checkFiles) {
|
||||
res.data.checkFiles.split(',').forEach(item => {
|
||||
let it = item.split('/');
|
||||
checkFiles.push({
|
||||
'name': it[it.length - 1],
|
||||
path: item
|
||||
});
|
||||
});
|
||||
}
|
||||
that.setData({
|
||||
infoData: res.data,
|
||||
imageList: urls,
|
||||
minImageList: minUrls,
|
||||
checkFiles,
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
//保存
|
||||
onSubmitSave() {
|
||||
let that = this
|
||||
let {
|
||||
infoData,
|
||||
result,
|
||||
comment,
|
||||
loginName
|
||||
} = that.data;
|
||||
//数据效验
|
||||
if (!infoData.id) {
|
||||
app.toast("数据异常,请刷新页面重试!")
|
||||
return;
|
||||
}
|
||||
|
||||
if (result == "") {
|
||||
app.toast("请选择审批结果!")
|
||||
return;
|
||||
}
|
||||
if (comment == "") {
|
||||
app.toast("请填写审批意见!")
|
||||
return;
|
||||
}
|
||||
let params = {
|
||||
id: infoData.id,
|
||||
checkResult: result,
|
||||
comment,
|
||||
approveStatus: result == '1' ? '4' : '3',
|
||||
updateBy: loginName
|
||||
}
|
||||
let msg = result == '1' ? '合格' : '不合格';
|
||||
wx.showModal({
|
||||
title: '提示',
|
||||
content: '是否确定审批' + msg + '?',
|
||||
success: function (sm) {
|
||||
if (sm.confirm) {
|
||||
// 用户点击了确定 可以调用了
|
||||
that.submitForm(params);
|
||||
} else if (sm.cancel) {
|
||||
console.log('用户点击取消');
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 提交表单
|
||||
* @param {*} params
|
||||
*/
|
||||
submitForm(params) {
|
||||
updateProjectFunVerify(params).then(res => {
|
||||
if (res.code == 200) {
|
||||
app.toast("审批成功!")
|
||||
setTimeout(() => {
|
||||
wx.redirectTo({
|
||||
url: '../../../pageage/project_funVerify/list/index',
|
||||
})
|
||||
}, 200)
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
//选择检测结果
|
||||
onSelect(e) {
|
||||
this.setData({
|
||||
result: e.detail.id
|
||||
})
|
||||
},
|
||||
|
||||
//审批意见
|
||||
onInputValue(e) {
|
||||
let comment = e.detail.value
|
||||
this.setData({
|
||||
comment
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 查询流程日志
|
||||
*/
|
||||
getAuditinfo() {
|
||||
let params = {
|
||||
fromType: "5",
|
||||
fromId: this.data.id
|
||||
}
|
||||
selectProjectAuditinfoList(params).then(res => {
|
||||
if (res.code == 200) {
|
||||
this.setData({
|
||||
flowRecordList: res.data
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 手风琴
|
||||
onChange(event) {
|
||||
this.setData({
|
||||
activeName: event.detail,
|
||||
});
|
||||
},
|
||||
|
||||
//展示图片
|
||||
showImg: function (e) {
|
||||
var that = this;
|
||||
wx.previewImage({
|
||||
urls: that.data.imageList,
|
||||
current: that.data.imageList[e.currentTarget.dataset.index]
|
||||
})
|
||||
},
|
||||
|
||||
//选择检测结果
|
||||
onSelect(e) {
|
||||
this.setData({
|
||||
result: e.detail.id
|
||||
})
|
||||
},
|
||||
|
||||
//审批意见
|
||||
onInputValue(e) {
|
||||
let comment = e.detail.value
|
||||
this.setData({
|
||||
comment
|
||||
})
|
||||
},
|
||||
|
||||
returnToPage: function () {
|
||||
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||
wx.redirectTo({
|
||||
url: '../../../pageage/project_funVerify/list/index',
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"usingComponents": {
|
||||
"van-overlay": "@vant/weapp/overlay/index",
|
||||
"van-popup": "@vant/weapp/popup/index",
|
||||
"van-collapse": "@vant/weapp/collapse",
|
||||
"van-steps": "@vant/weapp/steps/index",
|
||||
"van-collapse-item": "@vant/weapp/collapse-item"
|
||||
},
|
||||
"navigationStyle":"custom",
|
||||
"navigationBarTitleText": "举牌验收详情"
|
||||
}
|
|
@ -0,0 +1,178 @@
|
|||
<!--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">
|
||||
<van-steps steps="{{ flowNodes }}" active="{{ active }}" />
|
||||
<view class="inspect_overview_max">
|
||||
<view class="inspect_overview">
|
||||
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
|
||||
<van-collapse value="{{activeName}}" bind:change="onChange">
|
||||
<van-collapse-item title="审批日志" name="2">
|
||||
<view class="inspect_list">
|
||||
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
|
||||
<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">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
|
||||
<view class="module_title module_title_flex inspect_list_title_text">
|
||||
<text wx:if="{{item.approveStatus==1}}">提交工程功能检验</text>
|
||||
<text wx:if="{{item.approveStatus!=1}}">审批工程功能检验</text>
|
||||
<text wx:if="{{item.approveStatus==4}}" class="timeline_for_state_1 color_green">合格</text>
|
||||
<text wx:if="{{item.approveStatus==3}}" class="timeline_for_state_2 color_purple">不合格</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_list_info gk_open_con">
|
||||
<view wx:if="{{item.userName}}">
|
||||
<image src="/images/lw_3.png"></image>办理用户:<text>{{item.userName}}</text>
|
||||
</view>
|
||||
<view wx:if="{{item.deptName}}">
|
||||
<image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text>
|
||||
</view>
|
||||
<view>
|
||||
<image src="/images/s_6.png"></image>办理时间:<text>{{item.createTime}}</text>
|
||||
</view>
|
||||
<view wx:if="{{item.comment}}">
|
||||
<image src="/images/s_7.png"></image>审批意见:<text>{{item.comment}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-collapse-item>
|
||||
</van-collapse>
|
||||
</view>
|
||||
<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>
|
||||
<van-col span="18">{{infoData.deptName}}</van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
<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_purple">检验类型</text></van-col>
|
||||
<van-col span="18" class="color_blue">{{infoData.checkTypeName}}</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_blue">{{infoData.checkName}}</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.qualityUserName}} {{infoData.qualityUser}}</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.superviseUserName}} {{infoData.superviseUser}}</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.checkDate}}</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.intro}}</van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
<view class="inspect_overview_list" wx:if="{{checkFiles.length>0}}">
|
||||
<van-row>
|
||||
<van-col span="6"><text class="color_purple">其它附件</text></van-col>
|
||||
<van-col span="18"></van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
<view class="inspect_overview_list" wx:if="{{checkFiles.length>0}}">
|
||||
<view class="files_parent" wx:for="{{checkFiles}}" wx:key="index" bindtap="downFile" data-set="{{item}}">
|
||||
<text class="color_blue files">{{item.name}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_overview_list" wx:if="{{infoData.approveStatus!=null}}">
|
||||
<van-row>
|
||||
<van-col span="6"><text class="color_purple">验收结果</text></van-col>
|
||||
<van-col span="18">
|
||||
<text wx:if="{{infoData.approveStatus==1}}" class="code_label_2 code_label_blueviolet" style="padding: 5rpx 50rpx;font-size: 25rpx;">待审批</text>
|
||||
<text wx:if="{{infoData.approveStatus==4}}" class="code_label_2 code_label_green" style="padding: 5rpx 50rpx;font-size: 25rpx;">合格</text>
|
||||
<text wx:if="{{infoData.approveStatus==3}}" class="code_label_2 code_label_red" style="padding: 5rpx 50rpx;font-size: 25rpx;">不合格</text>
|
||||
</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 class="inspect_overview_list">
|
||||
<van-row>
|
||||
<van-col span="6"><text class="color_purple">提交用户</text></van-col>
|
||||
<van-col span="18">{{infoData.createBy}}</van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_overview" wx:if="{{infoData.approveStatus=='1'}}">
|
||||
<view class="safety_inspect_title module_title_flex module_title_padding">
|
||||
<view>工程功能检验审批</view>
|
||||
</view>
|
||||
<view class="inspect_info">
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">审批结果</view>
|
||||
<view class="inspect_info_content">
|
||||
<voucher-select columns="{{list}}" placeholder="请选择审批结果" bindchange="onSelect"></voucher-select>
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title">审批意见</view>
|
||||
<view class="inspect_info_content">
|
||||
<textarea class="add_textarea" placeholder="请填写审批意见(200字内)" placeholder-style="color:#6777aa;" bindinput="onInputValue" maxlength="200" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="problem_submit_to">
|
||||
<view class="problem_submit_to_btn" bindtap="returnToPage">取消</view>
|
||||
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onSubmitSave">提交审批</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-overlay show="{{loadShow}}">
|
||||
<view class="gif">
|
||||
<image src="/images/loding2.gif"></image>
|
||||
<view>数据加载中!请稍后...</view>
|
||||
</view>
|
||||
</van-overlay>
|
|
@ -0,0 +1,71 @@
|
|||
/* 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;
|
||||
}
|
||||
.van-collapse.van-hairline--top-bottom:after{
|
||||
border-width: 0px 0;
|
||||
}
|
||||
.van-cell.van-cell--borderless{
|
||||
background-color: #2b345b;
|
||||
color: #fff;
|
||||
margin-top: 30rpx;
|
||||
border-radius: 5rpx;
|
||||
}
|
||||
.van-cell.van-cell--borderless:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item__title.van-collapse-item__title--expanded:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item .van-cell:after{
|
||||
border-bottom: 0;
|
||||
}
|
||||
.van-collapse-item.van-hairline--top:after{
|
||||
border-top-width:0
|
||||
}
|
||||
.van-cell.van-cell--clickable{
|
||||
background-color: #2b345b;
|
||||
margin-top: 5rpx;
|
||||
margin-bottom: 5rpx;
|
||||
color: #fff;
|
||||
border-radius: 15rpx;
|
||||
|
||||
}
|
||||
.van-cell.van-cell--clickable:active{
|
||||
background-color: #2b345b;
|
||||
}
|
||||
.van-collapse-item__wrapper .van-collapse-item__content{
|
||||
background-color: #1e2336;
|
||||
color:#8ca4ec ;
|
||||
border-width: 0px 0;
|
||||
}
|
||||
.gk_open_con view{
|
||||
padding: 10rpx 0;
|
||||
width: 100%;
|
||||
}
|
||||
.gk_open_con image{
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
margin-right: 5rpx;
|
||||
position: relative;
|
||||
top: 5rpx;
|
||||
}
|
|
@ -45,6 +45,8 @@ Page({
|
|||
fbAptitude: false,
|
||||
subDeptTypes: [],
|
||||
subDeptScopes: [],
|
||||
persChange1: false,
|
||||
persChange2: false,
|
||||
},
|
||||
|
||||
/**
|
||||
|
@ -69,6 +71,16 @@ Page({
|
|||
fbAptitude: true
|
||||
})
|
||||
}
|
||||
if (procDefKey == "flow_xmglzdl_xmzbdwrybg" || procDefKey == "flow_xmglzdl_xmjldwrybg") {
|
||||
this.setData({
|
||||
persChange1: true
|
||||
})
|
||||
}
|
||||
if (procDefKey == "flow_xmglzdl_xmjlzjrybg" || procDefKey == "flow_xmglzdl_xmzbjlrybg") {
|
||||
this.setData({
|
||||
persChange2: true
|
||||
})
|
||||
}
|
||||
//获取缓存数据
|
||||
wx.getStorage({
|
||||
key: 'userinfo',
|
||||
|
|
|
@ -147,6 +147,12 @@
|
|||
<block wx:if="{{fbAptitude}}">
|
||||
<van-notice-bar left-icon="https://szgcwx.jhncidg.com/staticFiles/icon/notice.png" text="请至少上传报审表,营业执照,安全生产许可证,资质证书,人员证书等!缺少相关附件可能被驳回申请。" />
|
||||
</block>
|
||||
<block wx:if="{{persChange1}}">
|
||||
<van-notice-bar left-icon="https://szgcwx.jhncidg.com/staticFiles/icon/notice.png" text="请至少上传变更申请、人员证件等。" />
|
||||
</block>
|
||||
<block wx:if="{{persChange2}}">
|
||||
<van-notice-bar left-icon="https://szgcwx.jhncidg.com/staticFiles/icon/notice.png" text="请至少上传变更申请/变更原因说明、新到人员无其他项任职承诺书、任命/调令文件、人员证件等。" />
|
||||
</block>
|
||||
<view class="inspect_info_list" style="width: 100%;" wx:if="{{!isFiles || imageInfoData.length>0}}">
|
||||
<view class="inspect_info_title module_title_flex" style="padding: 20rpx 0 10rpx;">审批内容 [仅可上传图片]
|
||||
<view class="module_see_info_switct" bindtap="switchFiles" wx:if="{{filesData.length==0}}">
|
||||
|
|
|
@ -42,6 +42,8 @@ Page({
|
|||
subDeptCustodian: "",
|
||||
subDeptCustodianCardId: "",
|
||||
subDeptApproachDate: "",
|
||||
persChange1: false,
|
||||
persChange2: false,
|
||||
},
|
||||
|
||||
/**
|
||||
|
@ -60,6 +62,16 @@ Page({
|
|||
fbAptitude: true
|
||||
})
|
||||
}
|
||||
if (procDefKey == "flow_xmglzdl_xmzbdwrybg" || procDefKey == "flow_xmglzdl_xmjldwrybg") {
|
||||
this.setData({
|
||||
persChange1: true
|
||||
})
|
||||
}
|
||||
if (procDefKey == "flow_xmglzdl_xmjlzjrybg" || procDefKey == "flow_xmglzdl_xmzbjlrybg") {
|
||||
this.setData({
|
||||
persChange2: true
|
||||
})
|
||||
}
|
||||
//获取缓存数据
|
||||
wx.getStorage({
|
||||
key: 'userinfo',
|
||||
|
|
|
@ -103,6 +103,12 @@
|
|||
<block wx:if="{{fbAptitude}}">
|
||||
<van-notice-bar left-icon="https://szgcwx.jhncidg.com/staticFiles/icon/notice.png" text="请至少上传报审表,营业执照,安全生产许可证,资质证书,人员证书等!缺少相关附件可能被驳回申请。" />
|
||||
</block>
|
||||
<block wx:if="{{persChange1}}">
|
||||
<van-notice-bar left-icon="https://szgcwx.jhncidg.com/staticFiles/icon/notice.png" text="请至少上传变更申请、人员证件等。" />
|
||||
</block>
|
||||
<block wx:if="{{persChange2}}">
|
||||
<van-notice-bar left-icon="https://szgcwx.jhncidg.com/staticFiles/icon/notice.png" text="请至少上传变更申请/变更原因说明、新到人员无其他项任职承诺书、任命/调令文件、人员证件等。" />
|
||||
</block>
|
||||
<view class="inspect_info_list" style="width: 100%;" wx:if="{{!isFiles}}">
|
||||
<view class="inspect_info_title module_title_flex" style="padding: 20rpx 0 10rpx;">审批内容 [仅可上传图片]
|
||||
<view class="module_see_info_switct" bindtap="switchFiles">
|
||||
|
|
|
@ -52,6 +52,7 @@ Page({
|
|||
scslDb: 0,
|
||||
jpysDb: 0,
|
||||
clfyDb: 0,
|
||||
gcgnDb: 0,
|
||||
},
|
||||
|
||||
/**
|
||||
|
@ -486,7 +487,8 @@ Page({
|
|||
qyfsDb: res.data.approveQYFS,
|
||||
scslDb: res.data.approveSCSL,
|
||||
jpysDb: res.data.approveJPYS,
|
||||
clfyDb: res.data.approveCLFY
|
||||
clfyDb: res.data.approveCLFY,
|
||||
gcgnDb: res.data.approveGCGN
|
||||
})
|
||||
console.log(that.data)
|
||||
}
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
<span wx:if="{{item.menu_identi=='JPYSGL'}}"><span class="tabNum_active" wx:if="{{jpysDb>0}}">{{jpysDb}}</span></span>
|
||||
<span wx:if="{{item.menu_identi=='QYFS'}}"><span class="tabNum_active" wx:if="{{qyfsDb>0}}">{{qyfsDb}}</span></span>
|
||||
<span wx:if="{{item.menu_identi=='ZLYHPC'}}"><span class="tabNum_active" wx:if="{{zl>0}}">{{zl}}</span></span>
|
||||
<span wx:if="{{item.menu_identi=='GCGNJY'}}"><span class="tabNum_active" wx:if="{{gcgnDb>0}}">{{gcgnDb}}</span></span>
|
||||
<image src="{{item.menu_img}}"></image>
|
||||
<view>{{item.menu_name}}</view>
|
||||
</view>
|
||||
|
|
Loading…
Reference in New Issue