From ddeb2aabc7e95b0967a01e0c9548c5e59d4eb04f Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Sat, 26 Dec 2020 17:28:25 +0800 Subject: [PATCH 01/11] =?UTF-8?q?[=E5=AE=8C=E5=96=84]=E5=8D=95=E4=BD=8D?= =?UTF-8?q?=E5=9C=B0=E5=9B=BE=E5=A2=9E=E5=8A=A0=E6=90=9C=E7=B4=A2=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basicinfo/basicinfo.component.html | 9 +++ .../basicinfo/basicinfo.component.scss | 25 ++++++- .../key-unit/basicinfo/basicinfo.component.ts | 73 +++++++++++++++---- 3 files changed, 92 insertions(+), 15 deletions(-) diff --git a/src/app/key-unit/basicinfo/basicinfo.component.html b/src/app/key-unit/basicinfo/basicinfo.component.html index 0927268..5e9f5f9 100644 --- a/src/app/key-unit/basicinfo/basicinfo.component.html +++ b/src/app/key-unit/basicinfo/basicinfo.component.html @@ -144,6 +144,15 @@ place 位置 + diff --git a/src/app/key-unit/basicinfo/basicinfo.component.scss b/src/app/key-unit/basicinfo/basicinfo.component.scss index cb6cf21..7ffed03 100644 --- a/src/app/key-unit/basicinfo/basicinfo.component.scss +++ b/src/app/key-unit/basicinfo/basicinfo.component.scss @@ -86,7 +86,6 @@ } .gistopbox{ position: absolute; - box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); border-radius: 4px; left: 5%; @@ -125,9 +124,31 @@ align-items: center; justify-content: center; } - + .inputBox{ + width: 63%; + display: flex; + align-items: center; + .positionInput{ + border: 0; + border-radius: 6px; + width: 90%; + height: 34px; + background: #F2F2F2; + margin-left: 8px; + box-sizing: border-box; + padding-left: 10px; + } + } } + .hidden{ + opacity: 0; + z-index: -1; + } + .show{ + opacity: 1; + z-index: 1; + } } } diff --git a/src/app/key-unit/basicinfo/basicinfo.component.ts b/src/app/key-unit/basicinfo/basicinfo.component.ts index 1fd8443..550178f 100644 --- a/src/app/key-unit/basicinfo/basicinfo.component.ts +++ b/src/app/key-unit/basicinfo/basicinfo.component.ts @@ -104,6 +104,7 @@ export class BasicinfoComponent implements OnInit { markerPosition:any = {x: 0, y: 0}//单位坐标 map:any //地图实例 isGisTopBox:boolean = false//点击位置按钮 + isGisTopBoxTwo:boolean = false//点击位置按钮 oldPositionMarker:any //旧位置marker实例 newPositionMarker:any //新位置marker实例 @@ -121,13 +122,48 @@ export class BasicinfoComponent implements OnInit { ' ' + '' //初始化地图 + searchTitle:any//搜索内容 + placeSearch:any//地址搜索类 + search(){ + this.placeSearch.search(this.searchTitle, (status, result) => { + // 搜索成功时,result即是对应的匹配数据 + console.log(146,this.searchTitle) + console.log(147,result) + if(result.info == "OK"){ + this.newPositionMarker.setPosition([result.poiList.pois[0].location.lng,result.poiList.pois[0].location.lat]) + this.markerPosition2 = {x: result.poiList.pois[0].location.lng, y: result.poiList.pois[0].location.lat} + this.map.setCenter([result.poiList.pois[0].location.lng,result.poiList.pois[0].location.lat]); //设置地图中心点 + } + + }) + + } labelGis(){ this.map = new AMap.Map('container', { zoom:12 }) + + this.map.on('complete', () => { this.isGisTopBox = true }); + //输入提示 + var autoOptions = { + input: "tipinput" + }; + AMap.plugin(['AMap.PlaceSearch','AMap.AutoComplete'], ()=>{ + var auto = new AMap.AutoComplete(autoOptions); + this.placeSearch = new AMap.PlaceSearch(); //构造地点查询类 + auto.on("select", (e)=>{ + console.log(e) + console.log( this.newPositionMarker) + this.newPositionMarker.setPosition([e.poi.location.lng,e.poi.location.lat]) + this.markerPosition2 = {x: e.poi.location.lng, y: e.poi.location.lat} + this.map.setCenter([e.poi.location.lng,e.poi.location.lat]); //设置地图中心点 + });//注册监听,当选中某条记录时会触发 + + }); + if(this.isMapLabel){//如果已经标注单位坐标 console.log('已标注单位位置') this.map.setCenter([this.unitinfo.location.x,this.unitinfo.location.y]); @@ -143,9 +179,15 @@ export class BasicinfoComponent implements OnInit { this.map.setCity('上海市'); } } + + + markerPosition2 //点击位置按钮 setPosition(){ + + this.isGisTopBox = false + this.isGisTopBoxTwo = true if(this.isMapLabel){//如果已经标注单位坐标 console.log('已标注单位位置') @@ -165,36 +207,38 @@ export class BasicinfoComponent implements OnInit { this.map.add(this.newPositionMarker); - let markerPosition if(this.markerPosition.x && this.markerPosition.x != 0){ - markerPosition = {x: this.markerPosition.x,y: this.markerPosition.y} + this.markerPosition2 = {x: this.markerPosition.x,y: this.markerPosition.y} }else{ - markerPosition = {x: this.map.getCenter().lng,y: this.map.getCenter().lat} //获取当前地图中心位置 + this.markerPosition2 = {x: this.map.getCenter().lng,y: this.map.getCenter().lat} //获取当前地图中心位置 } this.newPositionMarker.on('dragend', (e)=>{ - markerPosition = {x: e.lnglat.lng, y: e.lnglat.lat} + this.markerPosition2 = {x: e.lnglat.lng, y: e.lnglat.lat} }) //点击确定 this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionOk'),'click',(event)=>{ this.map.clearMap(); this.isGisTopBox = true + this.isGisTopBoxTwo = false this.newPositionMarker = new AMap.Marker({ - position: [markerPosition.x,markerPosition.y], + position: [this.markerPosition2.x,this.markerPosition2.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }); - this.markerPosition = markerPosition + this.markerPosition = this.markerPosition2 this.map.add(this.newPositionMarker); }) //点击取消 this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionClose'),'click',(event)=>{ this.isGisTopBox = true + this.isGisTopBoxTwo = false this.map.clearMap(); this.newPositionMarker = new AMap.Marker({ position: [this.markerPosition.x,this.markerPosition.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }); + this.map.setCenter([this.markerPosition.x,this.markerPosition.y]); //设置地图中心点 this.map.add(this.newPositionMarker); }) @@ -219,19 +263,20 @@ export class BasicinfoComponent implements OnInit { }); this.map.add(this.newPositionMarker); - let markerPosition + // let markerPosition if(this.markerPosition.x && this.markerPosition.x != 0){ - markerPosition = {x: this.markerPosition.x,y: this.markerPosition.y} + this.markerPosition2 = {x: this.markerPosition.x,y: this.markerPosition.y} }else{ - markerPosition = {x: this.map.getCenter().lng,y: this.map.getCenter().lat} //获取当前地图中心位置 + this.markerPosition2 = {x: this.map.getCenter().lng,y: this.map.getCenter().lat} //获取当前地图中心位置 } this.newPositionMarker.on('dragend', (e)=>{ - markerPosition = {x: e.lnglat.lng, y: e.lnglat.lat} + this.markerPosition2 = {x: e.lnglat.lng, y: e.lnglat.lat} }) //点击确定 this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionOk'),'click',(event)=>{ this.isGisTopBox = true - this.markerPosition = markerPosition + this.isGisTopBoxTwo = false + this.markerPosition = this.markerPosition2 this.map.clearMap(); this.newPositionMarker = new AMap.Marker({ position: [this.markerPosition.x,this.markerPosition.y], @@ -243,19 +288,19 @@ export class BasicinfoComponent implements OnInit { this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionClose'),'click',(event)=>{ this.map.clearMap(); this.isGisTopBox = true + this.isGisTopBoxTwo = false if(this.markerPosition.x && this.markerPosition.x != 0){//说明之前标过点 this.newPositionMarker = new AMap.Marker({ position: [this.markerPosition.x,this.markerPosition.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }); + this.map.setCenter([this.markerPosition.x,this.markerPosition.y]); //设置地图中心点 this.map.add(this.newPositionMarker); } })//取消 } - - } //获得所有单位类型 @@ -278,7 +323,9 @@ export class BasicinfoComponent implements OnInit { }else{//未标注 _this.isMapLabel = false } + this.labelGis() + }) } ) From 64d9fce2681fb4a81d8fc0e6cabd35268a88f53b Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 10:48:48 +0800 Subject: [PATCH 02/11] =?UTF-8?q?[=E5=AE=8C=E5=96=84]=E5=8D=95=E4=BD=8D?= =?UTF-8?q?=E4=BD=8D=E7=BD=AE=E6=A0=87=E6=B3=A8=E5=A2=9E=E5=8A=A0=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/key-unit/basicinfo/basicinfo.component.ts | 6 +++--- .../key-unit-management/key-unit-management.component.html | 4 ++-- src/app/pages/login/login.component.scss | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/app/key-unit/basicinfo/basicinfo.component.ts b/src/app/key-unit/basicinfo/basicinfo.component.ts index 550178f..8485907 100644 --- a/src/app/key-unit/basicinfo/basicinfo.component.ts +++ b/src/app/key-unit/basicinfo/basicinfo.component.ts @@ -127,12 +127,12 @@ export class BasicinfoComponent implements OnInit { search(){ this.placeSearch.search(this.searchTitle, (status, result) => { // 搜索成功时,result即是对应的匹配数据 - console.log(146,this.searchTitle) - console.log(147,result) if(result.info == "OK"){ this.newPositionMarker.setPosition([result.poiList.pois[0].location.lng,result.poiList.pois[0].location.lat]) this.markerPosition2 = {x: result.poiList.pois[0].location.lng, y: result.poiList.pois[0].location.lat} this.map.setCenter([result.poiList.pois[0].location.lng,result.poiList.pois[0].location.lat]); //设置地图中心点 + }else{ + alert('查询不到输入地址信息') } }) @@ -1219,7 +1219,7 @@ export class BasicinfoComponent implements OnInit { if(invalid){ const config = new MatSnackBarConfig(); config.verticalPosition = 'top'; - config.duration = 3000 + config.duration = 3000 this.snackBar.open('请填写必填项','确定',config); }else{ sessionStorage.setItem('buildingTypeId',value.unittype) diff --git a/src/app/key-unit/key-unit-management/key-unit-management.component.html b/src/app/key-unit/key-unit-management/key-unit-management.component.html index f821dd9..9b78ece 100644 --- a/src/app/key-unit/key-unit-management/key-unit-management.component.html +++ b/src/app/key-unit/key-unit-management/key-unit-management.component.html @@ -15,7 +15,7 @@ - 包含下级 + 包含下级
clear
@@ -94,7 +94,7 @@ - + diff --git a/src/app/pages/login/login.component.scss b/src/app/pages/login/login.component.scss index 5e378b0..030269b 100644 --- a/src/app/pages/login/login.component.scss +++ b/src/app/pages/login/login.component.scss @@ -12,7 +12,7 @@ -moz-background-size:100% 100%; .text { padding-top: 3%; - margin-left: 8%; + margin-left: 6%; width: 53%; } } From 30012d2de272e025a1c67402b4cfd6b0610fdb20 Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 10:51:05 +0800 Subject: [PATCH 03/11] =?UTF-8?q?[=E4=BF=AE=E6=94=B9]=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=8F=8D=E5=90=91=E4=BB=A3=E7=90=86=E7=AB=AF=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- proxy.config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/proxy.config.json b/proxy.config.json index b28a11f..1898eac 100644 --- a/proxy.config.json +++ b/proxy.config.json @@ -1,6 +1,6 @@ { "/api": { - "target": "http://121.37.20.190:8000", + "target": "http://39.106.78.171:8000", "secure": false, "changeOrigin": true } From 96eae73e9ddd41071b4e196f4955d664afc6f381 Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 12:35:03 +0800 Subject: [PATCH 04/11] =?UTF-8?q?[=E5=AE=8C=E5=96=84]1.=E7=82=B9=E5=87=BB?= =?UTF-8?q?=E5=AF=BC=E8=88=AA=E6=8C=89=E9=92=AE=E8=B7=AF=E7=BA=BF=E8=A7=84?= =?UTF-8?q?=E5=88=92=E8=B5=8B=E9=BB=98=E8=AE=A4=E5=80=BC=202.=E5=9F=BA?= =?UTF-8?q?=E6=9C=AC=E4=BF=A1=E6=81=AF=E6=96=87=E4=BB=B6=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=8C=96=E5=B7=A5=E7=94=9F=E4=BA=A7=E7=B1=BB=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gis-labeling/gis-labeling.component.ts | 59 ++++++++++++++----- .../key-unit/basicinfo/basicinfo.component.ts | 10 ++-- 2 files changed, 48 insertions(+), 21 deletions(-) diff --git a/src/app/gis-management/gis-labeling/gis-labeling.component.ts b/src/app/gis-management/gis-labeling/gis-labeling.component.ts index 9c0b704..a567a28 100644 --- a/src/app/gis-management/gis-labeling/gis-labeling.component.ts +++ b/src/app/gis-management/gis-labeling/gis-labeling.component.ts @@ -166,7 +166,7 @@ export class GisLabelingComponent implements OnInit { config.duration = 3000 this.snackBar.open('请切换2D模式使用此功能','确定',config); }else{ - console.log('提交',this.selectedUnit) + // console.log('提交',this.selectedUnit) this.circle.setRadius(Number(this.unitAreaDefault)) this.circle.setCenter(this.markers[0]._position) this.circle.setMap(this.map) @@ -185,7 +185,7 @@ export class GisLabelingComponent implements OnInit { Distance : Distance, BuildingTypeIdList : this.selectedUnitList.length != 0 ? this.selectedUnitList : ['123'] } - console.log(666,paramsdata) + // console.log(666,paramsdata) this.http.get("/api/Companies",{params:paramsdata}).subscribe((data:any) => { data.items.forEach((i,index) => { if(i.id == this.selectedUnit.id){ @@ -280,7 +280,7 @@ export class GisLabelingComponent implements OnInit { text: text, }); labelMarker.on('click', (e)=>{ - console.log(item) + // console.log(item) let markerContent = `
${item.name}
@@ -448,7 +448,7 @@ export class GisLabelingComponent implements OnInit { this.keyUnitForm.controls.areaUnit.setValue('0') this.map.remove(this.circle) this.clearUnitMarker()//取消显示单位markers - console.log('取消') + // console.log('取消') } //取消显示水源 @@ -458,7 +458,7 @@ export class GisLabelingComponent implements OnInit { this.watertForm.reset() this.watertForm.controls.areaWater.setValue('0') this.map.remove(this.circleofwater) - console.log('取消') + // console.log('取消') } //右上角点击每一个title @@ -553,6 +553,7 @@ export class GisLabelingComponent implements OnInit { layers:[layer], //当只想显示标准图层时layers属性可缺省, }); + that.map.setCity('上海市'); AMap.plugin(["AMap.RangingTool", "AMap.MouseTool"],function () { that.mouseTool=new AMap.MouseTool(that.map); /* that.measureDistance = new AMap.RangingTool(that.map, rulerOptions); //测距离 @@ -792,6 +793,9 @@ export class GisLabelingComponent implements OnInit { this.leftDivState = false this.showLeftDiv = false this.isShowRouteGIS = true + // console.log(1,e) + this.routeEnd = e.name + this.endCoordinate = new AMap.LngLat(e.location.x, e.location.y) } //全景漫游 @@ -864,9 +868,19 @@ export class GisLabelingComponent implements OnInit { var autoComplete = new AMap.Autocomplete(autoOptions); autoComplete.search(keywords, function(status, result) { if (result && result.tips && result.tips.length) { //搜索到数据时 - - that._ngZone.run(()=>{ e == 0 ? that.routeStartList = result.tips : that.routeEndList = result.tips }); - + that._ngZone.run(()=>{ + if(e == 0){ + that.routeStartList = result.tips + + + that.startCoordinate = new AMap.LngLat(result.tips[0].location.lng, result.tips[0].location.lat) + // console.log(666,result) + }else{ + that.routeEndList = result.tips + that.endCoordinate = new AMap.LngLat(result.tips[0].location.lng, result.tips[0].location.lat) + } + }); + } }) }) @@ -880,9 +894,11 @@ export class GisLabelingComponent implements OnInit { if (e==0) { this.routeStart = null this.routeStartList = [] + this.startCoordinate = null } else { this.routeEnd = null this.routeEndList = [] + this.endCoordinate = null } } @@ -892,9 +908,11 @@ export class GisLabelingComponent implements OnInit { this.routeStartList = [] this.routeEnd = null this.routeEndList = [] + this.startCoordinate = null + this.endCoordinate = null this.routeGIS? this.routeGIS.clear() : null this.routes = { distance: 0, time: 0, steps: [], } - console.log(this.selectedUnit) + // console.log(this.selectedUnit) this.map.setZoomAndCenter(13,[this.selectedUnit.location.x,this.selectedUnit.location.y]); //设置地图中心点 } @@ -905,9 +923,16 @@ export class GisLabelingComponent implements OnInit { this.routeEnd = data this.routeStartList = [] this.routeEndList = [] + let data2 = this.startCoordinate + this.startCoordinate = this.endCoordinate + this.endCoordinate = data2 } routes:any = { distance: 0, time: 0, steps: [], };//导航查询结果 路线规划 + + startCoordinate:any//开始坐标 + endCoordinate:any//结束坐标 + //导航查询 queryGISRoute () { //构造路线导航类 @@ -917,8 +942,10 @@ export class GisLabelingComponent implements OnInit { this.routeGIS = new AMap.Driving({ map: this.map, }); + // console.log(1,this.startCoordinate) + // console.log(2,this.endCoordinate) // 根据起终点名称规划驾车导航路线 - this.routeGIS.search([{keyword: this.routeStart},{keyword: this.routeEnd}], + this.routeGIS.search(this.startCoordinate,this.endCoordinate, function(status, result) { if (status === 'complete') { that.routes = result.routes[0] @@ -938,7 +965,7 @@ export class GisLabelingComponent implements OnInit { policy: e==true? AMap.DrivingPolicy.LEAST_TIME : AMap.DrivingPolicy.REAL_TRAFFIC }); // 根据起终点名称规划驾车导航路线 - this.routeGIS.search([{keyword: this.routeStart},{keyword: this.routeEnd}], + this.routeGIS.search(this.startCoordinate,this.endCoordinate, function(status, result) { if (status === 'complete') { that.routes = result.routes[0] @@ -1051,7 +1078,7 @@ export class LookPlanDialog { ngOnInit() { - console.log(this.data) + // console.log(this.data) this.getAllPlans() } //关闭弹窗 @@ -1073,7 +1100,7 @@ export class LookPlanDialog { } this.http.get("/api/PlanComponents",{params:paramsData}).subscribe((data:any)=>{ this.allPlanComponents = data.items - console.log(this.allPlanComponents) + // console.log(this.allPlanComponents) }) } //查看预案 @@ -1117,7 +1144,7 @@ export class LookPlanDialog { dialogRef.afterClosed().subscribe( data=>{ if(data){ - console.log(123,data) + // console.log(123,data) this.downloadFileName = data.fileName this.download = data this.downloadFile() @@ -1217,7 +1244,7 @@ export class DownloadFile { selectedFileData : any ngOnInit(): void { - console.log(this.data) + // console.log(this.data) this.name = this.data.name this.fileUrls = this.data.attachmentUrls this.fileUrls.forEach(item=>{ @@ -1241,7 +1268,7 @@ export class DownloadFile { //点击想要下载的文件 addurl(item,key){ - console.log(item,key) + // console.log(item,key) this.selectedFileIndex = key this.selectedFileData = item } diff --git a/src/app/key-unit/basicinfo/basicinfo.component.ts b/src/app/key-unit/basicinfo/basicinfo.component.ts index 8485907..06854d8 100644 --- a/src/app/key-unit/basicinfo/basicinfo.component.ts +++ b/src/app/key-unit/basicinfo/basicinfo.component.ts @@ -469,7 +469,7 @@ export class BasicinfoComponent implements OnInit { data[0].buildtype = n.name data[0].tongyong = true data[0].index = x.index - if(data[0].buildtype == "石油化工类"){ + if(data[0].buildtype == "石油化工类" || data[0].buildtype == "化工生产"){ data[0].tongyong = false data[0].isshiyou = true this.deviceinfodata = data[0].buildingBasicGroups[1].propertyInfos //存储装置信息的初始数据,需要转换成datasource形式 @@ -631,7 +631,7 @@ export class BasicinfoComponent implements OnInit { data[0].tongyong = true data[0].index = index - if(data[0].buildtype == "石油化工类"){ + if(data[0].buildtype == "石油化工类" || data[0].buildtype == "化工生产"){ data[0].tongyong = false data[0].isshiyou = true let noemptydeviceArr = data[0].buildingBasicGroups[1].propertyInfos @@ -890,7 +890,7 @@ export class BasicinfoComponent implements OnInit { data[0].username = n.name data[0].tongyong = true data[0].index = this.houses.length ////////////////// - if(data[0].buildtype == "石油化工类"){ + if(data[0].buildtype == "石油化工类" || data[0].buildtype == "化工生产"){ data[0].tongyong = false data[0].isshiyou = true //如果是石油化工则启用石油化工的模板 this.deviceinfodata = data[0].buildingBasicGroups[1].propertyInfos //存储装置信息表格的初始数据,需要转换成datasource形式 @@ -1470,7 +1470,7 @@ export class BasicinfoComponent implements OnInit { } - if(item.buildtype != "石油化工类" && item.buildtype != "地铁类"){ + if(item.buildtype != "石油化工类" && item.buildtype != "地铁类" && item.buildtype != "化工生产"){ // console.log(this.houses[key]) // console.log(value) this.houses[key].buildingBasicGroups[0].propertyInfos.forEach(item => { @@ -1522,7 +1522,7 @@ export class BasicinfoComponent implements OnInit { }) } } - if(item.buildtype == "石油化工类"){ + if(item.buildtype == "石油化工类" || item.buildtype == "化工生产"){ // console.log(888,item) let bodyObj = _.cloneDeep(item) delete bodyObj.name From d69dd80dc083c0a9d2c362edbc9c96895e8ce6f4 Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 13:05:26 +0800 Subject: [PATCH 05/11] =?UTF-8?q?[=E5=AE=8C=E5=96=84]=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=9F=B3=E6=B2=B9=E5=8C=96=E5=B7=A5=E6=A8=A1=E6=9D=BF=E5=88=A4?= =?UTF-8?q?=E5=88=AB=E8=8C=83=E5=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/key-unit/basicinfo-look/basicinfo.component.ts | 10 +++++----- src/app/key-unit/basicinfo/basicinfo.component.ts | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/app/key-unit/basicinfo-look/basicinfo.component.ts b/src/app/key-unit/basicinfo-look/basicinfo.component.ts index dc8a770..afb4dc2 100644 --- a/src/app/key-unit/basicinfo-look/basicinfo.component.ts +++ b/src/app/key-unit/basicinfo-look/basicinfo.component.ts @@ -383,7 +383,7 @@ export class BasicinfoLookComponent implements OnInit { data[0].buildtype = n.name data[0].tongyong = true data[0].index = x.index - if(data[0].buildtype == "石油化工类"){ + if(data[0].buildtype == "石油化工类" || data[0].buildtype.indexOf("化工") != -1 ){ data[0].tongyong = false data[0].isshiyou = true this.deviceinfodata = data[0].buildingBasicGroups[1].propertyInfos //存储装置信息的初始数据,需要转换成datasource形式 @@ -545,7 +545,7 @@ export class BasicinfoLookComponent implements OnInit { data[0].tongyong = true data[0].index = index - if(data[0].buildtype == "石油化工类"){ + if(data[0].buildtype.indexOf("储罐") != -1 || data[0].buildtype.indexOf("化工") != -1 ){ data[0].tongyong = false data[0].isshiyou = true let noemptydeviceArr = data[0].buildingBasicGroups[1].propertyInfos @@ -804,7 +804,7 @@ export class BasicinfoLookComponent implements OnInit { data[0].username = n.name data[0].tongyong = true data[0].index = this.houses.length ////////////////// - if(data[0].buildtype == "石油化工类"){ + if(data[0].buildtype.indexOf("储罐") != -1 || data[0].buildtype.indexOf("化工") != -1 ){ data[0].tongyong = false data[0].isshiyou = true //如果是石油化工则启用石油化工的模板 this.deviceinfodata = data[0].buildingBasicGroups[1].propertyInfos //存储装置信息表格的初始数据,需要转换成datasource形式 @@ -1360,7 +1360,7 @@ export class BasicinfoLookComponent implements OnInit { } - if(item.buildtype != "石油化工类" && item.buildtype != "地铁类"){ + if(item.buildtype.indexOf("储罐") == -1 && item.buildtype != "地铁类" && item.buildtype.indexOf("化工") == -1 ){ // console.log(this.houses[key]) // console.log(value) this.houses[key].buildingBasicGroups[0].propertyInfos.forEach(item => { @@ -1411,7 +1411,7 @@ export class BasicinfoLookComponent implements OnInit { }) } } - if(item.buildtype == "石油化工类"){ + if(item.buildtype.indexOf("储罐") != -1 || item.buildtype.indexOf("化工") != -1 ){ // console.log(888,item) let bodyObj = _.cloneDeep(item) delete bodyObj.name diff --git a/src/app/key-unit/basicinfo/basicinfo.component.ts b/src/app/key-unit/basicinfo/basicinfo.component.ts index 06854d8..4583dc2 100644 --- a/src/app/key-unit/basicinfo/basicinfo.component.ts +++ b/src/app/key-unit/basicinfo/basicinfo.component.ts @@ -469,7 +469,7 @@ export class BasicinfoComponent implements OnInit { data[0].buildtype = n.name data[0].tongyong = true data[0].index = x.index - if(data[0].buildtype == "石油化工类" || data[0].buildtype == "化工生产"){ + if(data[0].buildtype.indexOf('化工') != -1 || data[0].buildtype.indexOf('储罐') != -1){ data[0].tongyong = false data[0].isshiyou = true this.deviceinfodata = data[0].buildingBasicGroups[1].propertyInfos //存储装置信息的初始数据,需要转换成datasource形式 @@ -631,7 +631,7 @@ export class BasicinfoComponent implements OnInit { data[0].tongyong = true data[0].index = index - if(data[0].buildtype == "石油化工类" || data[0].buildtype == "化工生产"){ + if(data[0].buildtype.indexOf('化工') != -1 || data[0].buildtype.indexOf('储罐') != -1){ data[0].tongyong = false data[0].isshiyou = true let noemptydeviceArr = data[0].buildingBasicGroups[1].propertyInfos @@ -890,7 +890,7 @@ export class BasicinfoComponent implements OnInit { data[0].username = n.name data[0].tongyong = true data[0].index = this.houses.length ////////////////// - if(data[0].buildtype == "石油化工类" || data[0].buildtype == "化工生产"){ + if(data[0].buildtype.indexOf('化工') != -1 || data[0].buildtype.indexOf('储罐') != -1){ data[0].tongyong = false data[0].isshiyou = true //如果是石油化工则启用石油化工的模板 this.deviceinfodata = data[0].buildingBasicGroups[1].propertyInfos //存储装置信息表格的初始数据,需要转换成datasource形式 @@ -1470,7 +1470,7 @@ export class BasicinfoComponent implements OnInit { } - if(item.buildtype != "石油化工类" && item.buildtype != "地铁类" && item.buildtype != "化工生产"){ + if(item.buildtype.indexOf('化工') == -1 && item.buildtype != "地铁类" && item.buildtype.indexOf('储罐') == -1){ // console.log(this.houses[key]) // console.log(value) this.houses[key].buildingBasicGroups[0].propertyInfos.forEach(item => { @@ -1522,7 +1522,7 @@ export class BasicinfoComponent implements OnInit { }) } } - if(item.buildtype == "石油化工类" || item.buildtype == "化工生产"){ + if(item.buildtype.indexOf('化工') != -1 || item.buildtype.indexOf('储罐') != -1){ // console.log(888,item) let bodyObj = _.cloneDeep(item) delete bodyObj.name From a0b0212fcd1d26fef2398d3e82425223d61f1f2f Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 13:10:14 +0800 Subject: [PATCH 06/11] =?UTF-8?q?[=E5=AE=8C=E5=96=84]=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E5=8D=95=E4=BD=8D=E8=BF=9B=E5=85=A5=E6=97=B6=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/tabbar/tabbar.component.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/app/tabbar/tabbar.component.ts b/src/app/tabbar/tabbar.component.ts index 76fabdb..a9c253b 100644 --- a/src/app/tabbar/tabbar.component.ts +++ b/src/app/tabbar/tabbar.component.ts @@ -77,7 +77,9 @@ export class TabbarComponent implements OnInit { USCI : this.route.snapshot.queryParams.usci } this.http.get('/api/Companies',{params:params}).subscribe((data:any) => { - this.companyIntegrityScore = data.items[0].companyIntegrityScore + this.companyIntegrityScore ? + this.companyIntegrityScore = data.items[0].companyIntegrityScore : + null // console.log(data) }) } From 9bc04a400ed260246f3c3b7c164519bfe12166af Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 14:22:30 +0800 Subject: [PATCH 07/11] =?UTF-8?q?[=E4=BF=AE=E6=94=B9]=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=AF=BC=E8=88=AAlogo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/navigation/navigation.component.html | 2 +- src/app/navigation/navigation.component.scss | 4 +- src/app/ui/unittype/unittype.component.html | 106 ++++++++++--------- src/assets/images/h130.png | Bin 0 -> 33848 bytes 4 files changed, 57 insertions(+), 55 deletions(-) create mode 100644 src/assets/images/h130.png diff --git a/src/app/navigation/navigation.component.html b/src/app/navigation/navigation.component.html index 113eca0..81efc94 100644 --- a/src/app/navigation/navigation.component.html +++ b/src/app/navigation/navigation.component.html @@ -2,7 +2,7 @@
- +
- broken_image - + @@ -218,7 +217,7 @@
-
+
edit add library_books diff --git a/src/app/ui/collection-tools/collection-tools.component.scss b/src/app/ui/collection-tools/collection-tools.component.scss index 8b34d62..19402a6 100644 --- a/src/app/ui/collection-tools/collection-tools.component.scss +++ b/src/app/ui/collection-tools/collection-tools.component.scss @@ -4,7 +4,7 @@ } .content { width: 100%; - height: 93%; + height: 100%; overflow: hidden; box-sizing: border-box; padding: 1px; diff --git a/src/app/ui/collection-tools/collection-tools.component.ts b/src/app/ui/collection-tools/collection-tools.component.ts index d51b0c7..7bf0762 100644 --- a/src/app/ui/collection-tools/collection-tools.component.ts +++ b/src/app/ui/collection-tools/collection-tools.component.ts @@ -587,6 +587,13 @@ export class CollectionToolsComponent implements OnInit { this.gallery.update() }, 0); + //将上传的input框显示出来 + this.isImgNumCss = true; + //清除图片缓存 + if((document.getElementById('inputimg'))){ + (document.getElementById('inputimg')).value = null //清空input框缓存 + } + this.canvasData.isChange = true } } @@ -649,7 +656,7 @@ export class CollectionToolsComponent implements OnInit { let that = this window.setTimeout(()=>{ document.getElementById("functionalDomainContent").oncontextmenu = function (event) { - that.canvas.cancelPaint() + // that.canvas.cancelPaint() that.selectImageIndex = -1 event.preventDefault(); }; @@ -736,268 +743,275 @@ export class CollectionToolsComponent implements OnInit { //保存平面图 saveNum :any = [] saveSite(){ - console.log(this.beforeOneCheckedBuilding) - this.saveNum = [] - let SitePlanData = JSON.parse(JSON.stringify(this.canvasData.originaleveryStoreyData)); - SitePlanData.data = JSON.stringify(SitePlanData.data) - let CompanyData = JSON.parse(JSON.stringify(this.canvasData.originalcompanyBuildingData)); - CompanyData.data = JSON.stringify(CompanyData.data) - - let object = this.canvasData.originalcompanyBuildingData.data - let adjoinArr = [] //毗邻数组 - - if(this.pattern){//如果是基本信息编辑模式 - for (const key in object) { - if (object[key].Name == "毗邻") {//如果是相同楼层,则筛选出毗邻 - - object[key].PropertyInfos.forEach(element => { - if(element.PropertyName == "方向"){ - adjoinArr.push(element.PropertyValue) - } - }); + if (this.selectingSitePlan && this.selectingSitePlan.id) { + this.saveNum = [] + let SitePlanData = JSON.parse(JSON.stringify(this.canvasData.originaleveryStoreyData)); + SitePlanData.data = JSON.stringify(SitePlanData.data) + let CompanyData = JSON.parse(JSON.stringify(this.canvasData.originalcompanyBuildingData)); + CompanyData.data = JSON.stringify(CompanyData.data) + + let object = this.canvasData.originalcompanyBuildingData.data + let adjoinArr = [] //毗邻数组 + + if(this.pattern){//如果是基本信息编辑模式 + for (const key in object) { + if (object[key].Name == "毗邻") {//如果是相同楼层,则筛选出毗邻 + + object[key].PropertyInfos.forEach(element => { + if(element.PropertyName == "方向"){ + adjoinArr.push(element.PropertyValue) + } + }); + } } - } - - if((new Set(adjoinArr)).size != adjoinArr.length){ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.snackBar.open('保存失败,毗邻存在相同方向','确定',config); - return false - }else{ - //如果是单位 总平面图 - if(this.checkedBuildingIndex==-1){ - //保存平面图数据 - this.http.post("/api/SitePlanData",SitePlanData,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + + if((new Set(adjoinArr)).size != adjoinArr.length){ + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存失败,毗邻存在相同方向','确定',config); + return false + }else{ + //如果是单位 总平面图 + if(this.checkedBuildingIndex==-1){ + //保存平面图数据 + this.http.post("/api/SitePlanData",SitePlanData,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('平面图数据保存失败','确定',config); - }) - - //保存建筑数据 - this.http.post("/api/CompanyData",CompanyData,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('平面图数据保存失败','确定',config); + }) + + //保存建筑数据 + this.http.post("/api/CompanyData",CompanyData,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位数据保存失败','确定',config); - }) - - //批量保存单位毗邻 - let CompanyAdjoins = this.canvasData.getCompanyAdjoinInfo() - this.http.post("/api/CompanyAdjoins/Batch",CompanyAdjoins,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位数据保存失败','确定',config); + }) + + //批量保存单位毗邻 + let CompanyAdjoins = this.canvasData.getCompanyAdjoinInfo() + this.http.post("/api/CompanyAdjoins/Batch",CompanyAdjoins,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位毗邻保存失败','确定',config); - }) - - //批量保存单位重点部位 - let CompanyImportantLocations = this.canvasData.getCompanyImportantLocations() - this.http.post("/api/CompanyImportantLocations/Batch",CompanyImportantLocations,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位毗邻保存失败','确定',config); + }) + + //批量保存单位重点部位 + let CompanyImportantLocations = this.canvasData.getCompanyImportantLocations() + this.http.post("/api/CompanyImportantLocations/Batch",CompanyImportantLocations,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位重点部位保存失败','确定',config); - }) - - //批量保存单位消防设施素材 - let CompanyFacilityAssets = this.canvasData.getAllCompanyFacilityAssetInfo() - this.http.post("/api/CompanyFacilityAssets/Batch",CompanyFacilityAssets,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位重点部位保存失败','确定',config); + }) + + //批量保存单位消防设施素材 + let CompanyFacilityAssets = this.canvasData.getAllCompanyFacilityAssetInfo() + this.http.post("/api/CompanyFacilityAssets/Batch",CompanyFacilityAssets,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位消防设施素材保存失败','确定',config); - }) - - }else{ //如果是建筑 - - //建筑平面图数据 - this.http.post("/api/BuildingAreaData",SitePlanData,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位消防设施素材保存失败','确定',config); + }) + + }else{ //如果是建筑 + + //建筑平面图数据 + this.http.post("/api/BuildingAreaData",SitePlanData,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - 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.canvasData.isChange = false + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - 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.canvasData.isChange = false + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - 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.canvasData.isChange = false + this.canvasData.isChange = true + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - 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.canvasData.isChange = false + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('建筑消防设施素材保存失败','确定',config); - }) - + this.canvasData.isChange = true + this.snackBar.open('建筑消防设施素材保存失败','确定',config); + }) + + } } + }else{//如果是想定作业编辑模式 + const dialogRef = this.dialog.open(saveOneDialog, { + data: {allDisposalNode: this.canvasData.allDisposalNode, + selectedBuildingData:this.beforeOneCheckedBuilding, + selectedSiteData:this.selectingSitePlan, + siteOrbuilding:this.checkedBuildingIndex, + disasterId: this.allFirePlan[0].id || '' + } + }); + + dialogRef.afterClosed().subscribe(result => { + console.log('The dialog was closed'); + }); } - }else{//如果是想定作业编辑模式 - const dialogRef = this.dialog.open(saveOneDialog, { - data: {allDisposalNode: this.canvasData.allDisposalNode, - selectedBuildingData:this.beforeOneCheckedBuilding, - selectedSiteData:this.selectingSitePlan, - siteOrbuilding:this.checkedBuildingIndex, - disasterId: this.allFirePlan[0].id || '' - } - }); - - dialogRef.afterClosed().subscribe(result => { - console.log('The dialog was closed'); - }); + + } else { //if + const config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('暂无楼层数据','确定',config); } } @@ -1046,14 +1060,40 @@ export class CollectionToolsComponent implements OnInit { //选择建筑 checkedBuilding(item,index){ if (this.checkedBuildingIndex!=index) { - this.beforeOneCheckedBuilding = item - this.checkedBuildingIndex = index - if (index==-1) { //总平面图数据 - this.getSitePlan() - } else { //建筑楼层/区域数据 - this.getBuildingSitePlan(item) - } - } + + if (this.canvasData.isChange) { //true 数据被改动 + let isTrue = confirm('是否保存当前编辑数据') + if (isTrue) { //先保存数据 在切换 + let isSuccess = this.saveSite()//true的时候 先保存数据 + if (isSuccess != false) { + this.beforeOneCheckedBuilding = item + this.checkedBuildingIndex = index + if (index==-1) { //总平面图数据 + this.getSitePlan() + } else { //建筑楼层/区域数据 + this.getBuildingSitePlan(item) + } + } + } else { + this.beforeOneCheckedBuilding = item + this.checkedBuildingIndex = index + if (index==-1) { //总平面图数据 + this.getSitePlan() + } else { //建筑楼层/区域数据 + this.getBuildingSitePlan(item) + } + } + } else { //flase 数据未被改动 + this.beforeOneCheckedBuilding = item + this.checkedBuildingIndex = index + if (index==-1) { //总平面图数据 + this.getSitePlan() + } else { //建筑楼层/区域数据 + this.getBuildingSitePlan(item) + } + } //if + + } //if } //编辑建筑 @@ -1219,8 +1259,23 @@ export class CollectionToolsComponent implements OnInit {      } + const nodes = this.treeControl.dataNodes; + const expandNodes = []; + nodes.forEach((item) => { + if(item.expandable && this.treeControl.isExpanded(item)){ + expandNodes.push(item.id); + } + }); + this.dataSource.data = [...this.dataSource.data] - this.treeControl.expandAll() + + let newNodes = this.treeControl.dataNodes; + newNodes = newNodes.filter(n => { + return expandNodes.indexOf(n.id) >= 0; + }); + newNodes.forEach(item => { + this.treeControl.expand(item); + }); //canvas上的素材显隐 let iconVisibleArr:any = [] @@ -1468,8 +1523,11 @@ export class CollectionToolsComponent implements OnInit { this.canvasData.selectStorey = item //服务中 存一份数据 if (this.checkedBuildingIndex==-1) { //总平面图时 this.getSitePlanStorey(item) //获取 平面图 楼层数据 + this.getSitePlanCompanyData() } else { //楼层/区域时 this.getBuildingStorey(item) //获取 建筑 楼层数据 + let params = { buildingId: this.beforeOneCheckedBuilding.id } + this.getBuildingData(params) } } @@ -1644,6 +1702,7 @@ export class CollectionToolsComponent implements OnInit { this.selectingSitePlan = this.sitePlanData[0] || {} this.canvasData.selectStorey = this.sitePlanData[0] || {} //服务中 存一份数据 this.selectSitePlanIndex = 0 + this.canvasData.isChange = false if (isCompany===-1) { this.http.post("/api/CompanyData",newData).subscribe(data => {}) this.getSitePlanStorey(this.selectingSitePlan) //获取 平面图 楼层数据 @@ -1791,7 +1850,7 @@ export class CollectionToolsComponent implements OnInit { }); this.allLibrary = data this.selectImageIndex = -1 - this.canvas.cancelPaint() + // this.canvas.cancelPaint() }) } From 17cb00bb7d8184d33ad428a871ff6b95e48197c1 Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 15:43:51 +0800 Subject: [PATCH 10/11] =?UTF-8?q?[=E5=AE=8C=E5=96=84]=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E9=87=87=E9=9B=86=E5=B7=A5=E5=85=B7=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../collection-tools.component.html | 5 +- .../collection-tools.component.scss | 2 +- .../collection-tools.component.ts | 574 ++++++++++-------- 3 files changed, 318 insertions(+), 263 deletions(-) diff --git a/src/app/ui/collection-tools-plan/collection-tools.component.html b/src/app/ui/collection-tools-plan/collection-tools.component.html index 7fcb68b..a9b6647 100644 --- a/src/app/ui/collection-tools-plan/collection-tools.component.html +++ b/src/app/ui/collection-tools-plan/collection-tools.component.html @@ -41,7 +41,7 @@
tv - create + create description
@@ -135,8 +135,7 @@
- broken_image - + diff --git a/src/app/ui/collection-tools-plan/collection-tools.component.scss b/src/app/ui/collection-tools-plan/collection-tools.component.scss index 06f15a5..1ec5d7d 100644 --- a/src/app/ui/collection-tools-plan/collection-tools.component.scss +++ b/src/app/ui/collection-tools-plan/collection-tools.component.scss @@ -4,7 +4,7 @@ } .content { width: 100%; - height: 93%; + height: 100%; overflow: hidden; box-sizing: border-box; padding: 1px; 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 9234ef4..9147fb5 100644 --- a/src/app/ui/collection-tools-plan/collection-tools.component.ts +++ b/src/app/ui/collection-tools-plan/collection-tools.component.ts @@ -149,10 +149,6 @@ export class CollectionToolsPlanComponent implements OnInit { } pattern:boolean = true//默认为基本信息编辑 - - yyy(){ - console.log(this.canvasData.selectPanelPoint) - } //基本信息编辑模式 baseInfo(){ if (!this.pattern) { @@ -223,14 +219,11 @@ export class CollectionToolsPlanComponent implements OnInit { targetNodeData.forEach(i => { idArr.push(i.id) }) - console.log(6666666666666,event); if(this.pos == 0 && event.node.origin.children.length == 1){ - console.log("移入,没有兄弟") let key = event.dragNode.key orders[key] = 0 parentId = event.node.key }else{ - console.log("移入,多个兄弟") let array = [] targetNodeData.forEach(item => { if(item.id != event.dragNode.key){ //将拖动项先移除掉 @@ -238,13 +231,10 @@ export class CollectionToolsPlanComponent implements OnInit { } }) if(event.dragNode.isEnd[event.dragNode.isEnd.length - 1]){ //如果移入到最后一个 - console.log("最后") array.push(event.dragNode.origin) }else if(event.dragNode.isStart[event.dragNode.isStart.length - 1]){//如果移入到第一个 - console.log("第一") array.unshift(event.dragNode.origin) }else{//如果移入中间位置 - console.log("中间") array.splice(event.node.origin.order, 0, event.dragNode.origin) } array.forEach((item,key) => { @@ -580,6 +570,13 @@ export class CollectionToolsPlanComponent implements OnInit { this.gallery.update() }, 0); + //将上传的input框显示出来 + this.isImgNumCss = true; + //清除图片缓存 + if((document.getElementById('inputimg'))){ + (document.getElementById('inputimg')).value = null //清空input框缓存 + } + this.canvasData.isChange = true } } @@ -614,11 +611,9 @@ export class CollectionToolsPlanComponent implements OnInit { isSixShow = true isSixbtn = true //控制想定作业编辑按钮 - isxxx = true //控制查看编辑模式的编辑模式按钮 + isediticon = true //控制查看编辑模式的编辑模式小笔按钮 ngOnInit(): void { - console.log(this.route,2,this.router.url) - if(this.router.url.indexOf("keyUnit/viewunitinfo") != -1 || this.router.url.indexOf("keyUnit/editplaninfo")!= -1){ this.isSixbtn = false } @@ -628,17 +623,22 @@ export class CollectionToolsPlanComponent implements OnInit { } if(!this.isSixbtn && sessionStorage.getItem("six") == "look"){ this.isEditPattern = false - this.isxxx = false + this.isediticon = false + } + //gis模块平面图 + if(this.router.url.indexOf("gis") != -1 && sessionStorage.getItem("gisplan") == "look"){ + this.isEditPattern = false + this.isediticon = false + this.canvasData.gameMode = GameMode.Assignment + } else { + this.getAllLibrary() //获取素材库 + this.getAllBuildings() //获取所有建筑 } - - this.getAllLibrary() //获取素材库 - this.getAllBuildings() //获取所有建筑 - // this.getAllFirePlan() //获取当前单位灾情 let that = this window.setTimeout(()=>{ document.getElementById("functionalDomainContent").oncontextmenu = function (event) { - that.canvas.cancelPaint() + // that.canvas.cancelPaint() that.selectImageIndex = -1 event.preventDefault(); }; @@ -654,7 +654,10 @@ export class CollectionToolsPlanComponent implements OnInit { ngAfterViewInit(): void { - this.getSitePlan() + //gis模块平面图 + if(this.router.url.indexOf("gis") == -1) { + this.getSitePlan() + } // 监听canvas组件选中素材事件 this.canvas.on("select",obj=>{ //选中素材属性注入函数 @@ -723,268 +726,276 @@ export class CollectionToolsPlanComponent implements OnInit { //保存平面图 saveNum :any = [] saveSite(){ - console.log(this.beforeOneCheckedBuilding) - this.saveNum = [] - let SitePlanData = JSON.parse(JSON.stringify(this.canvasData.originaleveryStoreyData)); - SitePlanData.data = JSON.stringify(SitePlanData.data) - let CompanyData = JSON.parse(JSON.stringify(this.canvasData.originalcompanyBuildingData)); - CompanyData.data = JSON.stringify(CompanyData.data) - - let object = this.canvasData.originalcompanyBuildingData.data - let adjoinArr = [] //毗邻数组 - - if(this.pattern){//如果是基本信息编辑模式 - for (const key in object) { - if (object[key].Name == "毗邻") {//如果是相同楼层,则筛选出毗邻 - - object[key].PropertyInfos.forEach(element => { - if(element.PropertyName == "方向"){ - adjoinArr.push(element.PropertyValue) - } - }); + if (this.selectingSitePlan && this.selectingSitePlan.id) { + + this.saveNum = [] + let SitePlanData = JSON.parse(JSON.stringify(this.canvasData.originaleveryStoreyData)); + SitePlanData.data = JSON.stringify(SitePlanData.data) + let CompanyData = JSON.parse(JSON.stringify(this.canvasData.originalcompanyBuildingData)); + CompanyData.data = JSON.stringify(CompanyData.data) + + let object = this.canvasData.originalcompanyBuildingData.data + let adjoinArr = [] //毗邻数组 + + if(this.pattern){//如果是基本信息编辑模式 + for (const key in object) { + if (object[key].Name == "毗邻") {//如果是相同楼层,则筛选出毗邻 + + object[key].PropertyInfos.forEach(element => { + if(element.PropertyName == "方向"){ + adjoinArr.push(element.PropertyValue) + } + }); + } } - } - - if((new Set(adjoinArr)).size != adjoinArr.length){ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.snackBar.open('保存失败,毗邻存在相同方向','确定',config); - return false - }else{ - //如果是单位 总平面图 - if(this.checkedBuildingIndex==-1){ - //保存平面图数据 - this.http.post("/api/SitePlanData",SitePlanData,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + + if((new Set(adjoinArr)).size != adjoinArr.length){ + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存失败,毗邻存在相同方向','确定',config); + return false + }else{ + //如果是单位 总平面图 + if(this.checkedBuildingIndex==-1){ + //保存平面图数据 + this.http.post("/api/SitePlanData",SitePlanData,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('平面图数据保存失败','确定',config); - }) - - //保存建筑数据 - this.http.post("/api/CompanyData",CompanyData,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('平面图数据保存失败','确定',config); + }) + + //保存建筑数据 + this.http.post("/api/CompanyData",CompanyData,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位数据保存失败','确定',config); - }) - - //批量保存单位毗邻 - let CompanyAdjoins = this.canvasData.getCompanyAdjoinInfo() - this.http.post("/api/CompanyAdjoins/Batch",CompanyAdjoins,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位数据保存失败','确定',config); + }) + + //批量保存单位毗邻 + let CompanyAdjoins = this.canvasData.getCompanyAdjoinInfo() + this.http.post("/api/CompanyAdjoins/Batch",CompanyAdjoins,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位毗邻保存失败','确定',config); - }) - - //批量保存单位重点部位 - let CompanyImportantLocations = this.canvasData.getCompanyImportantLocations() - this.http.post("/api/CompanyImportantLocations/Batch",CompanyImportantLocations,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位毗邻保存失败','确定',config); + }) + + //批量保存单位重点部位 + let CompanyImportantLocations = this.canvasData.getCompanyImportantLocations() + this.http.post("/api/CompanyImportantLocations/Batch",CompanyImportantLocations,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位重点部位保存失败','确定',config); - }) - - //批量保存单位消防设施素材 - let CompanyFacilityAssets = this.canvasData.getAllCompanyFacilityAssetInfo() - this.http.post("/api/CompanyFacilityAssets/Batch",CompanyFacilityAssets,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位重点部位保存失败','确定',config); + }) + + //批量保存单位消防设施素材 + let CompanyFacilityAssets = this.canvasData.getAllCompanyFacilityAssetInfo() + this.http.post("/api/CompanyFacilityAssets/Batch",CompanyFacilityAssets,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('单位消防设施素材保存失败','确定',config); - }) - - }else{ //如果是建筑 - - //建筑平面图数据 - this.http.post("/api/BuildingAreaData",SitePlanData,{ - params:{ - companyId:this.params.companyId - } - }).subscribe(data => { - this.saveNum.push("1") - if(this.saveNum.length == 5){ - this.canvasData.isChange = false + this.canvasData.isChange = true + this.snackBar.open('单位消防设施素材保存失败','确定',config); + }) + + }else{ //如果是建筑 + + //建筑平面图数据 + this.http.post("/api/BuildingAreaData",SitePlanData,{ + params:{ + companyId:this.params.companyId + } + }).subscribe(data => { + this.saveNum.push("1") + if(this.saveNum.length == 5){ + this.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - 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.canvasData.isChange = false + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - 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.canvasData.isChange = false + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - 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.canvasData.isChange = false + this.canvasData.isChange = true + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - 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.canvasData.isChange = false + 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.canvasData.isChange = false + let config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('保存成功','确定',config); + } + },err=>{ let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); - } - },err=>{ - let config = new MatSnackBarConfig(); - config.verticalPosition = 'top'; - config.duration = 3000 - this.canvasData.isChange = true - this.snackBar.open('建筑消防设施素材保存失败','确定',config); - }) - + this.canvasData.isChange = true + this.snackBar.open('建筑消防设施素材保存失败','确定',config); + }) + + } } + }else{//如果是想定作业编辑模式 + const dialogRef = this.dialog.open(saveOneDialogPlan, { + data: {allDisposalNode: this.canvasData.allDisposalNode, + selectedBuildingData:this.beforeOneCheckedBuilding, + selectedSiteData:this.selectingSitePlan, + siteOrbuilding:this.checkedBuildingIndex, + disasterId: this.allFirePlan[0].id || '' + } + }); + + dialogRef.afterClosed().subscribe(result => { + console.log('The dialog was closed'); + }); } - }else{//如果是想定作业编辑模式 - const dialogRef = this.dialog.open(saveOneDialogPlan, { - data: {allDisposalNode: this.canvasData.allDisposalNode, - selectedBuildingData:this.beforeOneCheckedBuilding, - selectedSiteData:this.selectingSitePlan, - siteOrbuilding:this.checkedBuildingIndex, - disasterId: this.allFirePlan[0].id || '' - } - }); - - dialogRef.afterClosed().subscribe(result => { - console.log('The dialog was closed'); - }); + + } else { //if + const config = new MatSnackBarConfig(); + config.verticalPosition = 'top'; + config.duration = 3000 + this.snackBar.open('暂无楼层数据','确定',config); } } @@ -1033,14 +1044,40 @@ export class CollectionToolsPlanComponent implements OnInit { //选择建筑 checkedBuilding(item,index){ if (this.checkedBuildingIndex!=index) { - this.beforeOneCheckedBuilding = item - this.checkedBuildingIndex = index - if (index==-1) { //总平面图数据 - this.getSitePlan() - } else { //建筑楼层/区域数据 - this.getBuildingSitePlan(item) - } - } + + if (this.canvasData.isChange) { //true 数据被改动 + let isTrue = confirm('是否保存当前编辑数据') + if (isTrue) { //先保存数据 在切换 + let isSuccess = this.saveSite()//true的时候 先保存数据 + if (isSuccess != false) { + this.beforeOneCheckedBuilding = item + this.checkedBuildingIndex = index + if (index==-1) { //总平面图数据 + this.getSitePlan() + } else { //建筑楼层/区域数据 + this.getBuildingSitePlan(item) + } + } + } else { + this.beforeOneCheckedBuilding = item + this.checkedBuildingIndex = index + if (index==-1) { //总平面图数据 + this.getSitePlan() + } else { //建筑楼层/区域数据 + this.getBuildingSitePlan(item) + } + } + } else { //flase 数据未被改动 + this.beforeOneCheckedBuilding = item + this.checkedBuildingIndex = index + if (index==-1) { //总平面图数据 + this.getSitePlan() + } else { //建筑楼层/区域数据 + this.getBuildingSitePlan(item) + } + } //if + + } //if } //编辑建筑 @@ -1206,8 +1243,23 @@ export class CollectionToolsPlanComponent implements OnInit {      } + const nodes = this.treeControl.dataNodes; + const expandNodes = []; + nodes.forEach((item) => { + if(item.expandable && this.treeControl.isExpanded(item)){ + expandNodes.push(item.id); + } + }); + this.dataSource.data = [...this.dataSource.data] - this.treeControl.expandAll() + + let newNodes = this.treeControl.dataNodes; + newNodes = newNodes.filter(n => { + return expandNodes.indexOf(n.id) >= 0; + }); + newNodes.forEach(item => { + this.treeControl.expand(item); + }); //canvas上的素材显隐 let iconVisibleArr:any = [] @@ -1456,8 +1508,11 @@ export class CollectionToolsPlanComponent implements OnInit { this.canvasData.selectStorey = item //服务中 存一份数据 if (this.checkedBuildingIndex==-1) { //总平面图时 this.getSitePlanStorey(item) //获取 平面图 楼层数据 + this.getSitePlanCompanyData() } else { //楼层/区域时 this.getBuildingStorey(item) //获取 建筑 楼层数据 + let params = { buildingId: this.beforeOneCheckedBuilding.id } + this.getBuildingData(params) } } @@ -1632,6 +1687,7 @@ export class CollectionToolsPlanComponent implements OnInit { this.selectingSitePlan = this.sitePlanData[0] || {} this.canvasData.selectStorey = this.sitePlanData[0] || {} //服务中 存一份数据 this.selectSitePlanIndex = 0 + this.canvasData.isChange = false if (isCompany===-1) { this.http.post("/api/CompanyData",newData).subscribe(data => {}) this.getSitePlanStorey(this.selectingSitePlan) //获取 平面图 楼层数据 @@ -1779,7 +1835,7 @@ export class CollectionToolsPlanComponent implements OnInit { }); this.allLibrary = data this.selectImageIndex = -1 - this.canvas.cancelPaint() + // this.canvas.cancelPaint() }) } From ae61834cf857339576490ed2dcd1eeaa8daa98a6 Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Mon, 28 Dec 2020 16:13:47 +0800 Subject: [PATCH 11/11] =?UTF-8?q?[=E5=AE=8C=E5=96=84]=E5=AE=8C=E5=96=84?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/plan-audit/plan-pass/plan-pass.component.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/app/plan-audit/plan-pass/plan-pass.component.html b/src/app/plan-audit/plan-pass/plan-pass.component.html index c7ce4a5..f37ffb1 100644 --- a/src/app/plan-audit/plan-pass/plan-pass.component.html +++ b/src/app/plan-audit/plan-pass/plan-pass.component.html @@ -1,3 +1,4 @@ + @@ -28,7 +29,7 @@ -
+