diff --git a/src/app/data-collection/fire-force/fire-force.component.ts b/src/app/data-collection/fire-force/fire-force.component.ts
index 02b6199..ba19d96 100644
--- a/src/app/data-collection/fire-force/fire-force.component.ts
+++ b/src/app/data-collection/fire-force/fire-force.component.ts
@@ -398,7 +398,7 @@ export class FireForceComponent implements OnInit {
personCountData:[],//人员数量自定义
contactData:[],//联系方式自定义
dutyForceData:[],//执勤力量自定义
- RelevantInfomationData:[]//相关资料
+ relevantInfomationData:[]//相关资料
}
//总队支队人员数量
ZongpersonCountData:any=[
@@ -474,7 +474,7 @@ export class FireForceComponent implements OnInit {
personCountData:[],//人员数量自定义
contactData:[],//联系方式自定义
dutyForceData:[],//执勤力量自定义
- RelevantInfomationData:[]//相关资料
+ relevantInfomationData:[]//相关资料
}
this.ZongpersonCountData = [
{PropertyName :'现役官兵人数',PropertyValue:''},
@@ -571,7 +571,8 @@ export class FireForceComponent implements OnInit {
}
this.FireForceDetailInfo.jurisdictionArea = Number(this.FireForceDetailInfo.jurisdictionArea)
- this.FireForceDetailInfo.RelevantInfomationData = JSON.stringify(this.AttachmentArr)
+ this.FireForceDetailInfo.relevantInfomationData = JSON.stringify(this.AttachmentArr)
+ console.log(1111,this.FireForceDetailInfo)
//如果是总支大中
this.FireForceDetailInfo.location = {x:'',y:''}
if(this.atLastPositionLngLat.x){
@@ -598,6 +599,7 @@ export class FireForceComponent implements OnInit {
this.FireForceDetailInfo.contactData = JSON.stringify(this.DaZhongcontactData)
this.FireForceDetailInfo.dutyForceData = null
}
+ console.log('body',body)
this.http.put(`/api/FireForceDetail/0/${this.selectedFireForce.id}`,body).subscribe(data => {
let config = new MatSnackBarConfig();
config.verticalPosition = 'top';
diff --git a/src/app/data-collection/linkage-forces/linkage-forces.component.ts b/src/app/data-collection/linkage-forces/linkage-forces.component.ts
index 41b9dc8..22e7a19 100644
--- a/src/app/data-collection/linkage-forces/linkage-forces.component.ts
+++ b/src/app/data-collection/linkage-forces/linkage-forces.component.ts
@@ -404,7 +404,7 @@ export class LinkageForcesComponent implements OnInit {
}
this.LinkageForceDetailInfo.location = {x:'',y:''}
- this.LinkageForceDetailInfo.RelevantInfomationData = JSON.stringify(this.AttachmentArr)
+ this.LinkageForceDetailInfo.relevantInfomationData = JSON.stringify(this.AttachmentArr)
if(this.atLastPositionLngLat.x){
this.LinkageForceDetailInfo.location.x = this.atLastPositionLngLat.x
this.LinkageForceDetailInfo.location.y = this.atLastPositionLngLat.y
diff --git a/src/app/data-collection/water-collection/water-collection.component.scss b/src/app/data-collection/water-collection/water-collection.component.scss
index be9e19f..774617c 100644
--- a/src/app/data-collection/water-collection/water-collection.component.scss
+++ b/src/app/data-collection/water-collection/water-collection.component.scss
@@ -129,7 +129,7 @@
height: 20px;
cursor: pointer;
font-size: 20px;
- vertical-align: text-top;
+ vertical-align: middle;
color: rgba(49, 46, 46, 0.144);
}
mat-icon:hover{
diff --git a/src/app/data-collection/water-collection/water-collection.component.ts b/src/app/data-collection/water-collection/water-collection.component.ts
index 5ae2c34..7cdea43 100644
--- a/src/app/data-collection/water-collection/water-collection.component.ts
+++ b/src/app/data-collection/water-collection/water-collection.component.ts
@@ -407,6 +407,7 @@ export class WaterCollectionComponent implements OnInit {
this.waterData.location.x = this.atLastPositionLngLat.x
this.waterData.location.y = this.atLastPositionLngLat.y
}
+ console.log(666,this.waterData)
this.http.put(`/api/WaterSources/${this.waterData.id}`,this.waterData).subscribe(data => {
const config = new MatSnackBarConfig();
config.verticalPosition = 'top';
diff --git a/src/app/key-unit/basicinfo-look/basicinfo.component.html b/src/app/key-unit/basicinfo-look/basicinfo.component.html
index 2cd6ccb..92548a9 100644
--- a/src/app/key-unit/basicinfo-look/basicinfo.component.html
+++ b/src/app/key-unit/basicinfo-look/basicinfo.component.html
@@ -188,7 +188,7 @@
1级
2级
3级
- 其他
+ 其它
@@ -278,7 +278,7 @@
1级
2级
3级
- 其他
+ 其它
diff --git a/src/app/key-unit/basicinfo/basicinfo.component.html b/src/app/key-unit/basicinfo/basicinfo.component.html
index 13d7609..85224ea 100644
--- a/src/app/key-unit/basicinfo/basicinfo.component.html
+++ b/src/app/key-unit/basicinfo/basicinfo.component.html
@@ -218,7 +218,7 @@
1级
2级
3级
- 其他
+ 其它
@@ -308,7 +308,7 @@
1级
2级
3级
- 其他
+ 其它
diff --git a/src/app/plan-audit/fireforce-audit/fireforce-audit.component.html b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.html
new file mode 100644
index 0000000..070bd78
--- /dev/null
+++ b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.html
@@ -0,0 +1,453 @@
+
+
+
+
+
+
+
+
+ 请等待...
+
+
+
+ 下载中...({{progressBarValue}}%)
+
+
+
+
+
+
+
+
+
+
+
{{item.fileName}}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/plan-audit/fireforce-audit/fireforce-audit.component.scss b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.scss
new file mode 100644
index 0000000..e34a82a
--- /dev/null
+++ b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.scss
@@ -0,0 +1,265 @@
+.box{
+ width: 100%;
+ height: 100%;
+ background-color: #F2F4F6;
+ display: flex;
+ box-sizing: border-box;
+ font-size: 16px;
+ font-weight: 400;
+ color: #000000;
+}
+
+.mapbox{
+ flex: 1;
+ background-color: #fff;
+ display: flex;
+ flex-direction: column;
+ #container{
+ width: 100%;
+ height: 200px;
+ }
+ .detailsbox{
+ width: 100%;
+ height:500px;
+ position: relative;
+ .tabsbox{
+ width: 100%;
+ height: 40px;
+ overflow: hidden;
+ overflow-x: auto;
+ line-height: 40px;
+ display: flex;
+ justify-content: space-between;
+ font-size: 15px;
+ .tabs{
+ div{
+ float: left;
+ width: 120px;
+ text-align: center;
+ cursor: pointer;
+ color: #000000;
+ opacity: 0.4;
+ border-right: 1px solid #F2F4F6;
+ }
+ .selectedBtn{
+ background-color: #2196F3;
+ color: #fff;
+ opacity: 1;
+ }
+ }
+ .btnbox{
+ display: flex;
+ align-items: center;
+ .uploadAttachment{
+ display: inline-block;
+ margin-right: 20px;
+ width: 120px;
+ text-align: center;
+ height: 28px;
+ line-height: 28px;
+ position: relative;
+ button{
+ width: 100%;
+ height: 28px;
+ line-height: 28px;
+ mat-icon{
+ transform: rotate(25deg);
+ font-size: 20px;
+ width: 20px;
+ height: 20px;
+ }
+ }
+ .a-upload{
+ display: inline-block;
+ position: absolute;
+ left: 0;
+ top: 0;
+ display: inline-block;
+ width: 100%;
+ height: 100%;
+ opacity: 0;
+ input{
+ width: 100%;
+ height: 100%;
+ cursor: pointer;
+ }
+ }
+ }
+ span{
+ display: inline-block;
+ cursor: pointer;
+ color: #2196F3;
+ mat-icon{
+ vertical-align: sub;
+ font-size: 20px;
+ width: 20px;
+ height: 20px;
+ }
+ }
+ span:hover{
+ text-decoration: underline;
+ }
+ .submitAudit{
+ margin: 0 30px;
+ }
+ .close{
+ margin-right: 30px;
+ }
+ }
+ }
+ .contant{
+ width: 100%;
+ height:460px;
+ overflow-y: auto;
+ p{
+ color: #2196F3;
+ background-color: #F2F4F6;
+ height: 33px;
+ line-height: 33px;
+ box-sizing: border-box;
+ padding-left: 20px;
+ font-size: 15px;
+ }
+ span{
+ font-size: 15px;
+ }
+ input,select{
+ height: 30px;
+ line-height: 30px;
+ box-sizing: border-box;
+ padding: 0 12px;
+ width: 60%;
+ margin-left: 5px;
+ border: 1px solid #EBEBEB;
+ border-radius: 5px;
+ }
+ textarea{
+ width: 89%;
+ margin-left: 5px;
+ height: 85%;
+ border: 1px solid #EBEBEB;
+ border-radius: 5px;
+ }
+ .longinput{
+ width: 74%;
+ }
+ .unitDiv{
+ width: 60%;
+ position: relative;
+ input,select{
+ width: 100%;
+ box-sizing: border-box;
+ padding-right: 50px;
+ }
+ .unit{
+ position: absolute;
+ right: 13px;
+ top: 4px;
+ color: #000000;
+ opacity: 0.4;
+ }
+ }
+ .smallwidth{
+ width: 30%;
+ }
+ // 相关资料
+ .fileDivBox{
+ position: relative;
+ float: left;
+ border: 1px solid #EBEBEB;
+ width: 160px;
+ height: 162px;
+ box-sizing: border-box;
+ padding: 16px 16px 0;
+ display: flex;
+ flex-direction: column;
+ margin: 12px;
+ align-items: center;
+ cursor: pointer;
+ .imgbox{
+ width: 134px;
+ height: 110px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ .thumbnailImg{
+ width: 134px;
+ height: 110px;
+ }
+ }
+
+ span{
+ width: 100%;
+ text-align: center;
+ margin-top: 5px;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ color: gray;
+ font-size: 14px;
+ }
+ .deleteFile{
+ position: absolute;
+ right: 0;
+ top: 0;
+ width: 18px;
+ height: 18px;
+ font-size: 18px;
+ display: none;
+ }
+ .btn{
+ position: absolute;
+ height: 30px;
+ line-height: 30px;
+ font-size: 14px;
+ display: none;
+ }
+ .btn1{
+ top: 37px;
+ }
+ .btn2{
+ top: 78px;
+ }
+ }
+ .fileDivBox:hover{
+ border: 1px solid #000;
+ .deleteFile{
+ display: block;
+
+ }
+ .deleteFile:hover{
+ color: red;
+ }
+ .btn{
+ display: block;
+ }
+ }
+ }
+ .masklayer{
+ position: absolute;
+ left: 0;
+ top: 0;
+ z-index: 2000;
+ width: 100%;
+ height: 100%;
+ background: rgba(0,0,0,0.2);
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ flex-direction: column;
+ span{
+ font-size: 14px;
+ margin-top: 5px;
+ }
+ .progressbar{
+ width: 15%;
+ }
+ .cancelbtn{
+ height: 32px;
+ line-height: 32px;
+ font-size: 14px;
+ margin-top: 12px;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/app/plan-audit/fireforce-audit/fireforce-audit.component.spec.ts b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.spec.ts
new file mode 100644
index 0000000..2335a75
--- /dev/null
+++ b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { FireforceAuditComponent } from './fireforce-audit.component';
+
+describe('FireforceAuditComponent', () => {
+ let component: FireforceAuditComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ FireforceAuditComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(FireforceAuditComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/plan-audit/fireforce-audit/fireforce-audit.component.ts b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.ts
new file mode 100644
index 0000000..756937d
--- /dev/null
+++ b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.ts
@@ -0,0 +1,232 @@
+import { HttpClient } from '@angular/common/http';
+import { Component, OnInit } from '@angular/core';
+import { MatSnackBar } from '@angular/material/snack-bar';
+import Viewer from 'viewerjs'
+declare var CryptoJS
+declare var AMap: any;
+@Component({
+ selector: 'app-fireforce-audit',
+ templateUrl: './fireforce-audit.component.html',
+ styleUrls: ['./fireforce-audit.component.scss']
+})
+export class FireforceAuditComponent implements OnInit {
+
+ constructor(public snackBar: MatSnackBar,private http:HttpClient) { }
+ selectedFireForceLevel:any = 0
+
+ FireForceDetailInfo:any = {
+ id: "600144ffe7036e11b8121684",
+ stationName: "上海总队",
+ isIndependentAlarm: true,
+ phoneNumber: "13864340193",
+ faxNumber: "120",
+ jurisdictionArea: 999,
+ remark: "暂无备注",
+ address: "齐鲁树谷",
+ location: {
+ x:0,
+ y:0
+ },
+ personCountData: "[{\"PropertyName\":\"现役官兵人数\",\"PropertyValue\":\"1\"},{\"PropertyName\":\"政府专职消防员数\",\"PropertyValue\":\"2\"},{\"PropertyName\":\"消防文员数\",\"PropertyValue\":\"3\"}]",
+ personCountItems: null,
+ contactData: "[{\"PropertyName\":\"总队长名称\",\"PropertyValue\":\"4\"},{\"PropertyName\":\"总队长联系方式\",\"PropertyValue\":\"5\"},{\"PropertyName\":\"总队政委名称\",\"PropertyValue\":\"6\"},{\"PropertyName\":\"总队政委联系方式\",\"PropertyValue\":\"7\"}]",
+ contactItems: null,
+ dutyForceData: null,
+ dutyForceItems: null,
+ relevantInfomationData: null,
+ integrityScore: 0,
+ integrityTotalCount: 0,
+ integrityNotEmptyCount: 0,
+ RelevantInfomationData:"[{\"objectName\":\"FireForce/1/601b69697cea2c03587c4c6d.png\",\"fileName\":\"楼层区域.png\",\"fileLength\":4079},{\"objectName\":\"FireForce/1/601b696e7cea2c03587c4c6e.mp4\",\"fileName\":\"李志 《天空之城》.mp4\",\"fileLength\":56362628},{\"objectName\":\"FireForce/1/601b69867cea2c03587c4c6f.docx\",\"fileName\":\"完整度规划20200724.docx\",\"fileLength\":16480}]"
+ }
+
+ ZongpersonCountData
+ ZongcontactData
+ ZhicontactData
+ DaZhongpersonCountData
+ DaZhongcontactData
+ othercontactData
+ otherpersonCountData
+ AttachmentArr
+ ngOnInit(): void {
+ this.ZongpersonCountData = JSON.parse(this.FireForceDetailInfo.personCountData)
+ this.ZongcontactData = JSON.parse(this.FireForceDetailInfo.contactData)
+ this.ZhicontactData = JSON.parse(this.FireForceDetailInfo.contactData)
+ this.DaZhongpersonCountData = JSON.parse(this.FireForceDetailInfo.personCountData)
+ this.DaZhongcontactData = JSON.parse(this.FireForceDetailInfo.contactData)
+ this.othercontactData = JSON.parse(this.FireForceDetailInfo.contactData)
+ this.otherpersonCountData = JSON.parse(this.FireForceDetailInfo.personCountData)
+ this.AttachmentArr = JSON.parse(this.FireForceDetailInfo.RelevantInfomationData)
+
+ setTimeout(() => {
+ this.map = new AMap.Map('container', {
+ zoom:18
+ })
+
+ if(this.FireForceDetailInfo.location && this.FireForceDetailInfo.location.x){
+ this.map.setCenter([this.FireForceDetailInfo.location.x,this.FireForceDetailInfo.location.y]);
+ this.newPositionMarker = new AMap.Marker({
+ position: [this.FireForceDetailInfo.location.x,this.FireForceDetailInfo.location.y],
+ content: this.newPositionMarkerContent,
+ offset: new AMap.Pixel(-10, -12)
+ })
+ // 将 markers 添加到地图
+ this.map.add(this.newPositionMarker);
+ }else{
+ this.map.setCity('上海市');
+ }
+
+ }, 0);
+ }
+ map:any
+ newPositionMarker:any
+ newPositionMarkerContent:any =
+ '' +
+ '

' +
+ '
'
+ //当前点击tab页面第几个
+ tabIndex:any = 1
+ selectedTab(index){
+ this.tabIndex = index
+ }
+
+
+ //上传附件
+ objectName:any
+ isMasklayer:boolean = false//圆圈遮罩层是否打开
+ isMasklayerDownload:boolean = false//下载进度条遮罩层是否打开
+ progressBarValue:any = 0//分块上传进度
+
+ //下载
+ download (e) {
+ this.isMasklayerDownload = true //开启下载进度条
+ let file = e //传递过来的文件元数据
+ let fileSize = file.fileLength //下载文件的总大小
+ let shardSize = 3 * 1024 * 1024 //文件大小是否大于10MB
+ if (file && fileSize<=shardSize) { //<=3MB时直接下载
+ this.progressBarValue = 60
+ this.http.get(`/api/Objects/PlanPlatform/${e.objectName}`,{responseType: 'blob'},).subscribe(data=>{
+ let url = window.URL.createObjectURL(new Blob([data])); //createObjectURL创建一个下载Blob的url地址
+ let link = document.createElement("a");
+ link.style.display = "none";
+ link.href = url;
+ let fileName = e.fileName ? e.fileName : e.objectName.split('/')[e.objectName.split('/').length-1]
+ link.setAttribute("download", fileName);
+ document.body.appendChild(link);
+ link.click();
+ this.isMasklayerDownload = false //关闭下载进度条
+ this.progressBarValue = 0 //初始化进度条
+ })
+ } else if (file && fileSize>shardSize) { //>3MB时分块下载
+ this.blockingDownload(e) //分段下载
+ }
+
+ }
+
+ //分段下载并合并
+ async blockingDownload (e) {
+ let file = e //传递过来的文件元数据
+ let fileSize = file.fileLength //下载文件的总大小
+ let shardSize = 3 * 1024 * 1024 //3MB一个分片
+ let allSlice = Math.ceil(fileSize / shardSize) //总文件/3MB===共分多少段
+ let allFile:any = [] //所有的file分段
+
+ for (let i=0;i{
+ this.http.get(`/api/Objects/PlanPlatform/${e.objectName}`,{headers:{'range':`bytes= ${start}-${end}`},responseType:'blob'}).subscribe(data=>{
+ result(data) })
+ })
+ allFile.push(result)
+ // this.progressBarValue = Number((i/allSlice).toFixed(2))*100 //文件进度数
+ this.progressBarValue = this.accMul(Number((i/allSlice).toFixed(2))*100,1,0)
+ if (allFile.length === allSlice) { //合并文件输出给浏览器
+ let url = window.URL.createObjectURL(new Blob(allFile)); //createObjectURL创建一个下载Blob的url地址
+ let link = document.createElement("a");
+ link.style.display = "none";
+ link.href = url;
+ let fileName = e.fileName ? e.fileName : e.objectName.split('/')[e.objectName.split('/').length-1]
+ link.setAttribute("download", fileName);
+ document.body.appendChild(link);
+ link.click();
+ this.isMasklayerDownload = false //关闭下载进度条
+ this.progressBarValue = 0 //初始化进度条
+ }
+
+ } //for循环结束
+
+ }
+
+
+ //点击文件
+ clickFile(item){
+ let suffix = item.fileName.split('.')[item.fileName.split('.').length-1]
+ if(suffix == 'png' || suffix == 'jpg' || suffix == 'JPG'){
+ let dom = document.getElementById(`viewerjs`)
+ let pObjs = dom.childNodes;
+ let node = document.createElement("img")
+ node.style.display = "none";
+ node.src = "/api/Objects/PlanPlatform/" + item.objectName;
+ node.id = 'img'
+ dom.appendChild(node)
+ setTimeout(() => {
+ let viewer = new Viewer(document.getElementById(`viewerjs`), {
+ hidden:()=>{
+ dom.removeChild(pObjs[0]);
+ viewer.destroy();
+ }
+ });
+ node.click();
+ }, 0);
+ }
+ if(suffix == 'docx' || suffix == 'doc' || suffix == 'pdf'){
+ let fetchUrl = item.objectName
+ let json={
+ doc: {
+ docId: new Date(),
+ title: item.fileName,
+ fetchUrl: `http://${location.host}/api/Objects/PlanPlatform/`+fetchUrl
+ },
+ user: {
+ uid: "test",
+ nickName: "test",
+ avatar: "",
+ privilege: [
+ 'FILE_READ','FILE_DOWNLOAD', 'FILE_PRINT'
+ ],
+ },
+ }
+ var stringjson=JSON.stringify(json)
+ var wordArray = CryptoJS.enc.Utf8.parse(stringjson);
+ var base64 = CryptoJS.enc.Base64.stringify(wordArray);
+ window.open(`http://121.5.10.84/apps/editor/openPreview?data=${base64}`)
+ }
+ if(suffix == 'mp4'){
+ // const dialogRef = this.dialog.open(ViewDetails, {//调用open方法打开对话框并且携带参数过去
+ // data: {item:item,type:"video"},
+ // id:'videodialog'
+ // });
+ // dialogRef.afterClosed().subscribe();
+ }
+ }
+
+ //js乘法
+ accMul(arg1,arg2,fix) {
+ if(!parseInt(fix)==fix)
+ {
+ return;
+ }
+ var m=0,s1=arg1.toString(),s2=arg2.toString();
+ try{m+=s1.split(".")[1].length}catch(e){}
+ try{m+=s2.split(".")[1].length}catch(e){}
+ if(m>fix){
+ return (Math.round(Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m-fix))/Math.pow(10,fix));
+ }else if(m<=fix){
+ return (Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m)).toFixed(fix);
+ }else{
+ return (arg1*arg2).toFixed(fix).toString();
+ }
+ }
+}
diff --git a/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.html b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.html
new file mode 100644
index 0000000..8ca918c
--- /dev/null
+++ b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.scss b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.scss
new file mode 100644
index 0000000..e69de29
diff --git a/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.spec.ts b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.spec.ts
new file mode 100644
index 0000000..09d1602
--- /dev/null
+++ b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { LinkageforcesAuditComponent } from './linkageforces-audit.component';
+
+describe('LinkageforcesAuditComponent', () => {
+ let component: LinkageforcesAuditComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ LinkageforcesAuditComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(LinkageforcesAuditComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.ts b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.ts
new file mode 100644
index 0000000..30643f6
--- /dev/null
+++ b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-linkageforces-audit',
+ templateUrl: './linkageforces-audit.component.html',
+ styleUrls: ['./linkageforces-audit.component.scss']
+})
+export class LinkageforcesAuditComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/plan-audit/plan-audit.module.ts b/src/app/plan-audit/plan-audit.module.ts
index 0ee43c1..9946473 100644
--- a/src/app/plan-audit/plan-audit.module.ts
+++ b/src/app/plan-audit/plan-audit.module.ts
@@ -51,10 +51,13 @@ import {ViewUnitDetailsPlanComponent} from '../key-unit/view-unit-details-plan/v
import {KeyUnitModule} from '../key-unit/key-unit.module';
import { PlanRecordComponent } from './plan-record/plan-record.component';
import { BasicInfoComponent } from './basic-info/basic-info.component';
-import { WaitExamineerComponent } from './wait-examineer/wait-examineer.component'
+import { WaitExamineerComponent } from './wait-examineer/wait-examineer.component';
+import { WaterAuditComponent } from './water-audit/water-audit.component';
+import { FireforceAuditComponent } from './fireforce-audit/fireforce-audit.component';
+import { LinkageforcesAuditComponent } from './linkageforces-audit/linkageforces-audit.component'
@NgModule({
- declarations: [DetachmentLevelComponent, PlanAuditComponent, PlanPassComponent,PlanOpen, PlanRecordComponent, BasicInfoComponent, WaitExamineerComponent,],
+ declarations: [DetachmentLevelComponent, PlanAuditComponent, PlanPassComponent,PlanOpen, PlanRecordComponent, BasicInfoComponent, WaitExamineerComponent, WaterAuditComponent, FireforceAuditComponent, LinkageforcesAuditComponent,],
imports: [
CommonModule,
PlanAuditRoutingModule,
diff --git a/src/app/plan-audit/wait-examineer/wait-examineer.component.html b/src/app/plan-audit/wait-examineer/wait-examineer.component.html
index 25fc4c6..b85c3a1 100644
--- a/src/app/plan-audit/wait-examineer/wait-examineer.component.html
+++ b/src/app/plan-audit/wait-examineer/wait-examineer.component.html
@@ -89,135 +89,106 @@
-
-
-
-
-
-
-
-
- 平面图
-
-
-
-
- 四周毗邻
-
-
-
-
- 消防设施
-
-
-
-
- 重点部位
-
-
-
-
- 功能分区
-
-
-
-
- 实景图
-
-
-
-
- cad
-
-
-
-
-
-
-
-
-
-
- 基本信息
-
-
-
-
-
-
-
-
修改-沃尔玛(上海)职业发展有限公司
-
-
-
-
- 单位地址 : |
- 由 上海市上海市黄浦区武胜路333号变更为
- 上海市上海市黄浦区金陵西路28号 |
-
-
- 联系电话 : |
- 由15069853369变更为
- 13869877764 |
-
-
- 始建于(年): |
- 由1991变更为
- 2003 |
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+ 平面图
+
+
+
+
+ 四周毗邻
+
+
+
+
+ 消防设施
+
+
+
+
+ 重点部位
+
+
+
+
+ 功能分区
+
+
+
+
+ 实景图
+
+
+
+
+ cad
+
+
+
+
+
+
-
-
+
+
- 四周毗邻
+ 基本信息
-
+
-
一号建筑
+
修改-沃尔玛(上海)职业发展有限公司
-
-
- 一号建筑:
-
-
-
由
-
变更为
-
-
+
+
+ 单位地址 : |
+ 由 上海市上海市黄浦区武胜路333号变更为
+ 上海市上海市黄浦区金陵西路28号 |
+
+
+ 联系电话 : |
+ 由15069853369变更为
+ 13869877764 |
+
+
+ 始建于(年): |
+ 由1991变更为
+ 2003 |
+
+
+
- 消防设施
+ 四周毗邻
@@ -225,28 +196,70 @@
-
室内消火栓
+
一号建筑
-
+
+
+ 一号建筑:
+
+
+
由
+
变更为
+
+
-
-
-
-
-
-
+
+
+
+
+ 消防设施
+
+
+
+
+
+
+
+
室内消火栓
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/app/plan-audit/wait-examineer/wait-examineer.component.scss b/src/app/plan-audit/wait-examineer/wait-examineer.component.scss
index db3f6a9..98b0e69 100644
--- a/src/app/plan-audit/wait-examineer/wait-examineer.component.scss
+++ b/src/app/plan-audit/wait-examineer/wait-examineer.component.scss
@@ -52,12 +52,9 @@
width: 100%;
}
table{
- //margin: 20px 20px;
margin-left:10px;
margin-right: 10px;
width: 97.5%;
-
- //border: 1px solid #2196F3;
thead{
height:48px;
color: #FFFFFF;
@@ -74,12 +71,16 @@
}
.boxright{
height: 100%;
- width: 55%;
+ flex: 1;
background-color: #FFFFFF;
margin-left: 10px;
+ display: flex;
+ flex-direction: column;
.righthead{
width: 100%;
display: flex;
+ height: 50px;
+ align-items: center;
flex-direction: row-reverse;
button{
margin-left: 10px;
@@ -87,19 +88,16 @@
}
.rightheadone{
width: 50%;
- margin-top: 20px;
margin-right: 7%;
}
.rightheadtwo{
width: 40%;
- margin-top: 20px;
margin-right: 2%;
}
}
.word{
width: 100%;
height: 100%;
- //margin: 10px 10px 0 10px;
iframe{
height: 91%;
width: 97%;
@@ -113,6 +111,12 @@
width: 97%;
height: 91%;
}
+ .waterAudit,.fireForceAudit,.LinkageForcesAudit{
+ flex: 1;
+ width: 100%;
+ height: 100%;
+ box-sizing: border-box;
+ }
}
}
th,td{
diff --git a/src/app/plan-audit/wait-examineer/wait-examineer.component.ts b/src/app/plan-audit/wait-examineer/wait-examineer.component.ts
index 2bbe878..e4f15f1 100644
--- a/src/app/plan-audit/wait-examineer/wait-examineer.component.ts
+++ b/src/app/plan-audit/wait-examineer/wait-examineer.component.ts
@@ -101,7 +101,7 @@ export class WaitExamineerComponent implements OnInit {
chuorzhong//判断初审还是终审
radioid//选中的id
shenheTable=[]//选中要审核的对象
- showtype=0//0:word,1:全景图,2:二维三维,3:重点单位
+ showtype = null//0:word,1:全景图,2:二维三维,3:重点单位
//获取表格数据
getAlltabledate(){
diff --git a/src/app/plan-audit/water-audit/water-audit.component.html b/src/app/plan-audit/water-audit/water-audit.component.html
new file mode 100644
index 0000000..3a3decd
--- /dev/null
+++ b/src/app/plan-audit/water-audit/water-audit.component.html
@@ -0,0 +1,359 @@
+
\ No newline at end of file
diff --git a/src/app/plan-audit/water-audit/water-audit.component.scss b/src/app/plan-audit/water-audit/water-audit.component.scss
new file mode 100644
index 0000000..00f4d8c
--- /dev/null
+++ b/src/app/plan-audit/water-audit/water-audit.component.scss
@@ -0,0 +1,116 @@
+.mapbox{
+ flex: 1;
+ background-color: #fff;
+ display: flex;
+ flex-direction: column;
+ select:disabled {
+ color: black!important;
+ opacity: 1;
+ }
+ #container{
+ width: 100%;
+ height: 200px;
+ }
+ .detailsbox{
+ width: 100%;
+ height:500px;
+ .tabsbox{
+ width: 100%;
+ height: 40px;
+ line-height: 40px;
+ display: flex;
+ justify-content: space-between;
+ font-size: 15px;
+ .tabs{
+ div{
+ float: left;
+ width: 120px;
+ text-align: center;
+ cursor: pointer;
+ color: #000000;
+ opacity: 0.4;
+ border-right: 1px solid #F2F4F6;
+ }
+ .selectedBtn{
+ background-color: #2196F3;
+ color: #fff;
+ opacity: 1;
+ }
+ }
+ .btnbox{
+ span{
+ cursor: pointer;
+ color: #2196F3;
+ mat-icon{
+ vertical-align: sub;
+ font-size: 20px;
+ width: 20px;
+ height: 20px;
+ }
+ }
+ span:hover{
+ text-decoration: underline;
+ }
+ .submitAudit{
+ margin: 0 30px;
+ }
+ .close{
+ margin-right: 30px;
+ }
+ }
+ }
+ .contant{
+ width: 100%;
+ height:480px;
+ overflow-y: auto;
+ p{
+ color: #2196F3;
+ background-color: #F2F4F6;
+ height: 33px;
+ line-height: 33px;
+ box-sizing: border-box;
+ padding-left: 20px;
+ font-size: 15px;
+ }
+ span{
+ font-size: 15px;
+ }
+ input,select{
+ height: 30px;
+ line-height: 30px;
+ box-sizing: border-box;
+ padding: 0 12px;
+ width: 60%;
+ margin-left: 5px;
+ border: 1px solid #EBEBEB;
+ border-radius: 5px;
+ }
+ textarea{
+ width: 89%;
+ margin-left: 5px;
+ height: 85%;
+ border: 1px solid #EBEBEB;
+ border-radius: 5px;
+ }
+ .longinput{
+ width: 74%;
+ }
+ .unitDiv{
+ width: 60%;
+ position: relative;
+ input,select{
+ width: 100%;
+ box-sizing: border-box;
+ padding-right: 50px;
+ }
+ .unit{
+ position: absolute;
+ right: 13px;
+ top: 4px;
+ color: #000000;
+ opacity: 0.4;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/app/plan-audit/water-audit/water-audit.component.spec.ts b/src/app/plan-audit/water-audit/water-audit.component.spec.ts
new file mode 100644
index 0000000..9db9215
--- /dev/null
+++ b/src/app/plan-audit/water-audit/water-audit.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { WaterAuditComponent } from './water-audit.component';
+
+describe('WaterAuditComponent', () => {
+ let component: WaterAuditComponent;
+ let fixture: ComponentFixture
;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ WaterAuditComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(WaterAuditComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/plan-audit/water-audit/water-audit.component.ts b/src/app/plan-audit/water-audit/water-audit.component.ts
new file mode 100644
index 0000000..ed885ad
--- /dev/null
+++ b/src/app/plan-audit/water-audit/water-audit.component.ts
@@ -0,0 +1,64 @@
+import { Component, OnInit } from '@angular/core';
+declare var AMap: any;
+@Component({
+ selector: 'app-water-audit',
+ templateUrl: './water-audit.component.html',
+ styleUrls: ['./water-audit.component.scss']
+})
+export class WaterAuditComponent implements OnInit {
+
+ constructor() { }
+ map:any
+ newPositionMarker:any
+ newPositionMarkerContent:any =
+ '' +
+ '

' +
+ '
'
+ ngOnInit(): void {
+ this.waterData.detailData = JSON.parse(this.waterData.detailData)
+ this.fireCockData = this.waterData.detailData
+ console.log(789, this.fireCockData)
+ setTimeout(() => {
+ this.map = new AMap.Map('container', {
+ zoom:18
+ })
+
+ if(this.waterData.location && this.waterData.location.x){
+ this.map.setCenter([this.waterData.location.x,this.waterData.location.y]);
+ this.newPositionMarker = new AMap.Marker({
+ position: [this.waterData.location.x,this.waterData.location.y],
+ content: this.newPositionMarkerContent,
+ offset: new AMap.Pixel(-10, -12)
+ })
+ // 将 markers 添加到地图
+ this.map.add(this.newPositionMarker);
+ }else{
+ this.map.setCity('上海市');
+ }
+
+ }, 0);
+ }
+ selectedWaterTypeIndex:number = 0//选择的水源类型 0消火栓 1水池 2天然水源
+ fireCockData:any = []//消火栓详情
+ poolData:any = []//水池详情
+ naturalWaterData:any = []//天然水源详情
+ waterData:any = {
+ id: "60125d31d31fab7de81c56b0",
+ name: "上海中心消火栓01",
+ administrativeRegion: "上海区",
+ governmentLevel: "1",
+ village: "小高社区",
+ address: "国际会议中心",
+ location: {
+ x: 121.496717,
+ y: 31.239452
+ },
+ detailData: "[{\"PropertyName\":\"可用状态\",\"PropertyValue\":\"1\"},{\"PropertyName\":\"放置形式\",\"PropertyValue\":\"1\"},{\"PropertyName\":\"管网形式\",\"PropertyValue\":\"2\"},{\"PropertyName\":\"管网直径\",\"PropertyValue\":\"2\"},{\"PropertyName\":\"管网压力类型\",\"PropertyValue\":\"1\"},{\"PropertyName\":\"管网压力范围\",\"PropertyValue\":\"2222\"},{\"PropertyName\":\"接口形式\",\"PropertyValue\":\"1\"},{\"PropertyName\":\"接口口径\",\"PropertyValue\":\"3\"},{\"PropertyName\":\"最大流量\",\"PropertyValue\":\"333\"},{\"PropertyName\":\"供水单位\",\"PropertyValue\":\"剃剃头\"},{\"PropertyName\":\"联系方式\",\"PropertyValue\":\"119\"},{\"PropertyName\":\"备注\",\"PropertyValue\":\"突突突突突突\"}]",
+ detailItems: null,
+ createTime: "2021-02-03T02:36:57.451Z",
+ creatorId: "5e8eced2aaca5f7c1025309b",
+ deleted: false,
+ waterSourceType: 0,
+ integrityScore: 0.21052632
+ }
+}
diff --git a/src/app/ui/collection-tools-building/collection-tools.component.html b/src/app/ui/collection-tools-building/collection-tools.component.html
index 99130e4..3a5f682 100644
--- a/src/app/ui/collection-tools-building/collection-tools.component.html
+++ b/src/app/ui/collection-tools-building/collection-tools.component.html
@@ -52,7 +52,7 @@
-
+
@@ -163,7 +163,7 @@
-
-
+
diff --git a/src/app/ui/collection-tools-building/collection-tools.component.ts b/src/app/ui/collection-tools-building/collection-tools.component.ts
index a0e3081..23660b4 100644
--- a/src/app/ui/collection-tools-building/collection-tools.component.ts
+++ b/src/app/ui/collection-tools-building/collection-tools.component.ts
@@ -628,10 +628,8 @@ export class CollectionToolsBuildingComponent implements OnInit {
AxMessageSystem.addListener('selectionChanged', ()=>{
if(this.canvas.selection.size() == 1){//如果是单选
this.isMultipleAsset = false
- // console.log('单选',this.canvas.selection.first().assetData)
this.setAssetsProperty(this.canvas.selection.first().assetData)
}else if(this.canvas.selection.size()){
- // console.log('多选')
this.isShowProperty = true
this.multipleAssetData = this.canvas.selection.all()
this.firstMultipleAssetData = this.canvas.selection.first()
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 4d4abdd..4a12770 100644
--- a/src/app/ui/collection-tools-plan/collection-tools.component.html
+++ b/src/app/ui/collection-tools-plan/collection-tools.component.html
@@ -35,7 +35,7 @@
-
+
@@ -146,7 +146,7 @@
-
+
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 0a7a1e4..0b522e8 100644
--- a/src/app/ui/collection-tools-plan/collection-tools.component.ts
+++ b/src/app/ui/collection-tools-plan/collection-tools.component.ts
@@ -633,7 +633,6 @@ export class CollectionToolsPlanComponent implements OnInit {
// console.log('单选',this.canvas.selection.first().assetData)
this.setAssetsProperty(this.canvas.selection.first().assetData)
}else if(this.canvas.selection.size()){
- // console.log('多选')
this.isShowProperty = true
this.multipleAssetData = this.canvas.selection.all()
this.firstMultipleAssetData = this.canvas.selection.first()
@@ -810,8 +809,6 @@ export class CollectionToolsPlanComponent implements OnInit {
})
}
-
-
ngAfterViewInit(): void {
//不是gis模块平面图
if(this.router.url.indexOf("gis") == -1) {
diff --git a/src/app/ui/collection-tools/collection-tools.component.html b/src/app/ui/collection-tools/collection-tools.component.html
index 9b2328c..dac8a36 100644
--- a/src/app/ui/collection-tools/collection-tools.component.html
+++ b/src/app/ui/collection-tools/collection-tools.component.html
@@ -108,7 +108,7 @@
-