361 lines
10 KiB
Vue
361 lines
10 KiB
Vue
<template>
|
||
<view class="fullHeight">
|
||
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
||
<headers :showBack="true" style="position: fixed; top: 0; left: 0; width: 100%; z-index: 10;">
|
||
<view class="headerName">
|
||
项目概况
|
||
</view>
|
||
</headers>
|
||
<view class="" :style="{paddingTop: mobileTopHeight + 40 + 'px'}">
|
||
<!-- <map class="map"
|
||
scale="13"
|
||
:markers="markers" :latitude="projectDetail.latitude" :longitude="projectDetail.longitude"
|
||
>
|
||
</map> -->
|
||
<view class="splitTitle">
|
||
基本信息
|
||
</view>
|
||
<view class="infoBlock">
|
||
<view class="item">
|
||
<view class="title">
|
||
项目名称
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.projectName}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
项目地址
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.projectAddress}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
项目所在省市区
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.provinceName}}{{projectDetail.cityName}}{{projectDetail.areaName}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
项目经理
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.projectManage}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
联系电话
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.projectTel}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
工程类别
|
||
</view>
|
||
<view class="value">
|
||
<text v-for="(item,index) in PROJECTTYPE" :key="index" v-if="item.id==projectDetail.projectType">{{item.name}}</text>
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
项目编号
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.projectNumber}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
结构类型
|
||
</view>
|
||
<view class="value">
|
||
<text v-for="(item,index) in STRUCTURETYPE" :key="index" v-if="item.id==projectDetail.structureType">{{item.name}}</text>
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
项目面积
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.projectAcreage}} m²
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
户数
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.households}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
楼栋数
|
||
</view>
|
||
<view class="value">
|
||
{{projectDetail.buildingNum}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
现场布置图
|
||
</view>
|
||
<view class="value">
|
||
<image :src="projectDetail.layoutImage" mode="" class="smallImg" @click="viewBig(projectDetail.layoutImage)"></image>
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
现场施工图
|
||
</view>
|
||
<view class="value">
|
||
<image :src="projectDetail.constructionMapUrl" mode="" class="smallImg" @click="viewBig(projectDetail.constructionMapUrl)"></image>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<view class="splitTitle">
|
||
扩展信息
|
||
</view>
|
||
<view class="infoBlock">
|
||
<view class="item">
|
||
<view class="title">
|
||
合同签订
|
||
</view>
|
||
<view class="value">
|
||
|
||
{{extendInfo.contractSignTime?extendInfo.contractSignTime:''}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
合同工期
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.contractPeriodStartTime}} ~ {{extendInfo.contractPeriodEndTime}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
实际工期
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.realPeriodStartTime}} ~ {{extendInfo.realPeriodEndTime}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
中标单位
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.bidWinner}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
建设单位
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.constructionUnit}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
设计单位
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.designUnit}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
监理单位
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.supervisorUnit}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
业主单位
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.ownerUnit}}
|
||
</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="title">
|
||
工程概况
|
||
</view>
|
||
<view class="value">
|
||
{{extendInfo.projectOverview}}
|
||
</view>
|
||
</view>
|
||
|
||
</view>
|
||
</view>
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
import headers from "../../../components/headers/headers.vue"
|
||
// import amap from '../../../static/js/amap-wx.js'
|
||
export default {
|
||
data() {
|
||
return {
|
||
mobileTopHeight: 0,
|
||
projectDetail: {
|
||
projectName: ''
|
||
},
|
||
markers:[],
|
||
BUILDSTATUS:[
|
||
{id:0,name:'未开工'},{id:1,name:'在建'},{id:2,name:'停工'},{id:3,name:'验收'},{id:4,name:'完工'}
|
||
],
|
||
PROJECTTYPE:[
|
||
{id:1,name:'房建'},{id:2,name:'市政'},{id:3,name:'安装'},{id:4,name:'装饰'},{id:5,name:'公路'},{id:6,name:'冶炼'},{id:7,name:'矿山'},
|
||
{id:8,name:'化工石油'},{id:9,name:'水利水电'},{id:10,name:'电力'}
|
||
,{id:11,name:'农林'},{id:12,name:'港口与航道'},{id:13,name:'航天航空'},{id:14,name:'通信'},{id:15,name:'其他'}
|
||
],//工程类别
|
||
|
||
// CONSTRUCTIONSTAGE:CONSTRUCTIONSTAGE,//施工阶段
|
||
ENGINEERINGPRUPOSE:[
|
||
{id:1,name:'住宅建筑'},{id:2,name:'宿舍建筑'},{id:3,name:'教育建筑'},{id:4,name:'办公建筑'},{id:5,name:'科研建筑'},
|
||
{id:6,name:'文化建筑'},{id:7,name:'商业建筑'},
|
||
{id:8,name:'体育建筑'},{id:9,name:'医疗建筑'},{id:10,name:'交通建筑'}
|
||
,{id:11,name:'司法建筑'},{id:12,name:'纪念建筑'},{id:13,name:'园林建筑'},{id:14,name:'综合建筑'},
|
||
{id:15,name:'工业厂房'},{id:16,name:'电子厂房'},{id:17,name:'其他'}
|
||
],//工程用途
|
||
STRUCTURETYPE:[
|
||
{id:1,name:'装配整体式框级结构'},{id:2,name:'装配整体式剪力墙结构'},{id:3,name:'装配整体式框级-现浇剪力墙结构'},{id:4,name:'装配整体式框级-现浇核心筒结构'},
|
||
{id:5,name:'装配整体式部分框支剪力墙结构'},{id:6,name:'混合结构'},{id:7,name:'框架结构'},
|
||
{id:8,name:'剪力墙结构'},{id:9,name:'框架-剪力墙结构'},{id:10,name:'简体结构'}
|
||
,{id:11,name:'钢结构'},{id:12,name:'型钢混凝土结构'},{id:13,name:'砖混结构'},{id:14,name:'砖木结构'}
|
||
],//结构类型
|
||
extendInfo:{}
|
||
}
|
||
},
|
||
mounted() {
|
||
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
|
||
var that = this
|
||
uni.getSystemInfo({
|
||
success(res) {
|
||
that.mobileTopHeight = res.statusBarHeight ? res.statusBarHeight : 0;
|
||
uni.setStorageSync('systemInfo',res)
|
||
console.log(res)
|
||
}
|
||
})
|
||
console.log('this.mobileTopHeight',this.mobileTopHeight)
|
||
// this.markers=[{
|
||
// longitude: this.projectDetail.longitude,
|
||
// latitude: this.projectDetail.latitude,
|
||
// iconPath:'/static/mapMarker.png',
|
||
// title:'你在哪了',//标注点名
|
||
// width:54, //宽
|
||
// height:80, //高
|
||
// label:{//为标记点旁边增加标签 //因背景颜色H5不支持
|
||
// content: this.projectDetail.projectName,//文本
|
||
// color:'red',//文本颜色
|
||
// // fontSize:24,//文字大小
|
||
// // x:5,//label的坐标,原点是 marker 对应的经纬度
|
||
// // y:1,//label的坐标,原点是 marker 对应的经纬度
|
||
// // borderWidth:12,//边框宽度
|
||
// // borderColor:'pink',//边框颜色
|
||
// // borderRadius:20,//边框圆角
|
||
// // bgColor:'black',//背景色
|
||
// // padding:5,//文本边缘留白
|
||
// // textAlign:'right'//文本对齐方式。
|
||
// },
|
||
// callout:{//自定义标记点上方的气泡窗口 点击有效
|
||
// content:'幸福花园店A组',//文本
|
||
// color:'#ffffff',//文字颜色
|
||
// fontSize:14,//文本大小
|
||
// borderRadius:2,//边框圆角
|
||
// bgColor:'#00c16f',//背景颜色
|
||
// display:'ALWAYS',//常显
|
||
// },
|
||
// }]
|
||
this.getExtendInfo()
|
||
},
|
||
methods: {
|
||
viewBig(url){
|
||
uni.previewImage({
|
||
current:url,
|
||
urls:[this.projectDetail.layoutImage,this.projectDetail.constructionMapUrl]
|
||
})
|
||
},
|
||
getExtendInfo() {
|
||
var that = this
|
||
this.sendRequest({
|
||
url: "xmgl/projectExtend/getProjectExtendInfo",
|
||
data: {
|
||
projectSn: this.projectDetail.projectSn
|
||
},
|
||
method: "POST",
|
||
success(res) {
|
||
if(res.result!=null){
|
||
that.extendInfo = res.result
|
||
}else{
|
||
that.extendInfo={
|
||
contractSignTime:"-",
|
||
contractPeriodStartTime:"-",
|
||
contractPeriodEndTime:"-",
|
||
realPeriodStartTime:"-",
|
||
realPeriodEndTime:"-",
|
||
bidWinner:"",
|
||
constructionUnit:"",
|
||
designUnit:"",
|
||
supervisorUnit:"",
|
||
ownerUnit:"",
|
||
projectOverview:""
|
||
}
|
||
}
|
||
|
||
}
|
||
})
|
||
},
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style scoped lang="scss">
|
||
.map{
|
||
width: 100%;
|
||
height: 200px!important;
|
||
img{
|
||
display: none;
|
||
}
|
||
}
|
||
.smallImg{
|
||
height: 100rpx;
|
||
width: 100rpx;
|
||
}
|
||
.splitTitle{
|
||
margin: 30rpx 20rpx 0;
|
||
border-left: 3px solid $uni-color-primary;
|
||
padding: 0 10rpx;
|
||
line-height: 30rpx;
|
||
}
|
||
.infoBlock{
|
||
padding: 30rpx 0;
|
||
.item{
|
||
border-bottom: 1px solid rgba(0,0,0,0.05);
|
||
margin-bottom: 20rpx;
|
||
padding: 0 30rpx;
|
||
.title{
|
||
font-size: 24rpx;
|
||
opacity: 0.6;
|
||
}
|
||
.value{
|
||
padding: 10rpx 0;
|
||
}
|
||
}
|
||
}
|
||
</style>
|