diff --git a/src/app/ui/collection-tools-plan/addPlaneFigure.html b/src/app/ui/collection-tools-plan/addPlaneFigure.html
index 344170b..80cbac6 100644
--- a/src/app/ui/collection-tools-plan/addPlaneFigure.html
+++ b/src/app/ui/collection-tools-plan/addPlaneFigure.html
@@ -12,9 +12,9 @@
-
+
diff --git a/src/app/ui/collection-tools-plan/collection-tools.component.ts b/src/app/ui/collection-tools-plan/collection-tools.component.ts
index 918f365..102b1b1 100644
--- a/src/app/ui/collection-tools-plan/collection-tools.component.ts
+++ b/src/app/ui/collection-tools-plan/collection-tools.component.ts
@@ -811,6 +811,7 @@ export class CollectionToolsPlanComponent implements OnInit {
//遍历 建筑数据 删除多余数据
let object = this.canvasData.originalcompanyBuildingData.data
let adjoinArr = [] //毗邻数组
+ console.log('平面图数据',this.sitePlanData)
Object.keys(object).forEach(key => {
let isExist = this.sitePlanData.find(item => { return item.id === object[key].FloorId })
if (isExist === undefined) {
@@ -818,7 +819,7 @@ export class CollectionToolsPlanComponent implements OnInit {
delete object[key]
}
})
- //遍历 建筑数据 删除多余数据
+ //遍历 楼层数据 删除多余数据
this.saveNum = []
let SitePlanData = JSON.parse(JSON.stringify(this.canvasData.originaleveryStoreyData));
for (const key in SitePlanData.data) {
@@ -837,9 +838,9 @@ export class CollectionToolsPlanComponent implements OnInit {
CompanyData.data = JSON.stringify(CompanyData.data)
if (this.pattern) {//如果是基本信息编辑模式
+ console.log(1234, object)
for (const key in object) {
if (object[key].Name == "毗邻") {//如果是相同楼层,则筛选出毗邻
-
object[key].PropertyInfos.forEach(element => {
if (element.PropertyName == "方向") {
adjoinArr.push(element.PropertyValue)
@@ -857,7 +858,7 @@ export class CollectionToolsPlanComponent implements OnInit {
} else {
//如果是单位 总平面图
if (this.checkedBuildingIndex == -1) {
-
+ //保存中心点和层级
if (this.isGis) {
let data = JSON.parse(JSON.stringify(this.selectingSitePlan))
data.zoomLevel = this.map.getZoom(),
@@ -1014,129 +1015,6 @@ export class CollectionToolsPlanComponent implements OnInit {
})
} else { //如果是建筑
-
- //建筑平面图数据
- this.http.post("/api/BuildingAreaData", SitePlanData, {
- params: {
- companyId: this.params.companyId
- }
- }).subscribe(data => {
- this.saveNum.push("1")
- if (this.saveNum.length == 5) {
- this.maskLayerService.sendMessage(false)
- this.maskLayerService.sendMessage(false)
- this.canvasData.isChange = false
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.snackBar.open('保存成功', '确定', config);
- this.tabbarService.sendMessage('changeScore');
- }
- }, err => {
- this.maskLayerService.sendMessage(false)
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.canvasData.isChange = true
- this.snackBar.open('平面图数据保存失败', '确定', config);
- })
-
- //建筑数据
- this.http.post("/api/BuildingData", CompanyData, {
- params: {
- companyId: this.params.companyId
- }
- }).subscribe(data => {
- this.saveNum.push("1")
- if (this.saveNum.length == 5) {
- this.maskLayerService.sendMessage(false)
- this.canvasData.isChange = false
- this.maskLayerService.sendMessage(false)
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.snackBar.open('保存成功', '确定', config);
- this.tabbarService.sendMessage('changeScore');
- }
- }, err => {
- this.maskLayerService.sendMessage(false)
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.canvasData.isChange = true
- this.snackBar.open('单位数据保存失败', '确定', config);
- })
-
- //批量保存建筑毗邻
- let buildingAdjoins = this.canvasData.getBuildingAdjoinInfo()
- this.http.post(`/api/BuildingAdjoins/Batch?companyId=${this.params.companyId}&buildingId=${this.canvasData.selectStorey.buildingId}`, buildingAdjoins).subscribe(data => {
- this.saveNum.push("1")
- if (this.saveNum.length == 5) {
- this.maskLayerService.sendMessage(false)
- this.canvasData.isChange = false
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.snackBar.open('保存成功', '确定', config);
- this.tabbarService.sendMessage('changeScore');
- }
- }, err => {
- this.maskLayerService.sendMessage(false)
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.canvasData.isChange = true
- if (err == 'infos 有重复方向!') {
- this.snackBar.open('建筑毗邻同步失败,存在相同方向', '确定', config);
- } else {
- this.snackBar.open('建筑毗邻同步失败', '确定', config);
- }
- })
-
- //批量保存建筑重点部位
- let buildingImportantLocations = this.canvasData.getBuildingImportantLocations()
- this.http.post(`/api/BuildingImportantLocations/Batch?companyId=${this.params.companyId}&buildingId=${this.canvasData.selectStorey.buildingId}`, buildingImportantLocations).subscribe(data => {
- this.saveNum.push("1")
- if (this.saveNum.length == 5) {
- this.maskLayerService.sendMessage(false)
- this.canvasData.isChange = false
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.snackBar.open('保存成功', '确定', config);
- this.tabbarService.sendMessage('changeScore');
- }
- }, err => {
- this.maskLayerService.sendMessage(false)
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.canvasData.isChange = true
- this.snackBar.open('建筑重点部位同步失败', '确定', config);
- })
-
- //批量保存建筑消防设施素材
- let buildingFacilityAssets = this.canvasData.getAllBuildingFacilityAssetInfo()
- this.http.post(`/api/BuildingFacilityAssets/Batch?companyId=${this.params.companyId}&buildingId=${this.canvasData.selectStorey.buildingId}`, buildingFacilityAssets).subscribe(data => {
- this.saveNum.push("1")
- if (this.saveNum.length == 5) {
- this.maskLayerService.sendMessage(false)
- this.canvasData.isChange = false
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.snackBar.open('保存成功', '确定', config);
- this.tabbarService.sendMessage('changeScore');
- }
- }, err => {
- this.maskLayerService.sendMessage(false)
- let config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.canvasData.isChange = true
- this.snackBar.open('建筑消防设施素材同步失败', '确定', config);
- })
-
}
}
}
@@ -2344,7 +2222,9 @@ export class CollectionToolsPlanComponent implements OnInit {
//将图标数据添加
let itemData = JSON.parse(JSON.stringify(this.selectImage))
+ console.log(6666,this.selectingSitePlan)
itemData.id = id
+ itemData.FloorId = this.selectingSitePlan.id
itemData.point = { x: e.lnglat.lng, y: e.lnglat.lat }
itemData = this.canvasData.deserialize(JSON.stringify(itemData))//反序列化为大写
// 添加楼层数据
diff --git a/src/app/ui/collection-tools-plan/leftFunctionalDomain.ts b/src/app/ui/collection-tools-plan/leftFunctionalDomain.ts
index 007d30b..d140fdf 100644
--- a/src/app/ui/collection-tools-plan/leftFunctionalDomain.ts
+++ b/src/app/ui/collection-tools-plan/leftFunctionalDomain.ts
@@ -14,24 +14,24 @@ import { MaskLayerService } from 'src/app/mask-layer.service';
export class leftFunctionalDomainComponentPlan implements OnInit {
constructor(
- private http:HttpClient,
+ private http: HttpClient,
public dialog: MatDialog,
public snackBar: MatSnackBar,
public dialogRef: MatDialogRef,
- @Inject(MAT_DIALOG_DATA) public data,public canvasData: CanvasShareDataService,private maskLayerService:MaskLayerService,) { }
+ @Inject(MAT_DIALOG_DATA) public data, public canvasData: CanvasShareDataService, private maskLayerService: MaskLayerService,) { }
ngOnInit(): void {
}
- params = {companyId: sessionStorage.getItem('companyId')}
- checked:boolean = false;//是否为避难层
- file:any = null; //上传的文件
+ params = { companyId: sessionStorage.getItem('companyId') }
+ checked: boolean = false;//是否为避难层
+ file: any = null; //上传的文件
//选择文件
- selectFile (e) {
+ selectFile(e) {
if (e.target.files.length) {
- let maxSize = 100*1024*1024 //100MB限制
+ let maxSize = 100 * 1024 * 1024 //100MB限制
if (e.target.files[0].size <= maxSize) {
this.file = e.target.files[0]
this.selectedType = 'image'
@@ -39,15 +39,15 @@ export class leftFunctionalDomainComponentPlan implements OnInit {
const config = new MatSnackBarConfig();
config.verticalPosition = 'top';
config.duration = 3000
- this.snackBar.open('上传图片需小于100MB','确定',config);
+ this.snackBar.open('上传图片需小于100MB', '确定', config);
}
}
}
- selectedType:String //新建平面图的底图类型 gis/image
+ selectedType: String //新建平面图的底图类型 gis/image
//导入GIS
- toGIS () {
+ toGIS() {
this.selectedType = 'gis';
this.file = null;
(document.getElementById('uploadFile')).value = null; //清空input框缓存
@@ -58,20 +58,20 @@ export class leftFunctionalDomainComponentPlan implements OnInit {
}
//提交表单创建平面图
- onSubmit (e) {
+ onSubmit(e) {
if (this.file && this.selectedType == 'image') {
- if (this.file.name.toLowerCase().indexOf('png') == -1 && this.file.name.toLowerCase().indexOf('jpg') == -1 && this.file.name.toLowerCase().indexOf('jpeg') == -1) {
- const config = new MatSnackBarConfig();
- config.verticalPosition = 'top';
- config.duration = 3000
- this.snackBar.open('请上传图片后缀为png,jpg,jpeg的文件', '确定', config);
- return
- }
+ if (this.file.name.toLowerCase().indexOf('png') == -1 && this.file.name.toLowerCase().indexOf('jpg') == -1 && this.file.name.toLowerCase().indexOf('jpeg') == -1) {
+ const config = new MatSnackBarConfig();
+ config.verticalPosition = 'top';
+ config.duration = 3000
+ this.snackBar.open('请上传图片后缀为png,jpg,jpeg的文件', '确定', config);
+ return
+ }
this.maskLayerService.sendMessage(true)
- if (this.file.size<=5*1024*1024) { //小于5MB
+ if (this.file.size <= 5 * 1024 * 1024) { //小于5MB
let formData = new FormData()
- formData.append("file",this.file)
- this.http.post(`/api/Objects/WebPlan2D/${sessionStorage.getItem('companyId')}`,formData).subscribe((data:any)=>{
+ 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
let that = this
let img = new Image()
@@ -82,15 +82,15 @@ export class leftFunctionalDomainComponentPlan implements OnInit {
companyId: sessionStorage.getItem('companyId'),
name: e.name,
order: that.data.order,
- area:Number(e.area),
- details:e.details,
+ area: Number(e.area),
+ details: e.details,
enabled: true,
modifiedTime: new Date(),
imageUrl: imgURL,
imageWidth: img.width,
imageHeight: img.height
}
- that.http.post('/api/SitePlans',data).subscribe(data=>{
+ that.http.post('/api/SitePlans', data).subscribe(data => {
that.dialogRef.close('总平面图');
})
} else { //建筑 创建楼层/区域
@@ -99,23 +99,23 @@ export class leftFunctionalDomainComponentPlan implements OnInit {
buildingId: that.data.Panel.id,
name: e.name,
order: that.data.order,
- area:Number(e.area),
- details:e.details,
+ area: Number(e.area),
+ details: e.details,
enabled: true,
modifiedTime: new Date(),
imageUrl: imgURL,
imageWidth: img.width,
imageHeight: img.height
}
- that.http.post('/api/BuildingAreas',data,{params:that.params}).subscribe(data=>{
+ that.http.post('/api/BuildingAreas', data, { params: that.params }).subscribe(data => {
that.dialogRef.close('建筑');
})
}
}
}) //post
- } else if (this.file.size>5*1024*1024 && this.file.size<=100*1024*1024) { //大于5MB
- let upload = this.canvasData.sectionUpload(sessionStorage.getItem('companyId'),this.file)
- upload.then(res=>{
+ } else if (this.file.size > 5 * 1024 * 1024 && this.file.size <= 100 * 1024 * 1024) { //大于5MB
+ let upload = this.canvasData.sectionUpload(sessionStorage.getItem('companyId'), this.file)
+ upload.then(res => {
let imgURL = '/api/Objects/PlanPlatform/' + res
let that = this
let img = new Image()
@@ -126,15 +126,15 @@ export class leftFunctionalDomainComponentPlan implements OnInit {
companyId: sessionStorage.getItem('companyId'),
name: e.name,
order: that.data.order,
- area:Number(e.area),
- details:e.details,
+ area: Number(e.area),
+ details: e.details,
enabled: true,
modifiedTime: new Date(),
imageUrl: imgURL,
imageWidth: img.width,
imageHeight: img.height
}
- that.http.post('/api/SitePlans',data).subscribe(data=>{
+ that.http.post('/api/SitePlans', data).subscribe(data => {
that.dialogRef.close('总平面图');
})
} else { //建筑 创建楼层/区域
@@ -143,43 +143,43 @@ export class leftFunctionalDomainComponentPlan implements OnInit {
buildingId: that.data.Panel.id,
name: e.name,
order: that.data.order,
- area:Number(e.area),
- details:e.details,
+ area: Number(e.area),
+ details: e.details,
enabled: true,
modifiedTime: new Date(),
imageUrl: imgURL,
imageWidth: img.width,
imageHeight: img.height
}
- that.http.post('/api/BuildingAreas',data,{params:that.params}).subscribe(data=>{
+ that.http.post('/api/BuildingAreas', data, { params: that.params }).subscribe(data => {
that.dialogRef.close('建筑');
})
}
}
})
}
- } else if(this.selectedType == 'gis'){
+ } else if (this.selectedType == 'gis') {
let data = {
companyId: sessionStorage.getItem('companyId'),
name: e.name,
order: this.data.order,
- area:Number(e.area),
- details:e.details,
+ area: Number(e.area),
+ details: e.details,
enabled: true,
modifiedTime: new Date(),
imageUrl: 'null',
imageWidth: 0,
imageHeight: 0,
- isGis:true
+ isGis: true
}
- this.http.post('/api/SitePlans',data).subscribe(data=>{
+ this.http.post('/api/SitePlans', data).subscribe(data => {
this.dialogRef.close('总平面图');
})
} else {
const config = new MatSnackBarConfig();
config.verticalPosition = 'top';
config.duration = 3000
- this.snackBar.open('请上传图片','确定',config);
+ this.snackBar.open('请上传图片', '确定', config);
}
}
@@ -195,7 +195,7 @@ export class leftFunctionalDomainComponentPlan implements OnInit {
})
export class editPlaneFigureComponentPlan implements OnInit {
- constructor(private http:HttpClient,public dialog: MatDialog,public snackBar: MatSnackBar,public dialogRef: MatDialogRef,@Inject(MAT_DIALOG_DATA) public data,public canvasData: CanvasShareDataService,private eventManager: EventManager,) { }
+ constructor(private http: HttpClient, public dialog: MatDialog, public snackBar: MatSnackBar, public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data, public canvasData: CanvasShareDataService, private eventManager: EventManager,) { }
ngOnInit(): void {
console.log(this.data.isGis)
@@ -207,17 +207,17 @@ export class editPlaneFigureComponentPlan implements OnInit {
this.imgHeight = this.data.buildingData.imageHeight || 0
this.oldWidth = JSON.parse(JSON.stringify(this.data.buildingData.imageWidth || 0))
this.oldHeight = JSON.parse(JSON.stringify(this.data.buildingData.imageHeight || 0))
- if (this.imgWidth==0 && this.imgHeight==0 && this.data.buildingData.imageUrl) {
+ if (this.imgWidth == 0 && this.imgHeight == 0 && this.data.buildingData.imageUrl) {
let that = this
let img = new Image()
img.src = this.data.buildingData.imageUrl
img.onload = function () {
that.imgWidth = img.width
that.imgHeight = img.height
- that.imgScale = Number((that.imgWidth/that.imgHeight))
+ that.imgScale = Number((that.imgWidth / that.imgHeight))
}
} else {
- this.imgScale = Number((this.imgWidth/this.imgHeight))
+ this.imgScale = Number((this.imgWidth / this.imgHeight))
}
this.eventManager.addGlobalEventListener('window', 'keydown', (event: any) => {
@@ -227,22 +227,22 @@ export class editPlaneFigureComponentPlan implements OnInit {
});
}
- oldWidth:number; //原图片宽
- oldHeight:number; //原图片高
+ oldWidth: number; //原图片宽
+ oldHeight: number; //原图片高
- params = {companyId: sessionStorage.getItem('companyId')}
- name:any; //name
- checked:boolean = false;//是否为避难层
- area:number; //面积
- details:string; //详情
+ params = { companyId: sessionStorage.getItem('companyId') }
+ name: any; //name
+ checked: boolean = false;//是否为避难层
+ area: number; //面积
+ details: string; //详情
- imgWidth:number; //图片宽度
- imgHeight:number; //图片高度
- isItEqual:boolean = true; //是否等比
- imgScale:number; //图片 宽高比例
+ imgWidth: number; //图片宽度
+ imgHeight: number; //图片高度
+ isItEqual: boolean = true; //是否等比
+ imgScale: number; //图片 宽高比例
//图片 宽高变化时
- inputChange (e) {
+ inputChange(e) {
if (this.isItEqual) {
if (e == 0) { //需要改高度
this.imgHeight = Math.round(this.imgWidth / this.imgScale)
@@ -260,12 +260,12 @@ export class editPlaneFigureComponentPlan implements OnInit {
}
//重新计算 宽高比例
- setImgScale (e) {
- e.checked? this.imgScale = Number((this.imgWidth/this.imgHeight)) : null
+ setImgScale(e) {
+ e.checked ? this.imgScale = Number((this.imgWidth / this.imgHeight)) : null
}
//关闭
- close () {
+ close() {
if (this.oldWidth === this.imgWidth && this.oldHeight === this.imgHeight) {
this.dialogRef.close()
} else {
@@ -276,7 +276,7 @@ export class editPlaneFigureComponentPlan implements OnInit {
}
//提交表单修改平面图
- onSubmit (e) {
+ onSubmit(e) {
if (!this.data.isBuilding) { //总平面图 修改平面图
let data = {
companyId: sessionStorage.getItem('companyId'),
@@ -288,15 +288,15 @@ export class editPlaneFigureComponentPlan implements OnInit {
imageHeight: this.imgHeight,
imageAngle: this.data.buildingData.imageAngle,
order: this.data.buildingData.order,
- area:e.area,
- details:e.details,
+ area: e.area,
+ details: e.details,
enabled: this.data.buildingData.enabled,
modifiedTime: new Date(),
isGis: this.data.isGis,
- zoomLevel:this.data.buildingData.zoomLevel,
- defaultCenter:this.data.buildingData.defaultCenter
+ zoomLevel: this.data.buildingData.zoomLevel,
+ defaultCenter: this.data.buildingData.defaultCenter
}
- this.http.put(`/api/SitePlans/${this.data.buildingData.id}`,data).subscribe(data=>{
+ this.http.put(`/api/SitePlans/${this.data.buildingData.id}`, data).subscribe(data => {
this.dialogRef.close('总平面图');
})
} else { //建筑 修改楼层/区域
@@ -311,12 +311,12 @@ export class editPlaneFigureComponentPlan implements OnInit {
imageHeight: this.imgHeight,
imageAngle: this.data.buildingData.imageAngle,
order: this.data.buildingData.order,
- area:e.area,
- details:e.details,
+ 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.http.put(`/api/BuildingAreas/${this.data.buildingData.id}`, data, { params: this.params }).subscribe(data => {
this.dialogRef.close('建筑');
})
}
diff --git a/src/app/working-area/working-area.component.ts b/src/app/working-area/working-area.component.ts
index 6f723ea..8024256 100644
--- a/src/app/working-area/working-area.component.ts
+++ b/src/app/working-area/working-area.component.ts
@@ -1102,7 +1102,7 @@ export class WorkingAreaComponent extends EventEmitter implements OnInit, AfterV
if (imageAngle === undefined || imageAngle === null) {
imageAngle = 0;
}
- this.backgroundImage.scale.set(1);
+ this.backgroundImage.scale ? this.backgroundImage.scale.set(1) : null;
// this.backgroundImage.pivot.set(0);
if (imageUrl === undefined || imageUrl === null || imageUrl === '') {
this.backgroundImage.texture = this.backgroundTexture;