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 9387947..0f62221 100644 --- a/src/app/data-collection/fire-force/fire-force.component.ts +++ b/src/app/data-collection/fire-force/fire-force.component.ts @@ -19,79 +19,79 @@ declare var AMap: any; }) export class FireForceComponent implements OnInit { - constructor(private tree: TreeService,public snackBar: MatSnackBar,private http:HttpClient,private elementRef: ElementRef,public renderer2: Renderer2,public dialog: MatDialog) { } - - isCheckedOfSearchDiv:boolean = true//列表过滤滑块 - slideChange(e){ + constructor(private tree: TreeService, public snackBar: MatSnackBar, private http: HttpClient, private elementRef: ElementRef, public renderer2: Renderer2, public dialog: MatDialog) { } + + isCheckedOfSearchDiv: boolean = true//列表过滤滑块 + slideChange(e) { this.isCheckedOfSearchDiv = e.checked } - searchForm:any = { - name:'', - integrityNum:'' + searchForm: any = { + name: '', + integrityNum: '' } - listIntegrityNum:any[] = [ - {id:-1,name:'全部'}, - {id:0,name:'<=50%'}, - {id:1,name:'50%-60%'}, - {id:2,name:'60%-70%'}, - {id:3,name:'70%-80%'}, - {id:4,name:'80%-90%'}, - {id:5,name:'90%-100%'} + listIntegrityNum: any[] = [ + { id: -1, name: '全部' }, + { id: 0, name: '<=50%' }, + { id: 1, name: '50%-60%' }, + { id: 2, name: '60%-70%' }, + { id: 3, name: '70%-80%' }, + { id: 4, name: '80%-90%' }, + { id: 5, name: '90%-100%' } ] - checkBoxList:any[] = [ - {id:0,name:'总队',isChecked:false}, - {id:1,name:'支队',isChecked:false}, - {id:2,name:'大队',isChecked:false}, - {id:3,name:'中队(消防站)',isChecked:false}, - {id:4,name:'其他消防队伍',isChecked:false} + checkBoxList: any[] = [ + { id: 0, name: '总队', isChecked: false }, + { id: 1, name: '支队', isChecked: false }, + { id: 2, name: '大队', isChecked: false }, + { id: 3, name: '中队(消防站)', isChecked: false }, + { id: 4, name: '其他消防队伍', isChecked: false } ] //勾选力量类型checkbox在地图上显示marker - checkBoxChange(){ + checkBoxChange() { let Levels = [] - this.checkBoxList.forEach(item =>{ - if(item.isChecked){ + this.checkBoxList.forEach(item => { + if (item.isChecked) { Levels.push(item.id) } }) - let params:any = { - PageSize : 999999, - Levels:Levels + let params: any = { + PageSize: 999999, + Levels: Levels } - if(Levels.length != 0){//如果勾选了checkbox - this.http.get('/api/CustomFireForce',{params:params}).subscribe((data:any) => { + if (Levels.length != 0) {//如果勾选了checkbox + this.http.get('/api/CustomFireForce', { params: params }).subscribe((data: any) => { this.createMarker(data) }) - }else{ + } else { this.cluster.setData([]) } } //循环渲染出所有力量markers - cluster:any //力量聚合实例 - createMarker(list){ + cluster: any //力量聚合实例 + createMarker(list) { let markerArrcluster = [] this.cluster ? this.cluster.setData([]) : null list.forEach((item) => { let image - if(item.forceType == 2){ + if (item.forceType == 2) { image = '/assets/fireForcesMarkers/qita.png' - }else if(item.level == 0){ + } else if (item.level == 0) { image = '/assets/fireForcesMarkers/zongdui.png' - }else if(item.level == 1){ + } else if (item.level == 1) { image = '/assets/fireForcesMarkers/zhidui.png' - }else if(item.level == 2){ + } else if (item.level == 2) { image = '/assets/fireForcesMarkers/dadui.png' - }else if(item.level == 3){ + } else if (item.level == 3) { image = '/assets/fireForcesMarkers/zhongdui.png' } // 用于点集合的数组 - item.fireForceDetailInfo.location ? - markerArrcluster.push({ - lnglat : [item.fireForceDetailInfo.location.x,item.fireForceDetailInfo.location.y], - image : image, - data : item - }) : null + item.fireForceDetailInfo.location ? + markerArrcluster.push({ + lnglat: [item.fireForceDetailInfo.location.x, item.fireForceDetailInfo.location.y], + image: image, + data: item + }) : null }) - this.map.plugin(["AMap.MarkerClusterer"],() => { + this.map.plugin(["AMap.MarkerClusterer"], () => { var gridSize = 60 var count = markerArrcluster.length; var _renderClusterMarker = function (context) { @@ -116,7 +116,7 @@ export class FireForceComponent implements OnInit { context.marker.setOffset(new AMap.Pixel(-size / 2, -size / 2)); context.marker.setContent(div) }; - var _renderMarker = (context)=>{ + var _renderMarker = (context) => { var content = ``; var offset = new AMap.Pixel(-15, -15); context.marker.setContent(content) @@ -127,59 +127,59 @@ export class FireForceComponent implements OnInit { renderClusterMarker: _renderClusterMarker, // 自定义聚合点样式 renderMarker: _renderMarker, // 自定义非聚合点样式 }); - this.cluster.on('click',(e)=>{ - if(e.clusterData.length == 1){ + this.cluster.on('click', (e) => { + if (e.clusterData.length == 1) { let node = e.clusterData[0].data // console.log(node) this.clearData() this.selectedFireForce = node.fireForceDetailInfo this.selectedFireForceId = node.fireForceDetailId - if(node.forceType != 0){//如果是其他消防力量 + if (node.forceType != 0) {//如果是其他消防力量 this.selectedFireForceLevel = 4 - }else{ + } else { this.selectedFireForceLevel = node.level } this.FireForceDetailInfo.stationName = node.fireForceDetailInfo.name - if(node.fireForceDetailId){ + if (node.fireForceDetailId) { let type - if(node.forceType == 0){ + if (node.forceType == 0) { type = 0 - }else{ + } else { type = 1 } this.isMasklayer = true - this.http.get(`/api/FireForceDetail/${type}/${node.id}`).subscribe((data:any) => { + this.http.get(`/api/FireForceDetail/${type}/${node.id}`).subscribe((data: any) => { this.isMasklayer = false this.FireForceDetailInfo = data - if(data.location && data.location.x){//如果已经标注单位坐标 + if (data.location && data.location.x) {//如果已经标注单位坐标 this.positionLngLat = data.location } //相关资料 data.relevantInfomationData ? this.AttachmentArr = JSON.parse(data.relevantInfomationData) : null - if(node.forceType == 0 && node.level == 0){ + if (node.forceType == 0 && node.level == 0) { this.ZongpersonCountData = JSON.parse(data.personCountData) || this.ZongpersonCountData this.ZongcontactData = JSON.parse(data.contactData) || this.ZongcontactData } - if(node.forceType == 0 && node.level == 1){ + if (node.forceType == 0 && node.level == 1) { this.ZongpersonCountData = JSON.parse(data.personCountData) || this.ZongpersonCountData this.ZhicontactData = JSON.parse(data.contactData) || this.ZhicontactData } - if(node.forceType == 0 && (node.level == 2 || node.level == 3)){ - this.DaZhongpersonCountData = JSON.parse(data.personCountData) || this.DaZhongpersonCountData + if (node.forceType == 0 && (node.level == 2 || node.level == 3)) { + this.DaZhongpersonCountData = JSON.parse(data.personCountData) || this.DaZhongpersonCountData this.DaZhongcontactData = JSON.parse(data.contactData) || this.DaZhongcontactData } - if(node.forceType != 0){ + if (node.forceType != 0) { this.otherpersonCountData = JSON.parse(data.personCountData) || this.otherpersonCountData this.othercontactData = JSON.parse(data.contactData) || this.otherpersonCountData } }) - + } //寻找管辖单位 this.allFireForceList.forEach(item => { - if(item.id == node.parentId){ + if (item.id == node.parentId) { this.superior.name = item.name this.superior.code = item.code } @@ -187,72 +187,72 @@ export class FireForceComponent implements OnInit { } }) }); - + } - ngOnInit(): void { + ngOnInit(): void { this.getAllFireForce() setTimeout(() => { this.createMap() }, 0); } //获得所有消防力量 - newdata:any - allFireForceList:any= [] - getAllFireForce(){ + newdata: any + allFireForceList: any = [] + getAllFireForce() { let MinIntegrity = 0 let MaxIntegrity = 1.1 - if(this.searchForm.integrityNum == '0'){ + if (this.searchForm.integrityNum == '0') { MinIntegrity = 0 MaxIntegrity = 0.5 - }else if(this.searchForm.integrityNum == '1'){ + } else if (this.searchForm.integrityNum == '1') { MinIntegrity = 0.5 MaxIntegrity = 0.6 - }else if(this.searchForm.integrityNum == '2'){ + } else if (this.searchForm.integrityNum == '2') { MinIntegrity = 0.6 MaxIntegrity = 0.7 - }else if(this.searchForm.integrityNum == '3'){ + } else if (this.searchForm.integrityNum == '3') { MinIntegrity = 0.7 MaxIntegrity = 0.8 - }else if(this.searchForm.integrityNum == '4'){ + } else if (this.searchForm.integrityNum == '4') { MinIntegrity = 0.8 MaxIntegrity = 0.9 - }else if(this.searchForm.integrityNum == '5'){ + } else if (this.searchForm.integrityNum == '5') { MinIntegrity = 0.9 MaxIntegrity = 1.1 - }else if(this.searchForm.integrityNum == '-1'){ + } else if (this.searchForm.integrityNum == '-1') { MinIntegrity = 0 MaxIntegrity = 1.1 } - let params:any = { - Keyword : this.searchForm.name ? this.searchForm.name : '', - MinIntegrity : MinIntegrity, - MaxIntegrity : MaxIntegrity + let params: any = { + Keyword: this.searchForm.name ? this.searchForm.name : '', + MinIntegrity: MinIntegrity, + MaxIntegrity: MaxIntegrity } - this.http.get('/api/CustomFireForce',{params:params}).subscribe((data:any) => { + this.http.get('/api/CustomFireForce', { params: params }).subscribe((data: any) => { this.allFireForceList = data -    this.dataSource.data = this.tree.toTree(data) + this.dataSource.data = this.tree.toTree(data) this.treeControl.expand(this.treeControl.dataNodes[0]); }) } - upDateAllFireForce = ():void=>{ - this.http.get('/api/CustomFireForce').subscribe((data:any) => { -    this.newdata = this.tree.toTree(data) - 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.newdata; - let newNodes = this.treeControl.dataNodes; - newNodes = newNodes.filter(n => { - return expandNodes.indexOf(n.id) >= 0; - }); - newNodes.forEach(item => { - this.treeControl.expand(item); - }); - }) + upDateAllFireForce = (): void => { + this.http.get('/api/CustomFireForce').subscribe((data: any) => { + this.newdata = this.tree.toTree(data) + 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.newdata; + let newNodes = this.treeControl.dataNodes; + newNodes = newNodes.filter(n => { + return expandNodes.indexOf(n.id) >= 0; + }); + newNodes.forEach(item => { + this.treeControl.expand(item); + }); + }) } private _transformer = (node, level: number) => {//要给渲染节点传那些属性参数 return { @@ -261,71 +261,71 @@ export class FireForceComponent implements OnInit { level: level, id: node.id, parentId: node.parentId, - enabled:node.enabled, - order:node.order, - children:node.children, - code:node.code, - division:node.division, - fireForceDetailId:node.fireForceDetailId, - forceType:node.forceType, - fireForceDetailInfo:node.fireForceDetailInfo, - contentVerify:node.contentVerify, + enabled: node.enabled, + order: node.order, + children: node.children, + code: node.code, + division: node.division, + fireForceDetailId: node.fireForceDetailId, + forceType: node.forceType, + fireForceDetailInfo: node.fireForceDetailInfo, + contentVerify: node.contentVerify, }; } treeControl = new FlatTreeControl(node => node.level, node => node.expandable); treeFlattener = new MatTreeFlattener(this._transformer, node => node.level, node => node.expandable, node => node.children); dataSource = new MatTreeFlatDataSource(this.treeControl, this.treeFlattener); hasChild = (_: number, node: any) => node.expandable; - selectedFireForceId:any - selectedFireForceLevel:any - selectedFireForce:any + selectedFireForceId: any + selectedFireForceLevel: any + selectedFireForce: any //选择要显示的消防力量 - superior:any = { //上级单位 - name:'', - code:'' + superior: any = { //上级单位 + name: '', + code: '' } - selectTreeNode(node){ + selectTreeNode(node) { // console.log(node) this.isGisTopBox = false - if(this.selectedFireForceId != node.id){ + if (this.selectedFireForceId != node.id) { this.clearData() this.selectedFireForce = node this.selectedFireForceId = node.id - if(node.forceType != 0){//如果是其他消防力量 + if (node.forceType != 0) {//如果是其他消防力量 this.selectedFireForceLevel = 4 - }else{ + } else { this.selectedFireForceLevel = node.level } this.FireForceDetailInfo.stationName = node.name - if(this.newPositionMarker){ + if (this.newPositionMarker) { this.map.remove(this.newPositionMarker); } - if(node.fireForceDetailId){ + if (node.fireForceDetailId) { this.isPost = false//是否走post创建接口 let type - if(node.forceType == 0){ + if (node.forceType == 0) { type = 0 - }else{ + } else { type = 1 } this.isMasklayer = true - this.http.get(`/api/FireForceDetail/${type}/${node.id}`).subscribe((data:any) => { + this.http.get(`/api/FireForceDetail/${type}/${node.id}`).subscribe((data: any) => { this.isMasklayer = false this.FireForceDetailInfo = data // console.log(888,data) - if(data.location && data.location.x){//如果已经标注单位坐标 + if (data.location && data.location.x) {//如果已经标注单位坐标 this.positionLngLat = data.location - this.map.setCenter([data.location.x,data.location.y]); + this.map.setCenter([data.location.x, data.location.y]); this.newPositionMarker = new AMap.Marker({ - position: [data.location.x,data.location.y], + position: [data.location.x, data.location.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }) // 将 markers 添加到地图 this.map.add(this.newPositionMarker); - }else{ - this.map.setCity('上海市'); + } else { + this.map.setCity('株洲市'); } //相关资料 data.relevantInfomationData ? this.AttachmentArr = JSON.parse(data.relevantInfomationData) : null @@ -349,12 +349,12 @@ export class FireForceComponent implements OnInit { }) } else { - this.map.setCity('上海市'); + this.map.setCity('株洲市'); } //寻找管辖单位 this.allFireForceList.forEach(item => { - if(item.id == node.parentId){ + if (item.id == node.parentId) { this.superior.name = item.name this.superior.code = item.code } @@ -362,65 +362,64 @@ export class FireForceComponent implements OnInit { } } //搜索 - isTreeView:boolean = true//决定显示树还是列表 - searchList(){ - if(!this.searchForm.name && !this.searchForm.integrityNum){ + isTreeView: boolean = true//决定显示树还是列表 + searchList() { + if (!this.searchForm.name && !this.searchForm.integrityNum) { this.isTreeView = true - }else{ + } else { this.isTreeView = false } this.getAllFireForce() } //重置搜索 - reset(){ + reset() { this.isTreeView = true this.selectedFireForceLevel = null this.searchForm = { - name:'', - integrityNum:'' + name: '', + integrityNum: '' } this.getAllFireForce() } //js乘法 - accMul(arg1,arg2,fix) { - if(!parseInt(fix)==fix) - { - return; + 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(); - } - } + 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(); + } + } //完整度颜色 - integrity(width){ + integrity(width) { let _this = this - let style:any = {} - style.width = width +'%'; - if(width < 30){ + let style: any = {} + style.width = width + '%'; + if (width < 30) { style.background = '#FF5D4A' } - if(width >= 30 && width < 60){ + if (width >= 30 && width < 60) { style.background = '#FFDD00' } - if(width >= 60){ + if (width >= 60) { style.background = '#5CD64E' } return style } //删除某条消防队 - deleteFireForce(item,e){ + deleteFireForce(item, e) { e.stopPropagation() // console.log(this.dataSource.data) let isDelete = window.confirm(`确定要删除${item.name}吗`) - if(isDelete){ + if (isDelete) { // this.http.delete(`/api/CustomFireForce/${item.id}`).subscribe(data => { // let config = new MatSnackBarConfig(); // config.verticalPosition = 'top'; @@ -438,219 +437,219 @@ export class FireForceComponent implements OnInit { itemId: item.id, verifyState: 3, } - this.http.post('/api/ContentVerifies',body).subscribe((data) => { + this.http.post('/api/ContentVerifies', body).subscribe((data) => { let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('删除审核提交成功','确定',config); + this.snackBar.open('删除审核提交成功', '确定', config); item.contentVerify = data }) } } //当前点击tab页面第几个 - tabIndex:any = 1 - selectedTab(index){ + tabIndex: any = 1 + selectedTab(index) { this.tabIndex = index } //消防力量详情提交信息 - FireForceDetailInfo:any = { + FireForceDetailInfo: any = { // id:'',//编号 - stationName:'',//队站名称 - isIndependentAlarm:true,//是否独立报警 - phoneNumber:'',//联系电话 - faxNumber:'',//传真 - jurisdictionArea:null,//辖区面积 - remark:'',//备注 - address:'',//地址 - location:{ - x:'', - y:'' + stationName: '',//队站名称 + isIndependentAlarm: true,//是否独立报警 + phoneNumber: '',//联系电话 + faxNumber: '',//传真 + jurisdictionArea: null,//辖区面积 + remark: '',//备注 + address: '',//地址 + location: { + x: '', + y: '' }, - personCountData:[],//人员数量自定义 - contactData:[],//联系方式自定义 - dutyForceData:[],//执勤力量自定义 - relevantInfomationData:[]//相关资料 + personCountData: [],//人员数量自定义 + contactData: [],//联系方式自定义 + dutyForceData: [],//执勤力量自定义 + relevantInfomationData: []//相关资料 } //总队支队人员数量 - ZongpersonCountData:any=[ - {PropertyName :'现役官兵人数',PropertyValue:''}, - {PropertyName :'政府专职消防员数',PropertyValue:''}, - {PropertyName :'消防文员数',PropertyValue:''} + ZongpersonCountData: any = [ + { PropertyName: '现役官兵人数', PropertyValue: '' }, + { PropertyName: '政府专职消防员数', PropertyValue: '' }, + { PropertyName: '消防文员数', PropertyValue: '' } ] //总队联系方式 - ZongcontactData:any=[ - {PropertyName :'总队长名称',PropertyValue:''}, - {PropertyName :'总队长联系方式',PropertyValue:''}, - {PropertyName :'总队政委名称',PropertyValue:''}, - {PropertyName :'总队政委联系方式',PropertyValue:''} + ZongcontactData: any = [ + { PropertyName: '总队长名称', PropertyValue: '' }, + { PropertyName: '总队长联系方式', PropertyValue: '' }, + { PropertyName: '总队政委名称', PropertyValue: '' }, + { PropertyName: '总队政委联系方式', PropertyValue: '' } ] //支队联系方式 - ZhicontactData:any=[ - {PropertyName :'支队长名称',PropertyValue:''}, - {PropertyName :'支队长联系方式',PropertyValue:''}, - {PropertyName :'支队政委名称',PropertyValue:''}, - {PropertyName :'支队政委联系方式',PropertyValue:''} + ZhicontactData: any = [ + { PropertyName: '支队长名称', PropertyValue: '' }, + { PropertyName: '支队长联系方式', PropertyValue: '' }, + { PropertyName: '支队政委名称', PropertyValue: '' }, + { PropertyName: '支队政委联系方式', PropertyValue: '' } ] //大队中队人员数量 - DaZhongpersonCountData:any=[ - {PropertyName :'现役人员',PropertyValue:''}, - {PropertyName :'政府专职消防员数',PropertyValue:''}, - {PropertyName :'每日执勤人数',PropertyValue:''} + DaZhongpersonCountData: any = [ + { PropertyName: '现役人员', PropertyValue: '' }, + { PropertyName: '政府专职消防员数', PropertyValue: '' }, + { PropertyName: '每日执勤人数', PropertyValue: '' } ] //大队中队联系方式 - DaZhongcontactData:any=[ - {PropertyName :'站长姓名',PropertyValue:''}, - {PropertyName :'站长联系方式',PropertyValue:''}, - {PropertyName :'指导员姓名',PropertyValue:''}, - {PropertyName :'指导员联系方式',PropertyValue:''}, - {PropertyName :'副指导员姓名',PropertyValue:''}, - {PropertyName :'副指导员联系方式',PropertyValue:''}, - {PropertyName :'副站长一姓名',PropertyValue:''}, - {PropertyName :'副站长一联系方式',PropertyValue:''}, - {PropertyName :'副站长二姓名',PropertyValue:''}, - {PropertyName :'副站长二联系方式',PropertyValue:''}, - {PropertyName :'副站长三姓名',PropertyValue:''}, - {PropertyName :'副站长三联系方式',PropertyValue:''} + DaZhongcontactData: any = [ + { PropertyName: '站长姓名', PropertyValue: '' }, + { PropertyName: '站长联系方式', PropertyValue: '' }, + { PropertyName: '指导员姓名', PropertyValue: '' }, + { PropertyName: '指导员联系方式', PropertyValue: '' }, + { PropertyName: '副指导员姓名', PropertyValue: '' }, + { PropertyName: '副指导员联系方式', PropertyValue: '' }, + { PropertyName: '副站长一姓名', PropertyValue: '' }, + { PropertyName: '副站长一联系方式', PropertyValue: '' }, + { PropertyName: '副站长二姓名', PropertyValue: '' }, + { PropertyName: '副站长二联系方式', PropertyValue: '' }, + { PropertyName: '副站长三姓名', PropertyValue: '' }, + { PropertyName: '副站长三联系方式', PropertyValue: '' } ] //其他消防力量联系方式 - othercontactData:any = [ - {PropertyName :'队长',PropertyValue:''}, - {PropertyName :'联系方式',PropertyValue:''}, - {PropertyName :'站长',PropertyValue:''}, - {PropertyName :'联系方式',PropertyValue:''}, - {PropertyName :'负责人',PropertyValue:''}, - {PropertyName :'联系方式',PropertyValue:''} + othercontactData: any = [ + { PropertyName: '队长', PropertyValue: '' }, + { PropertyName: '联系方式', PropertyValue: '' }, + { PropertyName: '站长', PropertyValue: '' }, + { PropertyName: '联系方式', PropertyValue: '' }, + { PropertyName: '负责人', PropertyValue: '' }, + { PropertyName: '联系方式', PropertyValue: '' } ] //其他消防力量人员数量 - otherpersonCountData:any = [ - {PropertyName :'每日执勤人数',PropertyValue:''}, - {PropertyName :'消防队员总人数',PropertyValue:''}, - {PropertyName :'执勤车辆数',PropertyValue:''}, - {PropertyName :'灭火剂总量',PropertyValue:''} + otherpersonCountData: any = [ + { PropertyName: '每日执勤人数', PropertyValue: '' }, + { PropertyName: '消防队员总人数', PropertyValue: '' }, + { PropertyName: '执勤车辆数', PropertyValue: '' }, + { PropertyName: '灭火剂总量', PropertyValue: '' } ] //清空表单数据 - clearData(){ + clearData() { this.deletedFile = []//清空相关资料已删除缓存 this.AttachmentArr = []//清空相关资料 - this.positionLngLat = {x:'',y:''} + this.positionLngLat = { x: '', y: '' } this.FireForceDetailInfo = { // id:'',//编号 - stationName:'',//队站名称 - isIndependentAlarm:null,//是否独立报警 - phoneNumber:'',//联系电话 - faxNumber:'',//传真 - jurisdictionArea:null,//辖区面积 - remark:'',//备注 - address:'',//地址 - location:{ - x:'', - y:'' + stationName: '',//队站名称 + isIndependentAlarm: null,//是否独立报警 + phoneNumber: '',//联系电话 + faxNumber: '',//传真 + jurisdictionArea: null,//辖区面积 + remark: '',//备注 + address: '',//地址 + location: { + x: '', + y: '' }, - personCountData:[],//人员数量自定义 - contactData:[],//联系方式自定义 - dutyForceData:[],//执勤力量自定义 - relevantInfomationData:[]//相关资料 + personCountData: [],//人员数量自定义 + contactData: [],//联系方式自定义 + dutyForceData: [],//执勤力量自定义 + relevantInfomationData: []//相关资料 } this.ZongpersonCountData = [ - {PropertyName :'现役官兵人数',PropertyValue:''}, - {PropertyName :'政府专职消防员数',PropertyValue:''}, - {PropertyName :'消防文员数',PropertyValue:''} + { PropertyName: '现役官兵人数', PropertyValue: '' }, + { PropertyName: '政府专职消防员数', PropertyValue: '' }, + { PropertyName: '消防文员数', PropertyValue: '' } ] this.ZongcontactData = [ - {PropertyName :'总队长名称',PropertyValue:''}, - {PropertyName :'总队长联系方式',PropertyValue:''}, - {PropertyName :'总队政委名称',PropertyValue:''}, - {PropertyName :'总队政委联系方式',PropertyValue:''} + { PropertyName: '总队长名称', PropertyValue: '' }, + { PropertyName: '总队长联系方式', PropertyValue: '' }, + { PropertyName: '总队政委名称', PropertyValue: '' }, + { PropertyName: '总队政委联系方式', PropertyValue: '' } ] this.ZhicontactData = [ - {PropertyName :'支队长名称',PropertyValue:''}, - {PropertyName :'支队长联系方式',PropertyValue:''}, - {PropertyName :'支队政委名称',PropertyValue:''}, - {PropertyName :'支队政委联系方式',PropertyValue:''} + { PropertyName: '支队长名称', PropertyValue: '' }, + { PropertyName: '支队长联系方式', PropertyValue: '' }, + { PropertyName: '支队政委名称', PropertyValue: '' }, + { PropertyName: '支队政委联系方式', PropertyValue: '' } ] this.DaZhongpersonCountData = [ - {PropertyName :'现役人员',PropertyValue:''}, - {PropertyName :'政府专职消防员数',PropertyValue:''}, - {PropertyName :'每日执勤人数',PropertyValue:''} + { PropertyName: '现役人员', PropertyValue: '' }, + { PropertyName: '政府专职消防员数', PropertyValue: '' }, + { PropertyName: '每日执勤人数', PropertyValue: '' } ] this.DaZhongcontactData = [ - {PropertyName :'站长姓名',PropertyValue:''}, - {PropertyName :'站长联系方式',PropertyValue:''}, - {PropertyName :'指导员姓名',PropertyValue:''}, - {PropertyName :'指导员联系方式',PropertyValue:''}, - {PropertyName :'副指导员姓名',PropertyValue:''}, - {PropertyName :'副指导员联系方式',PropertyValue:''}, - {PropertyName :'副站长一姓名',PropertyValue:''}, - {PropertyName :'副站长一联系方式',PropertyValue:''}, - {PropertyName :'副站长二姓名',PropertyValue:''}, - {PropertyName :'副站长二联系方式',PropertyValue:''}, - {PropertyName :'副站长三姓名',PropertyValue:''}, - {PropertyName :'副站长三联系方式',PropertyValue:''} + { PropertyName: '站长姓名', PropertyValue: '' }, + { PropertyName: '站长联系方式', PropertyValue: '' }, + { PropertyName: '指导员姓名', PropertyValue: '' }, + { PropertyName: '指导员联系方式', PropertyValue: '' }, + { PropertyName: '副指导员姓名', PropertyValue: '' }, + { PropertyName: '副指导员联系方式', PropertyValue: '' }, + { PropertyName: '副站长一姓名', PropertyValue: '' }, + { PropertyName: '副站长一联系方式', PropertyValue: '' }, + { PropertyName: '副站长二姓名', PropertyValue: '' }, + { PropertyName: '副站长二联系方式', PropertyValue: '' }, + { PropertyName: '副站长三姓名', PropertyValue: '' }, + { PropertyName: '副站长三联系方式', PropertyValue: '' } ] this.othercontactData = [ - {PropertyName :'队长',PropertyValue:''}, - {PropertyName :'联系方式',PropertyValue:''}, - {PropertyName :'站长',PropertyValue:''}, - {PropertyName :'联系方式',PropertyValue:''}, - {PropertyName :'负责人',PropertyValue:''}, - {PropertyName :'联系方式',PropertyValue:''} + { PropertyName: '队长', PropertyValue: '' }, + { PropertyName: '联系方式', PropertyValue: '' }, + { PropertyName: '站长', PropertyValue: '' }, + { PropertyName: '联系方式', PropertyValue: '' }, + { PropertyName: '负责人', PropertyValue: '' }, + { PropertyName: '联系方式', PropertyValue: '' } ] this.otherpersonCountData = [ - {PropertyName :'每日执勤人数',PropertyValue:''}, - {PropertyName :'消防队员总人数',PropertyValue:''}, - {PropertyName :'执勤车辆数',PropertyValue:''}, - {PropertyName :'灭火剂总量',PropertyValue:''} + { PropertyName: '每日执勤人数', PropertyValue: '' }, + { PropertyName: '消防队员总人数', PropertyValue: '' }, + { PropertyName: '执勤车辆数', PropertyValue: '' }, + { PropertyName: '灭火剂总量', PropertyValue: '' } ] } //新增消防力量 - selectedFireForceTypeIndex:any//新增消防力量名称 - addFireForce(){ - if(this.selectedFireForceId && this.selectedFireForce.forceType == 0){ + selectedFireForceTypeIndex: any//新增消防力量名称 + addFireForce() { + if (this.selectedFireForceId && this.selectedFireForce.forceType == 0) { const dialogRef = this.dialog.open(AddFireForce, { data: {}, - id:'addWater' + id: 'addWater' }); dialogRef.afterClosed().subscribe( - data=>{ - if(typeof data === 'number' && !isNaN(data)){ + data => { + if (typeof data === 'number' && !isNaN(data)) { this.isPost = true - this.selectedFireForceTypeIndex = data - this.selectedFireForceLevel = data - // this.newPositionMarker ? this.map.remove(this.newPositionMarker) : null - // this.positionLngLat.x = 0 - // this.positionLngLat.y = 0 - // this.map.setCity('上海市'); - this.selectedFireForce.contentVerify = null - this.clearData() - } + this.selectedFireForceTypeIndex = data + this.selectedFireForceLevel = data + // this.newPositionMarker ? this.map.remove(this.newPositionMarker) : null + // this.positionLngLat.x = 0 + // this.positionLngLat.y = 0 + // this.map.setCity('株洲市'); + this.selectedFireForce.contentVerify = null + this.clearData() + } } ); - }else if(this.selectedFireForceId && this.selectedFireForce.forceType != 0){ + } else if (this.selectedFireForceId && this.selectedFireForce.forceType != 0) { let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('该选中机构无法增加其他机构','确定',config); - } else{ + this.snackBar.open('该选中机构无法增加其他机构', '确定', config); + } else { let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('请先从左侧列表选择一个组织机构','确定',config); + this.snackBar.open('请先从左侧列表选择一个组织机构', '确定', config); } - + } //保存 - isPost:boolean = false//是否走post创建接口 - newselectedFireForceId:any //创建成功其他消防力量后保存一下创建出来的id - save(){ - if(!this.FireForceDetailInfo.stationName){ + isPost: boolean = false//是否走post创建接口 + newselectedFireForceId: any //创建成功其他消防力量后保存一下创建出来的id + save() { + if (!this.FireForceDetailInfo.stationName) { alert('名称必填') return } //删除一下数据库的文件 - if(this.deletedFile.length != 0){ + if (this.deletedFile.length != 0) { this.deletedFile.forEach(item => { - this.http.delete(`/api/Objects/PlanPlatform/${item.objectName}`).subscribe(data=>{ + this.http.delete(`/api/Objects/PlanPlatform/${item.objectName}`).subscribe(data => { // console.log('删除原文件成功') }) }); @@ -659,102 +658,102 @@ export class FireForceComponent implements OnInit { this.FireForceDetailInfo.relevantInfomationData = JSON.stringify(this.AttachmentArr) // console.log(1111,this.FireForceDetailInfo) //如果是总支大中 - this.FireForceDetailInfo.location = {x:'',y:''} - if(this.atLastPositionLngLat.x){ + this.FireForceDetailInfo.location = { x: '', y: '' } + if (this.atLastPositionLngLat.x) { this.FireForceDetailInfo.location.x = this.atLastPositionLngLat.x this.FireForceDetailInfo.location.y = this.atLastPositionLngLat.y - }else{ + } else { this.FireForceDetailInfo.location = null } - if(this.selectedFireForce.forceType == 0&&(this.selectedFireForceLevel == 0 || this.selectedFireForceLevel == 1 || this.selectedFireForceLevel == 2 || this.selectedFireForceLevel == 3)){//如果是总队 + if (this.selectedFireForce.forceType == 0 && (this.selectedFireForceLevel == 0 || this.selectedFireForceLevel == 1 || this.selectedFireForceLevel == 2 || this.selectedFireForceLevel == 3)) {//如果是总队 let body = this.FireForceDetailInfo - - if(this.selectedFireForceLevel == 0){//总队 - this.FireForceDetailInfo.personCountData = JSON.stringify(this.ZongpersonCountData) + + if (this.selectedFireForceLevel == 0) {//总队 + this.FireForceDetailInfo.personCountData = JSON.stringify(this.ZongpersonCountData) this.FireForceDetailInfo.contactData = JSON.stringify(this.ZongcontactData) this.FireForceDetailInfo.dutyForceData = null } - if(this.selectedFireForceLevel == 1){//支队 - this.FireForceDetailInfo.personCountData = JSON.stringify(this.ZongpersonCountData) + if (this.selectedFireForceLevel == 1) {//支队 + this.FireForceDetailInfo.personCountData = JSON.stringify(this.ZongpersonCountData) this.FireForceDetailInfo.contactData = JSON.stringify(this.ZhicontactData) this.FireForceDetailInfo.dutyForceData = null } - if(this.selectedFireForceLevel == 2 || this.selectedFireForceLevel == 3){//大队 中队 - this.FireForceDetailInfo.personCountData = JSON.stringify(this.DaZhongpersonCountData) + if (this.selectedFireForceLevel == 2 || this.selectedFireForceLevel == 3) {//大队 中队 + this.FireForceDetailInfo.personCountData = JSON.stringify(this.DaZhongpersonCountData) 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 => { + this.http.put(`/api/FireForceDetail/0/${this.selectedFireForce.id}`, body).subscribe(data => { let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); + this.snackBar.open('保存成功', '确定', config); this.upDateAllFireForce() }) } //如果是其他消防力量 - else{ - if(!this.isPost){ + else { + if (!this.isPost) { let body = this.FireForceDetailInfo - body.personCountData = JSON.stringify(this.otherpersonCountData) + body.personCountData = JSON.stringify(this.otherpersonCountData) body.contactData = JSON.stringify(this.othercontactData) body.dutyForceData = null let id - if(this.selectedFireForce.forceType == 0){ + if (this.selectedFireForce.forceType == 0) { id = this.newselectedFireForceId - }else{ + } else { id = this.selectedFireForce.id } - this.http.put(`/api/FireForceDetail/1/${id}`,body).subscribe(data => { + this.http.put(`/api/FireForceDetail/1/${id}`, body).subscribe(data => { let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); + this.snackBar.open('保存成功', '确定', config); this.upDateAllFireForce() }) - }else{ + } else { let forceType this.selectedFireForceTypeIndex == 4 ? forceType = 1 : null this.selectedFireForceTypeIndex == 5 ? forceType = 2 : null this.selectedFireForceTypeIndex == 6 ? forceType = 4 : null let body = { - organizationId:this.selectedFireForce.id, - name:this.FireForceDetailInfo.stationName, - createTime:new Date(), - forceType:forceType + organizationId: this.selectedFireForce.id, + name: this.FireForceDetailInfo.stationName, + createTime: new Date(), + forceType: forceType } let params = { - organizationId : this.selectedFireForce.id + organizationId: this.selectedFireForce.id } - this.http.post('/api/CustomFireForce',body,{params:params}).subscribe((data:any) => { + this.http.post('/api/CustomFireForce', body, { params: params }).subscribe((data: any) => { this.newselectedFireForceId = data.id this.selectedFireForce = data let body = this.FireForceDetailInfo body.personCountData = JSON.stringify(this.otherpersonCountData) body.contactData = JSON.stringify(this.othercontactData) body.dutyForceData = null - this.http.put(`/api/FireForceDetail/1/${data.id}`,body).subscribe(data2 => { + this.http.put(`/api/FireForceDetail/1/${data.id}`, body).subscribe(data2 => { this.upDateAllFireForce() this.selectedFireForceId = data.id this.isPost = false let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('保存成功','确定',config); + this.snackBar.open('保存成功', '确定', config); }) }) } - + } - - + + } //提交审核 - submitAudit(){ + submitAudit() { let isTrue = window.confirm('请确认保存后提交审核,否则将无法审核最新内容,是否继续?') - if(isTrue){ + if (isTrue) { // console.log('提交审核的消防力量',this.FireForceDetailInfo) let body = { title: this.FireForceDetailInfo.stationName, @@ -763,86 +762,86 @@ export class FireForceComponent implements OnInit { itemId: this.selectedFireForce.id, verifyState: 3, } - this.http.post('/api/ContentVerifies',body).subscribe((data) => { + this.http.post('/api/ContentVerifies', body).subscribe((data) => { this.selectedFireForce.contentVerify = data let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('提交成功','确定',config); + this.snackBar.open('提交成功', '确定', config); }) } - + } //撤销审核 - cancelAudit(){ + cancelAudit() { let isTrue = window.confirm('您确认要撤销该审核吗?') - if(isTrue){ + if (isTrue) { // console.log('撤销审核的消防力量',this.waterData) this.http.delete(`/api/ContentVerifies/${this.selectedFireForce.contentVerify.id}`).subscribe((data) => { this.selectedFireForce.contentVerify = null let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('撤销成功','确定',config); + this.snackBar.open('撤销成功', '确定', config); }) } } - close(){ + close() { this.selectedFireForceLevel = null this.selectedFireForceId = null this.newPositionMarker ? this.map.remove(this.newPositionMarker) : null this.isGisTopBox = false } - map:any - placeSearch:any//构造地点查询类 - isMapLabel:boolean = false //是否已经标记坐标 - newPositionMarkerContent:any = - '
' + - ' ' + - '
' - newPositionMarkerContentBtn:any = - '
' + - ' ' + - '
|
' + - '
' + map: any + placeSearch: any//构造地点查询类 + isMapLabel: boolean = false //是否已经标记坐标 + newPositionMarkerContent: any = + '
' + + ' ' + + '
' + newPositionMarkerContentBtn: any = + '
' + + ' ' + + '
|
' + + '
' //创建地图 - newPositionMarker:any//坐标实例 - createMap(){ + newPositionMarker: any//坐标实例 + createMap() { this.map = new AMap.Map('container', { - zoom:12 + zoom: 12 }) - this.map.setCity('上海市'); + this.map.setCity('株洲市'); //输入提示 var autoOptions = { input: "tipinput" }; - AMap.plugin(['AMap.PlaceSearch','AMap.AutoComplete'], ()=>{ + AMap.plugin(['AMap.PlaceSearch', 'AMap.AutoComplete'], () => { let auto = new AMap.AutoComplete(autoOptions); this.placeSearch = new AMap.PlaceSearch(); //构造地点查询类 - auto.on("select", (e)=>{ - this.newPositionMarker.setPosition([e.poi.location.lng,e.poi.location.lat]) - this.positionLngLat = {x: e.poi.location.lng, y: e.poi.location.lat} - this.map.setCenter([e.poi.location.lng,e.poi.location.lat]); //设置地图中心点 + auto.on("select", (e) => { + this.newPositionMarker.setPosition([e.poi.location.lng, e.poi.location.lat]) + this.positionLngLat = { x: e.poi.location.lng, y: e.poi.location.lat } + this.map.setCenter([e.poi.location.lng, e.poi.location.lat]); //设置地图中心点 });//注册监听,当选中某条记录时会触发 }); } //点击位置 - isGisTopBox:boolean = false // - searchTitle:any = ''// + isGisTopBox: boolean = false // + searchTitle: any = ''// - positionLngLat:any = {x:'',y:''}//临时坐标点 - atLastPositionLngLat:any = {x:'',y:''}//最终坐标点 - setPosition(){ - if(!this.isGisTopBox){ + positionLngLat: any = { x: '', y: '' }//临时坐标点 + atLastPositionLngLat: any = { x: '', y: '' }//最终坐标点 + setPosition() { + if (!this.isGisTopBox) { this.isGisTopBox = true this.newPositionMarker ? this.map.remove(this.newPositionMarker) : null let center - if(this.newPositionMarker && this.atLastPositionLngLat.x){//如果已经标注单位坐标 + if (this.newPositionMarker && this.atLastPositionLngLat.x) {//如果已经标注单位坐标 center = [this.atLastPositionLngLat.x, this.atLastPositionLngLat.y] - }else if(this.newPositionMarker && !this.atLastPositionLngLat.x && this.FireForceDetailInfo.location && this.FireForceDetailInfo.location.x){ + } else if (this.newPositionMarker && !this.atLastPositionLngLat.x && this.FireForceDetailInfo.location && this.FireForceDetailInfo.location.x) { center = [this.FireForceDetailInfo.location.x, this.FireForceDetailInfo.location.y] - }else{ + } else { center = this.map.getCenter(); //获取当前地图中心位置 } this.newPositionMarker = new AMap.Marker({ @@ -851,18 +850,18 @@ export class FireForceComponent implements OnInit { content: this.newPositionMarkerContentBtn, offset: new AMap.Pixel(-15, -18) }); - this.positionLngLat = {x: center.lng || center[0], y: center.lat || center[1]} + this.positionLngLat = { x: center.lng || center[0], y: center.lat || center[1] } this.map.add(this.newPositionMarker); this.isMapLabel = true - this.newPositionMarker.on('dragend', (e)=>{ - this.positionLngLat = {x: e.lnglat.lng, y: e.lnglat.lat} + this.newPositionMarker.on('dragend', (e) => { + this.positionLngLat = { x: e.lnglat.lng, y: e.lnglat.lat } }) //点击确定 - this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionOk'),'click',(event)=>{ + this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionOk'), 'click', (event) => { this.isGisTopBox = false this.map.remove(this.newPositionMarker) this.newPositionMarker = new AMap.Marker({ - position: [this.positionLngLat.x,this.positionLngLat.y], + position: [this.positionLngLat.x, this.positionLngLat.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }); @@ -870,29 +869,29 @@ export class FireForceComponent implements OnInit { this.map.add(this.newPositionMarker); this.positionLngLat = this.atLastPositionLngLat }) - this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionClose'),'click',(event)=>{ + this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionClose'), 'click', (event) => { this.isGisTopBox = false this.map.remove(this.newPositionMarker) - if(this.positionLngLat.x && this.positionLngLat.x != 0 && !this.atLastPositionLngLat.x){//直接取消 + if (this.positionLngLat.x && this.positionLngLat.x != 0 && !this.atLastPositionLngLat.x) {//直接取消 this.map.remove(this.newPositionMarker) this.positionLngLat = {} this.atLastPositionLngLat = {} - }else{ + } else { this.newPositionMarker = new AMap.Marker({ - position: [this.atLastPositionLngLat.x,this.atLastPositionLngLat.y], + position: [this.atLastPositionLngLat.x, this.atLastPositionLngLat.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }); - this.map.setCenter([this.atLastPositionLngLat.x,this.atLastPositionLngLat.y]); //设置地图中心点 + this.map.setCenter([this.atLastPositionLngLat.x, this.atLastPositionLngLat.y]); //设置地图中心点 this.map.add(this.newPositionMarker); this.positionLngLat = this.atLastPositionLngLat } })//取消 - this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionOk'),'touchstart',(event)=>{ + this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionOk'), 'touchstart', (event) => { this.isGisTopBox = false this.map.remove(this.newPositionMarker) this.newPositionMarker = new AMap.Marker({ - position: [this.positionLngLat.x,this.positionLngLat.y], + position: [this.positionLngLat.x, this.positionLngLat.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }); @@ -900,119 +899,121 @@ export class FireForceComponent implements OnInit { this.map.add(this.newPositionMarker); this.positionLngLat = this.atLastPositionLngLat }) - this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionClose'),'touchstart',(event)=>{ + this.renderer2.listen(this.elementRef.nativeElement.querySelector('#setPositionClose'), 'touchstart', (event) => { this.isGisTopBox = false this.map.remove(this.newPositionMarker) - if(this.positionLngLat.x && this.positionLngLat.x != 0 && !this.atLastPositionLngLat.x){//直接取消 + if (this.positionLngLat.x && this.positionLngLat.x != 0 && !this.atLastPositionLngLat.x) {//直接取消 this.map.remove(this.newPositionMarker) this.positionLngLat = {} this.atLastPositionLngLat = {} - }else{ + } else { this.newPositionMarker = new AMap.Marker({ - position: [this.atLastPositionLngLat.x,this.atLastPositionLngLat.y], + position: [this.atLastPositionLngLat.x, this.atLastPositionLngLat.y], content: this.newPositionMarkerContent, offset: new AMap.Pixel(-15, -18) }); - this.map.setCenter([this.atLastPositionLngLat.x,this.atLastPositionLngLat.y]); //设置地图中心点 + this.map.setCenter([this.atLastPositionLngLat.x, this.atLastPositionLngLat.y]); //设置地图中心点 this.map.add(this.newPositionMarker); this.positionLngLat = this.atLastPositionLngLat } })//取消 } - + } //上传附件 - file:any; //上传的文件 - AttachmentArr:any = []//上传附件地址集合 - uploadId:any//分块上传id - objectName:any - progressBarValue:any = 0//分块上传进度 - isMasklayer:boolean = false//圆圈遮罩层是否打开 - isMasklayerUploading:boolean = false//上传进度条遮罩层是否打开 - isMasklayerDownload:boolean = false//下载进度条遮罩层是否打开 - uploadAttachment(e){ + file: any; //上传的文件 + AttachmentArr: any = []//上传附件地址集合 + uploadId: any//分块上传id + objectName: any + progressBarValue: any = 0//分块上传进度 + isMasklayer: boolean = false//圆圈遮罩层是否打开 + isMasklayerUploading: boolean = false//上传进度条遮罩层是否打开 + isMasklayerDownload: boolean = false//下载进度条遮罩层是否打开 + uploadAttachment(e) { this.file = e.target.files[0] || null //上传的文件 let file = e.target.files[0] || null //获取上传的文件 let fileSize = file.size || null //上传文件的总大小 let shardSize = 5 * 1024 * 1024 //5MB一个分片 - - if (file && fileSize<=shardSize) { //上传文件<=5MB时 + + if (file && fileSize <= shardSize) { //上传文件<=5MB时 this.isMasklayer = true let formData = new FormData() - formData.append("file",file) + formData.append("file", file) let storageFolderId //要存储到服务器的文件夹id 一般为当前选中单位的id 如果新创建的话就存到public文件夹 this.selectedFireForce.id ? storageFolderId = this.selectedFireForce.id : storageFolderId = 'public' - this.http.post(`/api/Objects/PlanPlatform/FireForce/${storageFolderId}`,formData).subscribe((data:any)=>{ + this.http.post(`/api/Objects/PlanPlatform/FireForce/${storageFolderId}`, formData).subscribe((data: any) => { let obj = { - objectName:data.objectName, - fileName:data.fileName, - fileLength:data.fileLength + objectName: data.objectName, + fileName: data.fileName, + fileLength: data.fileLength } this.AttachmentArr.push(obj) this.isMasklayer = false let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('上传成功','确定',config); + this.snackBar.open('上传成功', '确定', config); }) - } else if (file && fileSize>shardSize) { //上传文件>5MB时,分块上传 + } else if (file && fileSize > shardSize) { //上传文件>5MB时,分块上传 this.isMasklayerUploading = true - let data = {filename: file.name} + let data = { filename: file.name } let storageFolderId //要存储到服务器的文件夹id 一般为当前选中单位的id 如果新创建的话就存到public文件夹 this.selectedFireForce.id ? storageFolderId = this.selectedFireForce.id : storageFolderId = 'public' - this.http.post(`/api/NewMultipartUpload/PlanPlatform/FireForce/${storageFolderId}`,{},{params:data}).subscribe((data:any)=>{ //初始化分段上传 + this.http.post(`/api/NewMultipartUpload/PlanPlatform/FireForce/${storageFolderId}`, {}, { params: data }).subscribe((data: any) => { //初始化分段上传 this.objectName = data.objectName this.uploadId = data.uploadId this.subsectionUploading() }) } } - PartNumberETag:any=[]; //每次返回需要保存的信息 + PartNumberETag: any = []; //每次返回需要保存的信息 //开始分段上传 - async subsectionUploading () { + async subsectionUploading() { let file = this.file || null //获取上传的文件 let fileSize = file.size || null //上传文件的总大小 let shardSize = 5 * 1024 * 1024 //5MB一个分片 let allSlice = Math.ceil(fileSize / shardSize) //总文件/5MB===共分多少段 - for (let i = 0;i < allSlice;i++) { //循环分段上传 - let start = i * shardSize //切割文件开始位置 - let end = Math.min(fileSize, start + shardSize); //切割文件结束位置 - let formData = new FormData() - formData.append("file",file.slice(start, end)) + for (let i = 0; i < allSlice; i++) { //循环分段上传 + let start = i * shardSize //切割文件开始位置 + let end = Math.min(fileSize, start + shardSize); //切割文件结束位置 + let formData = new FormData() + formData.append("file", file.slice(start, end)) - //同步写法实现异步调用 - let result = await new Promise((resolve, reject) => { - // await 需要后面返回一个 promise 对象 - this.http.post(`/api/MultipartUpload/PlanPlatform/${this.objectName}?uploadId=${this.uploadId}&partNumber=${i+1}`,formData).subscribe((data:any)=>{ - let msg = { - "partNumber":data.partNumber || null, - "eTag": data.eTag || null} - resolve(msg) // 调用 promise 内置方法处理成功 - }) - }); - this.PartNumberETag.push(result) - // this.progressBarValue = Number((i/allSlice).toFixed(2))*100 - this.progressBarValue = this.accMul(Number((i/allSlice).toFixed(2))*100,1,0) - if (this.PartNumberETag.length === allSlice) { - this.progressBarValue = 100 - this.endUploading()} + //同步写法实现异步调用 + let result = await new Promise((resolve, reject) => { + // await 需要后面返回一个 promise 对象 + this.http.post(`/api/MultipartUpload/PlanPlatform/${this.objectName}?uploadId=${this.uploadId}&partNumber=${i + 1}`, formData).subscribe((data: any) => { + let msg = { + "partNumber": data.partNumber || null, + "eTag": data.eTag || null + } + resolve(msg) // 调用 promise 内置方法处理成功 + }) + }); + this.PartNumberETag.push(result) + // this.progressBarValue = Number((i/allSlice).toFixed(2))*100 + this.progressBarValue = this.accMul(Number((i / allSlice).toFixed(2)) * 100, 1, 0) + if (this.PartNumberETag.length === allSlice) { + this.progressBarValue = 100 + this.endUploading() + } }//for循环 } //完成分块上传 - endUploading () { + endUploading() { let data = this.PartNumberETag - let paramsData = {uploadId:this.uploadId} - this.http.post(`/api/CompleteMultipartUpload/PlanPlatform/${this.objectName}`,data,{params:paramsData}).subscribe(data=>{ - this.PartNumberETag =[] //清空保存返回的信息 + let paramsData = { uploadId: this.uploadId } + this.http.post(`/api/CompleteMultipartUpload/PlanPlatform/${this.objectName}`, data, { params: paramsData }).subscribe(data => { + this.PartNumberETag = [] //清空保存返回的信息 let obj = { - objectName:this.objectName, - fileName:this.file.name, - fileLength:this.file.size + objectName: this.objectName, + fileName: this.file.name, + fileLength: this.file.size } this.AttachmentArr.push(obj) this.isMasklayerUploading = false//关闭进度条遮罩层 @@ -1020,74 +1021,75 @@ export class FireForceComponent implements OnInit { let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('上传成功','确定',config); + this.snackBar.open('上传成功', '确定', config); }) } //取消分块上传 cancelUploading() { - this.http.delete(`/api/MultipartUpload/PlanPlatform/${this.objectName}?uploadId=${this.uploadId}`).subscribe(data=>{ + this.http.delete(`/api/MultipartUpload/PlanPlatform/${this.objectName}?uploadId=${this.uploadId}`).subscribe(data => { this.progressBarValue = 0; - this.isMasklayerUploading= false - this.PartNumberETag =[] //清空保存返回的信息 + this.isMasklayerUploading = false + this.PartNumberETag = [] //清空保存返回的信息 const config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('取消上传成功','确定',config); + this.snackBar.open('取消上传成功', '确定', config); }) } //下载 - download (e) { + download(e) { this.isMasklayerDownload = true //开启下载进度条 let file = e //传递过来的文件元数据 let fileSize = file.fileLength //下载文件的总大小 let shardSize = 3 * 1024 * 1024 //文件大小是否大于10MB - if (file && fileSize<=shardSize) { //<=3MB时直接下载 + if (file && fileSize <= shardSize) { //<=3MB时直接下载 this.progressBarValue = 60 - this.http.get(`/api/Objects/PlanPlatform/${e.objectName}`,{responseType: 'blob'},).subscribe(data=>{ + 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] + 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时分块下载 + } else if (file && fileSize > shardSize) { //>3MB时分块下载 this.blockingDownload(e) //分段下载 } } //分段下载并合并 - async 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分段 + 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) }) + let result = await new Promise((result, reject) => { + 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) + 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] + let fileName = e.fileName ? e.fileName : e.objectName.split('/')[e.objectName.split('/').length - 1] link.setAttribute("download", fileName); document.body.appendChild(link); link.click(); @@ -1100,31 +1102,31 @@ export class FireForceComponent implements OnInit { } //删除图片 - deletedFile:any = [] - deleteFile(item,e){ + deletedFile: any = [] + deleteFile(item, e) { e.stopPropagation() let isTrue = window.confirm('确定要删除该文件吗?') - if(isTrue){ + if (isTrue) { let index - this.AttachmentArr.forEach((element,key) => { - if(element.objectName == item.objectName){ + this.AttachmentArr.forEach((element, key) => { + if (element.objectName == item.objectName) { index = key } }); - this.AttachmentArr.splice(index,1) + this.AttachmentArr.splice(index, 1) this.deletedFile.push(item) let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 - this.snackBar.open('删除成功','确定',config); + this.snackBar.open('删除成功', '确定', config); } } //点击文件 - clickFile(item){ - let suffix = item.fileName.split('.')[item.fileName.split('.').length-1] - if(suffix == 'png' || suffix == 'jpg' || suffix == 'JPG'){ - let dom = document.getElementById(`viewerjs`) + 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"; @@ -1133,7 +1135,7 @@ export class FireForceComponent implements OnInit { dom.appendChild(node) setTimeout(() => { let viewer = new Viewer(document.getElementById(`viewerjs`), { - hidden:()=>{ + hidden: () => { dom.removeChild(pObjs[0]); viewer.destroy(); } @@ -1141,40 +1143,40 @@ export class FireForceComponent implements OnInit { node.click(); }, 0); } - if(suffix == 'docx' || suffix == 'doc' || suffix == 'pdf'){ + if (suffix == 'docx' || suffix == 'doc' || suffix == 'pdf') { let fetchUrl = item.objectName - let json={ + let json = { doc: { - docId: new Date(), + docId: new Date(), title: item.fileName, - fetchUrl: `http://39.106.78.171:8000/api/Objects/PlanPlatform/`+fetchUrl + fetchUrl: `http://39.106.78.171:8000/api/Objects/PlanPlatform/` + fetchUrl }, user: { uid: "test", nickName: "test", avatar: "", privilege: [ - 'FILE_READ','FILE_DOWNLOAD', 'FILE_PRINT' + 'FILE_READ', 'FILE_DOWNLOAD', 'FILE_PRINT' ], }, } - var stringjson=JSON.stringify(json) + 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:80/apps/editor/openPreview?data=${base64}`) } - if(suffix == 'mp4'){ + if (suffix == 'mp4') { const dialogRef = this.dialog.open(ViewDetails, {//调用open方法打开对话框并且携带参数过去 - data: {item:item,type:"video"}, - id:'videodialog' + data: { item: item, type: "video" }, + id: 'videodialog' }); dialogRef.afterClosed().subscribe(); } } //收起展开列表 - isPutDown:boolean = false - putDown(){ + isPutDown: boolean = false + putDown() { this.isPutDown = !this.isPutDown } } @@ -1188,17 +1190,17 @@ export class FireForceComponent implements OnInit { styleUrls: ['./fire-force.component.scss'] }) export class AddFireForce { - - constructor(private http: HttpClient,public dialogRef: MatDialogRef,@Inject(MAT_DIALOG_DATA) public data,public snackBar: MatSnackBar) {} + + constructor(private http: HttpClient, public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data, public snackBar: MatSnackBar) { } - addList:any = [ - {id:4, name:'微型消防站'}, - {id:5, name:'企业专职消防站'}, - {id:6, name:'义务(志愿)消防站'} + addList: any = [ + { id: 4, name: '微型消防站' }, + { id: 5, name: '企业专职消防站' }, + { id: 6, name: '义务(志愿)消防站' } ] - selectedFireForceTypeIndex:any = 4 - selecteAddType(item,key){ + selectedFireForceTypeIndex: any = 4 + selecteAddType(item, key) { this.selectedFireForceTypeIndex = item.id } @@ -1206,7 +1208,7 @@ export class AddFireForce { } - confirm(){ + confirm() { this.dialogRef.close(this.selectedFireForceTypeIndex) } @@ -1222,15 +1224,15 @@ export class ViewDetails { // myControl = new FormControl(); //注入MatDialogRef,可以用来关闭对话框 //要访问对话框组件中的数据,必须使用MAT_DIALOG_DATA注入令牌 - constructor(private http: HttpClient,public dialogRef: MatDialogRef,@Inject(MAT_DIALOG_DATA) public data) {} - Url:string + constructor(private http: HttpClient, public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data) { } + Url: string onNoClick(): void { this.dialogRef.close(); } ngOnInit(): void { - this.Url = '/api/Objects/PlanPlatform/' + this.data.item.objectName + this.Url = '/api/Objects/PlanPlatform/' + this.data.item.objectName } - closeDialog(){ + closeDialog() { this.dialogRef.close(); } 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 5df61bb..bd10e77 100644 --- a/src/app/data-collection/linkage-forces/linkage-forces.component.ts +++ b/src/app/data-collection/linkage-forces/linkage-forces.component.ts @@ -414,7 +414,7 @@ export class LinkageForcesComponent implements OnInit { this.clearData() this.LinkageForceDetailInfo.linkageForceType = data this.newPositionMarker ? this.map.remove(this.newPositionMarker) : null - this.map.setCity('上海市'); + this.map.setCity('株洲市'); this.LinkageForceDetailInfo.contentVerify = null } } @@ -530,7 +530,7 @@ export class LinkageForcesComponent implements OnInit { this.map = new AMap.Map('container', { zoom:12 }) - this.map.setCity('上海市'); + this.map.setCity('株洲市'); //输入提示 var autoOptions = { input: "tipinput" 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 56e12e2..2ceb270 100644 --- a/src/app/data-collection/water-collection/water-collection.component.ts +++ b/src/app/data-collection/water-collection/water-collection.component.ts @@ -423,7 +423,7 @@ export class WaterCollectionComponent implements OnInit { this.newPositionMarker ? this.map.remove(this.newPositionMarker) : null this.positionLngLat.x = 0 this.positionLngLat.y = 0 - this.map.setCity('上海市'); + this.map.setCity('株洲市'); this.clearData() this.waterData.contentVerify = null } @@ -536,7 +536,7 @@ export class WaterCollectionComponent implements OnInit { this.map = new AMap.Map('container', { zoom:12 }) - this.map.setCity('上海市'); + this.map.setCity('株洲市'); //输入提示 var autoOptions = { input: "tipinput" 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 1318c34..5ec48ec 100644 --- a/src/app/gis-management/gis-labeling/gis-labeling.component.ts +++ b/src/app/gis-management/gis-labeling/gis-labeling.component.ts @@ -976,7 +976,7 @@ export class GisLabelingComponent implements OnInit { features: ['bg', 'road', 'point','building'], mapStyle: 'amap://styles/light', }); - this.map.setCity('上海市'); + this.map.setCity('株洲市'); } this.satelliteModel = false this.loadModel = false @@ -996,7 +996,7 @@ export class GisLabelingComponent implements OnInit { layers:[layer], //当只想显示标准图层时layers属性可缺省, }); - that.map.setCity('上海市'); + that.map.setCity('株洲市');; AMap.plugin(["AMap.RangingTool", "AMap.MouseTool"],function () { that.mouseTool=new AMap.MouseTool(that.map); }); diff --git a/src/app/key-unit/router-gis/router-gis.component.ts b/src/app/key-unit/router-gis/router-gis.component.ts index 114a152..9fd8bb6 100644 --- a/src/app/key-unit/router-gis/router-gis.component.ts +++ b/src/app/key-unit/router-gis/router-gis.component.ts @@ -98,7 +98,7 @@ export class RouterGISComponent implements OnInit { that.map = new AMap.Map('map',{ layers:[layer], //当只想显示标准图层时layers属性可缺省, }); - that.map.setCity('上海市'); + that.map.setCity('株洲市');; AMap.plugin('AMap.Driving', function() { that.startCoordinate && that.endCoordinate? that.queryGISRoute() : null }) @@ -179,7 +179,7 @@ export class RouterGISComponent implements OnInit { this.endCoordinate = null this.routeGIS? this.routeGIS.clear() : null this.routes = { distance: 0, time: 0, steps: [], } - this.map.setCity('上海市'); //设置地图中心点 + this.map.setCity('株洲市'); //设置地图中心点 } //交换起始点 diff --git a/src/app/key-unit/water-road/water-road.component.ts b/src/app/key-unit/water-road/water-road.component.ts index c20f9fd..a0f2680 100644 --- a/src/app/key-unit/water-road/water-road.component.ts +++ b/src/app/key-unit/water-road/water-road.component.ts @@ -312,7 +312,7 @@ export class WaterRoadComponent implements OnInit { this.map.add(this.unitMarker); this.waterSubmit(1) }else{ - this.map.setCity('上海市'); + this.map.setCity('株洲市'); let config = new MatSnackBarConfig(); config.verticalPosition = 'top'; config.duration = 3000 diff --git a/src/app/plan-audit/fireforce-audit/fireforce-audit.component.ts b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.ts index 615d782..c3ea28d 100644 --- a/src/app/plan-audit/fireforce-audit/fireforce-audit.component.ts +++ b/src/app/plan-audit/fireforce-audit/fireforce-audit.component.ts @@ -51,7 +51,7 @@ export class FireforceAuditComponent implements OnInit { // 将 markers 添加到地图 this.map.add(this.newPositionMarker); }else{ - this.map.setCity('上海市'); + this.map.setCity('株洲市'); } }, 0); diff --git a/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.ts b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.ts index c64562e..3357439 100644 --- a/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.ts +++ b/src/app/plan-audit/linkageforces-audit/linkageforces-audit.component.ts @@ -57,7 +57,7 @@ export class LinkageforcesAuditComponent implements OnInit { // 将 markers 添加到地图 this.map.add(this.newPositionMarker); }else{ - this.map.setCity('上海市'); + this.map.setCity('株洲市'); } }, 0); diff --git a/src/app/plan-audit/water-audit/water-audit.component.ts b/src/app/plan-audit/water-audit/water-audit.component.ts index 680375c..df7adbd 100644 --- a/src/app/plan-audit/water-audit/water-audit.component.ts +++ b/src/app/plan-audit/water-audit/water-audit.component.ts @@ -36,7 +36,7 @@ export class WaterAuditComponent implements OnInit { // 将 markers 添加到地图 this.map.add(this.newPositionMarker); }else{ - this.map.setCity('上海市'); + this.map.setCity('株洲市'); } }, 0); diff --git a/src/app/statistic-analysis/home/home.component.ts b/src/app/statistic-analysis/home/home.component.ts index 1912374..acd9636 100644 --- a/src/app/statistic-analysis/home/home.component.ts +++ b/src/app/statistic-analysis/home/home.component.ts @@ -130,9 +130,9 @@ export class HomeComponent implements OnInit { // let adcode = this.adcode; //行政编码 let adcode if(sessionStorage.getItem("realName") == "上海总队"){ - adcode = 310000 + adcode = 430200 }else{ - adcode = 310000 + adcode = 430200 } districtExplorer.loadAreaNode(adcode, (error, areaNode)=> { @@ -263,9 +263,9 @@ export class HomeComponent implements OnInit { // console.log('区域外点击'); let adcode if(sessionStorage.getItem("realName") == "上海总队"){ - adcode = 310000 + adcode = 430200 }else{ - adcode = 310000 + adcode = 430200 } districtExplorer.loadAreaNode(adcode, (error, areaNode)=> { //更新地图视野