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.
222 lines
6.1 KiB
222 lines
6.1 KiB
// pages/viewSchema/viewSchema.js
|
|
|
|
const {
|
|
entryDetail,
|
|
findAllPlan,
|
|
IMG_BASE_URL
|
|
} = require('../../../api/api')
|
|
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数
|
|
*/
|
|
data: {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(options) {
|
|
this.findAllPlan(options)
|
|
},
|
|
|
|
|
|
/**
|
|
*
|
|
* 获取方案类型和方案名称
|
|
*
|
|
* @param {*} e
|
|
*/
|
|
findAllPlan(options) {
|
|
let that = this
|
|
findAllPlan({
|
|
|
|
}).then((res) => {
|
|
for (let i = 0; i < res.length; i++) {
|
|
res[i].allPlan = JSON.parse(res[i].allPlan)
|
|
for (let j = 0; j < res[i].allPlan.length; j++) {
|
|
var element = res[i].allPlan[j].columns;
|
|
res[i].allPlan[j] = element
|
|
}
|
|
}
|
|
that.setData({
|
|
planList: res,
|
|
})
|
|
that.entryDetail(options)
|
|
})
|
|
},
|
|
/**
|
|
*
|
|
* 获取电站详情
|
|
*
|
|
* @param {*} e
|
|
*/
|
|
entryDetail(e) {
|
|
entryDetail({
|
|
userId: wx.getStorageSync('userId'),
|
|
entryId: e.projectId,
|
|
}).then((res) => {
|
|
|
|
//标准方案,组合方案
|
|
if (res.scheme_type == 1) {
|
|
for (let i = 0; i < this.data.planList.length; i++) {
|
|
const element = this.data.planList[i];
|
|
if (res.scheme_type_id && (res.scheme_type_id == element.id)) {
|
|
this.setData({
|
|
standardSolutionsListIndex: i,
|
|
})
|
|
}
|
|
}
|
|
let standardSolutionsList = [];
|
|
if(res.scheme_id || res.scheme_type_name || res.scheme_type_id || res.scheme_name){
|
|
standardSolutionsList=[{
|
|
id:res.scheme_id,
|
|
type:res.scheme_type_name,
|
|
typeId:res.scheme_type_id,
|
|
name:res.scheme_name,
|
|
}]
|
|
}
|
|
this.setData({
|
|
standardSolutionsList:standardSolutionsList
|
|
})
|
|
} else if (res.scheme_type == 2) {
|
|
if (res.composePlanList.length > 0) {
|
|
var combinedSolutionsList = []
|
|
for (let i = 0; i < res.composePlanList.length; i++) {
|
|
var combinedSolutionsListOB = {}
|
|
const element = res.composePlanList[i];
|
|
|
|
|
|
|
|
// type: "", //方案类型
|
|
// name: "", //方案名称
|
|
// id: "", //方案ID
|
|
// code: "", //方案编号
|
|
// pickerIndex: 0, //方案类型选择下标
|
|
// drawing: "", //参考图纸
|
|
// addType: 1, //显示新增方案按钮
|
|
if (i == 0) {
|
|
combinedSolutionsListOB.addType = 1;
|
|
}
|
|
combinedSolutionsListOB.code = element.code;
|
|
combinedSolutionsListOB.id = element.planId;
|
|
combinedSolutionsListOB.name = element.name;
|
|
combinedSolutionsListOB.type = element.planType;
|
|
|
|
for (let i = 0; i < this.data.planList.length; i++) {
|
|
const planTypeObj = this.data.planList[i];
|
|
|
|
if (planTypeObj.allPlan.length > 0) {
|
|
for (let j = 0; j < planTypeObj.allPlan.length; j++) {
|
|
const plan = planTypeObj.allPlan[j];
|
|
if (plan.id == element.planId) {
|
|
combinedSolutionsListOB.pickerIndex = i
|
|
}
|
|
}
|
|
}
|
|
}
|
|
combinedSolutionsList.push(combinedSolutionsListOB)
|
|
}
|
|
this.setData({
|
|
combinedSolutionsList: combinedSolutionsList
|
|
})
|
|
}
|
|
}
|
|
|
|
// 组件,逆变器,并网箱
|
|
var componentNum = 0;
|
|
if (res.componentList.length > 0) {
|
|
var componentList = [];
|
|
var converterList = [];
|
|
var cagesList = [];
|
|
var support = [];
|
|
for (let i = 0; i < res.componentList.length; i++) {
|
|
const element = res.componentList[i];
|
|
var OB = {
|
|
id: "",
|
|
num: "", //数量
|
|
model: "", //名称
|
|
}
|
|
if (element.item_type == 3) {
|
|
OB.id = element.item_id;
|
|
OB.num = element.num;
|
|
OB.model = element.model;
|
|
componentNum = element.num * element.model + componentNum
|
|
componentList.push(OB)
|
|
} else if (element.item_type == 1) {
|
|
OB.id = element.item_id;
|
|
OB.num = element.num;
|
|
OB.model = element.model;
|
|
converterList.push(OB)
|
|
} else if (element.item_type == 2) {
|
|
OB.id = element.item_id;
|
|
OB.num = element.num;
|
|
OB.model = element.model;
|
|
cagesList.push(OB)
|
|
} else if (element.item_type == 4) {
|
|
OB.id = element.item_id;
|
|
OB.num = element.num;
|
|
OB.model = element.model;
|
|
support.push(OB)
|
|
}
|
|
}
|
|
this.setData({
|
|
componentList: componentList, //组件
|
|
converterList: converterList, //逆变器
|
|
cagesList: cagesList, //并网箱
|
|
support: support, //支架
|
|
})
|
|
}
|
|
|
|
this.setData({
|
|
componentNum: (componentNum/1000).toFixed(3),
|
|
designDrawings: res.design_drawings ? res.design_drawings.split(",").map(itm => {
|
|
return {
|
|
name: itm,
|
|
url: IMG_BASE_URL + itm
|
|
}
|
|
}) : [], //设计图纸
|
|
scheme: res.scheme_type == 1 ? "标准方案" : "组合方案",
|
|
schemeRemarks: res.scheme_remarks ? res.scheme_remarks : "无",
|
|
})
|
|
|
|
})
|
|
},
|
|
|
|
/**
|
|
*
|
|
* 查看设计图纸
|
|
*
|
|
*/
|
|
openDocument(res) {
|
|
let path = res.currentTarget.dataset.path
|
|
if (path) {
|
|
let suffix = path.substring(path.lastIndexOf('.') + 1) //获取文件后缀
|
|
if (suffix == 'pdf') {
|
|
wx.showLoading({
|
|
title: '加载中',
|
|
})
|
|
wx.downloadFile({
|
|
url: IMG_BASE_URL + path,
|
|
complete: function (res) {
|
|
wx.hideLoading()
|
|
const filePath = res.tempFilePath
|
|
wx.openDocument({
|
|
filePath: filePath,
|
|
showMenu: true,
|
|
success: function (res) {
|
|
console.log('打开文档成功')
|
|
}
|
|
})
|
|
}
|
|
})
|
|
} else {
|
|
wx.previewImage({
|
|
urls: [IMG_BASE_URL + path] // 需要预览的图片http链接列表
|
|
})
|
|
}
|
|
}
|
|
},
|
|
}) |