You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

231 lines
6.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

// pages/install/install.js
const {
entryDetail,
getUsedMaterialInfo,
acceptZSRefuse,acceptZS
} = require('../../../api/api')
Page({
/**
* 页面的初始数据
*/
data: {
entryId: '',
remarks: '',
converterList: [],
tabIndex:'0',
childObj:{},//子组件详情数据
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.data.entryId = options.projectId;
this.getUsedMaterialInfo()
this.entryDetail()
},
onShow() {
},
/** tab切换 **/
tabChange(e){
let index = e.currentTarget.dataset.index;
this.setData({
tabIndex:index
});
},
/** 获取电站详情 **/
entryDetail(e) {
entryDetail({
userId: wx.getStorageSync('userId'),
entryId: this.data.entryId,
}).then((res) => {
this.setData({
detail: res,
id: res.id, //修改数据的时候传此ID
projectId: res.project_id,
tenant_type: res.tenant_type=='1' ? '个人' : '单位',//1.个人2单位
//业主信息参数
name: res.tenant_name,
phone: res.mobile,
idCard: res.id_code,
regno: res.regno,
provinceName: res.province,
cityName: res.city,
areaName: res.area,
address: res.address,
childObj:res,//子组件详情数据
});
const detailObj = JSON.parse(JSON.stringify(this.data))
this.setData({
detailObj,
});
if(res.management == '04'){//华融
if (res.projectDetailList[0].componentList.length > 0) {
this.getUsedMaterialInfo()
}
}else{
if (res.componentList.length > 0) {
this.getUsedMaterialInfo()
}
}
})
},
/**
*
* 获取使用物料列表
*
* @param {*} e
*/
getUsedMaterialInfo(e) {
getUsedMaterialInfo({
entryId: this.data.entryId,
}).then((res) => {
var componentList = []; //组件
var converterList = []; //逆变器
var cagesList = []; //并网箱
var supportList = []; //支架
if (res.code == 200) {
//华融安装多产品
if(res.data.projectSettingList){
this.setData({
productList: JSON.parse(res.data.projectSettingList)
})
}
res.data.materialEntryList = JSON.parse(res.data.materialEntryList)
if (res.data.materialEntryList.length > 0) {//有安装数据
res.data.materialEntryList.forEach(element => {
if (element.type == "组件") {
componentList.push(element)
} else if (element.type == "逆变器") {
converterList.push(element)
} else if (element.type == "并网箱") {
cagesList.push(element)
} else if (element.type == "支架") {
supportList.push(element)
}
});
var list = [];
componentList.forEach(element => {
var pos = list.findIndex((res) => {
return res.materialId == element.materialId
})
if (pos == -1) {
element.itemList = [JSON.parse(JSON.stringify(element))]
list.push(element)
} else {
list[pos].itemList.push(element)
}
});
var list1 = [];
converterList.forEach(element => {
var pos = list1.findIndex((res) => {
return res.materialId == element.materialId
})
if (pos == -1) {
element.itemList = [JSON.parse(JSON.stringify(element))]
list1.push(element)
} else {
list1[pos].itemList.push(element)
}
});
this.setData({
componentList: list,
converterList: list1,
cagesList: cagesList,
supportList: supportList,
nbqList: res.data.nbqMap?JSON.parse(res.data.nbqMap):[],
zjMap: res.data.zjMap?JSON.parse(res.data.zjMap):''
// nbqList: JSON.parse(res.data.nbqMap),
// zjMap: JSON.parse(res.data.zjMap)
})
// console.log(5555, this.data.converterList)
} else {
this.setData({
componentList: [],
converterList: [],
cagesList: [],
supportList: [],
nbqList: res.data.nbqMap?JSON.parse(res.data.nbqMap):[],
zjMap: res.data.zjMap?JSON.parse(res.data.zjMap):''
// nbqList: JSON.parse(res.data.nbqMap),
// zjMap: JSON.parse(res.data.zjMap)
})
}
}
})
},
//保存
submit(e){
let that = this
let type = e.currentTarget.dataset.type
if(type == '0'){//驳回
wx.showModal({
title: '提示',
content: '确认要驳回吗?',
complete: (res) => {
if (res.cancel) {}
if (res.confirm) {
if(that.data.remarks == ''){
wx.showToast({
title: '审核意见不能为空',
icon: 'none'
})
return
}
acceptZSRefuse({
userId: wx.getStorageSync('userId'),
id: that.data.entryId,
remarks: that.data.remarks
}).then((res) => {
wx.hideLoading()
if (res.code == 200) {
wx.showToast({
title: '操作成功',
icon: 'none'
})
setTimeout(function () {
wx.navigateBack()
}, 1500)
} else {
wx.showToast({
title: res.msg || res.errMsg,
icon: 'none'
})
}
})
}
}
})
}else{//通过
acceptZS({
userId: wx.getStorageSync('userId'),
id: this.data.entryId
}).then((res) => {
wx.hideLoading()
if (res.code == 200) {
wx.showToast({
title: '操作成功',
icon: 'none'
})
setTimeout(function () {
wx.navigateBack()
}, 1500)
} else {
wx.showToast({
title: res.msg || res.errMsg,
icon: 'none'
})
}
})
}
}
})