|
|
|
import { Component, OnInit, Inject } from '@angular/core';
|
|
|
|
import { HttpClient, HttpHeaders } from '@angular/common/http';
|
|
|
|
import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
|
|
import { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';
|
|
|
|
|
|
|
|
@Component({
|
|
|
|
selector: 'app-leftFunctionalDomain-plan',
|
|
|
|
templateUrl: './addPlaneFigure.html',
|
|
|
|
styleUrls: ['./panel.scss']
|
|
|
|
})
|
|
|
|
export class leftFunctionalDomainComponentPlan implements OnInit {
|
|
|
|
|
|
|
|
constructor(
|
|
|
|
private http:HttpClient,
|
|
|
|
public dialog: MatDialog,
|
|
|
|
public snackBar: MatSnackBar,
|
|
|
|
public dialogRef: MatDialogRef<any>,
|
|
|
|
@Inject(MAT_DIALOG_DATA) public data) { }
|
|
|
|
|
|
|
|
ngOnInit(): void {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
params = {companyId: sessionStorage.getItem('companyId')}
|
|
|
|
checked:boolean = false;//是否为避难层
|
|
|
|
file:any = null; //上传的文件
|
|
|
|
|
|
|
|
//选择文件
|
|
|
|
selectFile (e) {
|
|
|
|
if (e.target.files.length) {
|
|
|
|
let maxSize = 5*1024*1024
|
|
|
|
if (e.target.files[0].size <= maxSize) {
|
|
|
|
this.file = e.target.files[0]
|
|
|
|
} else {
|
|
|
|
const config = new MatSnackBarConfig();
|
|
|
|
config.verticalPosition = 'top';
|
|
|
|
config.duration = 3000
|
|
|
|
this.snackBar.open('上传图片需小于5MB','确定',config);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//导入GIS
|
|
|
|
toGIS () {
|
|
|
|
const config = new MatSnackBarConfig();
|
|
|
|
config.verticalPosition = 'top';
|
|
|
|
config.duration = 3000
|
|
|
|
this.snackBar.open('功能开发测试中,即将上线','确定',config);
|
|
|
|
}
|
|
|
|
|
|
|
|
//提交表单创建平面图
|
|
|
|
onSubmit (e) {
|
|
|
|
if (this.file) {
|
|
|
|
let formData = new FormData()
|
|
|
|
formData.append("file",this.file)
|
|
|
|
this.http.post(`/api/Objects/WebPlan2D/${sessionStorage.getItem('companyId')}`,formData).subscribe((data:any)=>{
|
|
|
|
let imgURL = '/api/Objects/WebPlan2D/' + data.objectName
|
|
|
|
if (!this.data.isBuilding) { //总平面图 创建平面图
|
|
|
|
let data = {
|
|
|
|
companyId: sessionStorage.getItem('companyId'),
|
|
|
|
name: e.name,
|
|
|
|
order: this.data.order,
|
|
|
|
area:e.area,
|
|
|
|
details:e.details,
|
|
|
|
enabled: true,
|
|
|
|
modifiedTime: new Date(),
|
|
|
|
imageUrl: imgURL,
|
|
|
|
}
|
|
|
|
this.http.post('/api/SitePlans',data).subscribe(data=>{
|
|
|
|
this.dialogRef.close('总平面图');
|
|
|
|
})
|
|
|
|
} else { //建筑 创建楼层/区域
|
|
|
|
let data = {
|
|
|
|
isRefugeStorey: e.isRefugeStorey,
|
|
|
|
buildingId: this.data.Panel.id,
|
|
|
|
name: e.name,
|
|
|
|
order: this.data.order,
|
|
|
|
area:e.area,
|
|
|
|
details:e.details,
|
|
|
|
enabled: true,
|
|
|
|
modifiedTime: new Date(),
|
|
|
|
imageUrl: imgURL,
|
|
|
|
}
|
|
|
|
this.http.post('/api/BuildingAreas',data,{params:this.params}).subscribe(data=>{
|
|
|
|
this.dialogRef.close('建筑');
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}) //post
|
|
|
|
} else {
|
|
|
|
const config = new MatSnackBarConfig();
|
|
|
|
config.verticalPosition = 'top';
|
|
|
|
config.duration = 3000
|
|
|
|
this.snackBar.open('请上传图片','确定',config);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//编辑平面图 楼层/区域
|
|
|
|
@Component({
|
|
|
|
selector: 'app-editPlaneFigure-plan',
|
|
|
|
templateUrl: './editPlaneFigure.html',
|
|
|
|
styleUrls: ['./panel.scss']
|
|
|
|
})
|
|
|
|
export class editPlaneFigureComponentPlan implements OnInit {
|
|
|
|
|
|
|
|
constructor(private http:HttpClient,public dialog: MatDialog,public snackBar: MatSnackBar,public dialogRef: MatDialogRef<any>,@Inject(MAT_DIALOG_DATA) public data) { }
|
|
|
|
|
|
|
|
ngOnInit(): void {
|
|
|
|
this.name = this.data.buildingData.name || ''
|
|
|
|
this.checked = this.data.buildingData.isRefugeStorey || false
|
|
|
|
this.area = this.data.buildingData.area || 0
|
|
|
|
this.details = this.data.buildingData.details || ''
|
|
|
|
}
|
|
|
|
|
|
|
|
params = {companyId: sessionStorage.getItem('companyId')}
|
|
|
|
name:any; //name
|
|
|
|
checked:boolean = false;//是否为避难层
|
|
|
|
area:number; //面积
|
|
|
|
details:string; //详情
|
|
|
|
|
|
|
|
//提交表单修改平面图
|
|
|
|
onSubmit (e) {
|
|
|
|
if (!this.data.isBuilding) { //总平面图 修改平面图
|
|
|
|
let data = {
|
|
|
|
companyId: sessionStorage.getItem('companyId'),
|
|
|
|
id: this.data.buildingData.id,
|
|
|
|
name: e.name,
|
|
|
|
cadUrl: this.data.buildingData.cadUrl,
|
|
|
|
imageUrl: this.data.buildingData.imageUrl,
|
|
|
|
imageAngle: this.data.buildingData.imageAngle,
|
|
|
|
order: this.data.buildingData.order,
|
|
|
|
area:e.area,
|
|
|
|
details:e.details,
|
|
|
|
enabled: this.data.buildingData.enabled,
|
|
|
|
modifiedTime: new Date(),
|
|
|
|
}
|
|
|
|
this.http.put(`/api/SitePlans/${this.data.buildingData.id}`,data).subscribe(data=>{
|
|
|
|
this.dialogRef.close('总平面图');
|
|
|
|
})
|
|
|
|
} else { //建筑 修改楼层/区域
|
|
|
|
let data = {
|
|
|
|
isRefugeStorey: e.isRefugeStorey,
|
|
|
|
buildingId: this.data.Panel.id,
|
|
|
|
id: this.data.buildingData.id,
|
|
|
|
name: e.name,
|
|
|
|
cadUrl: this.data.buildingData.cadUrl,
|
|
|
|
imageUrl: this.data.buildingData.imageUrl,
|
|
|
|
imageAngle: this.data.buildingData.imageAngle,
|
|
|
|
order: this.data.buildingData.order,
|
|
|
|
area:e.area,
|
|
|
|
details:e.details,
|
|
|
|
enabled: this.data.buildingData.enabled,
|
|
|
|
modifiedTime: new Date(),
|
|
|
|
}
|
|
|
|
this.http.put(`/api/BuildingAreas/${this.data.buildingData.id}`,data,{params:this.params}).subscribe(data=>{
|
|
|
|
this.dialogRef.close('建筑');
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|