Browse Source

[修改]重点单位提交审核参数修改

tangshan
chenjingyu 4 years ago
parent
commit
18aca1b1a9
  1. 4
      src/app/key-unit/key-unit-management/key-unit-management.component.ts
  2. 42
      src/app/plan-audit/wait-examineer/wait-examineer.component.html
  3. 2
      src/app/plan-audit/wait-examineer/wait-examineer.component.scss
  4. 13
      src/app/statistic-analysis/all-plan/all-plan.component.html
  5. 1
      src/app/statistic-analysis/all-plan/all-plan.component.scss
  6. 79
      src/app/statistic-analysis/all-plan/all-plan.component.ts
  7. 28
      src/app/statistic-analysis/all-plan/lookunit.html
  8. 28
      src/app/statistic-analysis/echarts-data.service.ts
  9. 82
      src/app/statistic-analysis/state/page-one/page-one.component.ts
  10. 23
      src/app/statistic-analysis/state/page-there/page-there.component.ts
  11. 23
      src/app/statistic-analysis/state/page-two-name/page-two-name.component.ts
  12. 21
      src/app/statistic-analysis/state/page-two-time/page-two-time.component.ts
  13. 28
      src/app/statistic-analysis/state/page-zhong-dui-details/page-zhong-dui-details.component.ts
  14. 12
      src/app/statistic-analysis/statistic-analysis.module.ts

4
src/app/key-unit/key-unit-management/key-unit-management.component.ts

@ -743,10 +743,10 @@ export class KeyUnitManagementComponent implements OnInit {
} }
//提交审核 //提交审核
submitAudit(element){ submitAudit(element){
//console.log(element) console.log(element)
let body:any = { let body:any = {
title:element.name, title:element.name,
Operation:0, Operation:element.contentVerify==null? 0:1,
itemId:element.id, itemId:element.id,
verifyState:3, verifyState:3,
contentType:11 contentType:11

42
src/app/plan-audit/wait-examineer/wait-examineer.component.html

@ -13,7 +13,8 @@
</div> </div>
</div> </div>
<div class="headthree"> <div class="headthree">
<span>类型:</span> <div class="headthreeone">
<span>类型:</span>
<mat-form-field> <mat-form-field>
<mat-select placeholder='请选择单位类型' name="unittype" [(ngModel)]="projectlevel"> <mat-select placeholder='请选择单位类型' name="unittype" [(ngModel)]="projectlevel">
<mat-option value="1">Ⅰ级预案</mat-option> <mat-option value="1">Ⅰ级预案</mat-option>
@ -30,15 +31,28 @@
<mat-option value="14">联动力量</mat-option> <mat-option value="14">联动力量</mat-option>
</mat-select> </mat-select>
</mat-form-field> </mat-form-field>
<span style="margin-left: 15px;">编制级别:</span> <span style="margin-left: 100px;">编制级别:</span>
<mat-form-field> <mat-form-field>
<mat-select name="preparelevel" placeholder='请选择编制级别' [(ngModel)]="PlanLevel"> <mat-select name="preparelevel" placeholder='请选择编制级别' [(ngModel)]="PlanLevel">
<mat-option *ngFor="let item of preparelevels" [value]="item.value">{{item.name}}</mat-option> <mat-option *ngFor="let item of preparelevels" [value]="item.value">{{item.name}}</mat-option>
</mat-select> </mat-select>
</mat-form-field> </mat-form-field>
<button mat-raised-button color="primary" type="submit">查询</button> </div>
<div class="headthreetwo">
<span >预案类型:</span>
<mat-form-field>
<mat-select placeholder='请选择预案类型' name="unittype" [(ngModel)]="projectlevel">
<mat-option value="1">二维预案</mat-option>
<mat-option value="2">三维预案</mat-option>
<mat-option value="4">其他预案</mat-option>
<mat-option value="16">文本预案</mat-option>
</mat-select>
</mat-form-field>
<button mat-raised-button color="primary" type="submit" style="margin-left: 100px;">查询</button>
<button mat-raised-button color="primary" (click)='record()'><img src="../../../assets/images/refresh.png"> <button mat-raised-button color="primary" (click)='record()'><img src="../../../assets/images/refresh.png">
重置</button> 重置</button>
</div>
</div> </div>
</form> </form>
@ -46,12 +60,13 @@
<table cellspacing="0" cellpadding="0" style="margin-top: 10px;"> <table cellspacing="0" cellpadding="0" style="margin-top: 10px;">
<thead> <thead>
<th style="width: 15%;">类型</th> <th style="width: 15%;">类型</th>
<th style="width: 10%;">预案类型</th>
<th style="width: 15%;">名称</th> <th style="width: 15%;">名称</th>
<th style="width: 10%;">操作</th> <th style="width: 5%;">操作</th>
<th style="width: 15%;">所属组织</th> <th style="width: 20%;">所属组织</th>
<th style="width: 15%;">审核状态</th> <th style="width: 10%;">审核状态</th>
<th style="width: 15%;">提交人</th> <th style="width: 10%;">提交人</th>
<th style="width: 25%;">提交时间</th> <th style="width: 15%;">提交时间</th>
</thead> </thead>
</table> </table>
<div class="tbodycss" id="tbodydiv"> <div class="tbodycss" id="tbodydiv">
@ -64,18 +79,19 @@
{{item.contentType=='1'?'Ⅰ级预案':item.contentType=='2'?'Ⅱ级预案':item.contentType=='3'?'Ⅲ级预案':item.contentType=='4'?'Ⅳ级预案':item.contentType=='5'? {{item.contentType=='1'?'Ⅰ级预案':item.contentType=='2'?'Ⅱ级预案':item.contentType=='3'?'Ⅲ级预案':item.contentType=='4'?'Ⅳ级预案':item.contentType=='5'?
'Ⅴ级预案':item.contentType=='6'?'应急预案(国家级)':item.contentType=='7'?'应急预案(市级)':item.contentType=='8'?'类型预案':item.contentType=='11'?'重点单位':item.contentType=='12'?'水源':item.contentType=='13'?'消防力量':item.contentType=='14'?'联动力量':'未知'}} 'Ⅴ级预案':item.contentType=='6'?'应急预案(国家级)':item.contentType=='7'?'应急预案(市级)':item.contentType=='8'?'类型预案':item.contentType=='11'?'重点单位':item.contentType=='12'?'水源':item.contentType=='13'?'消防力量':item.contentType=='14'?'联动力量':'未知'}}
</td> </td>
<td style="width: 10%;">二维预案</td>
<td style="width: 15%;">{{item.title}}</td> <td style="width: 15%;">{{item.title}}</td>
<td style="width: 10%;" <td style="width: 5%;"
[ngClass]="{'green': item.operation == '1','red':item.operation == '2','blue':item.operation == '0'}"> [ngClass]="{'green': item.operation == '1','red':item.operation == '2','blue':item.operation == '0'}">
{{item.operation=='0'?'新增':item.operation=='1'?'更新':'删除'}}</td> {{item.operation=='0'?'新增':item.operation=='1'?'更新':'删除'}}</td>
<td style="width: 15%;">{{item.organizationName}}</td> <td style="width: 20%;">{{item.organizationName}}</td>
<td style="width: 15%;" <td style="width: 10%;"
[ngClass]="{'green': item.verifyState == '1'||item.verifyState == '4','red':item.verifyState == '2'||item.verifyState == '5'}"> [ngClass]="{'green': item.verifyState == '1'||item.verifyState == '4','red':item.verifyState == '2'||item.verifyState == '5'}">
{{item.verifyState=='0'?'待初审':item.verifyState=='1'? {{item.verifyState=='0'?'待初审':item.verifyState=='1'?
'初审通过':item.verifyState=='2'?'初审驳回':item.verifyState=='3'?'待终审':item.verifyState=='4'?'终审通过':'终审驳回'}} '初审通过':item.verifyState=='2'?'初审驳回':item.verifyState=='3'?'待终审':item.verifyState=='4'?'终审通过':'终审驳回'}}
</td> </td>
<td style="width: 15%;">{{item.creatorName}}</td> <td style="width: 10%;">{{item.creatorName}}</td>
<td style="width: 25%;">{{item.createTime|date:'yyyy-MM-dd'}}</td> <td style="width: 15%;">{{item.createTime|date:'yyyy-MM-dd'}}</td>
</tr> </tr>
</table> </table>
</div> </div>

2
src/app/plan-audit/wait-examineer/wait-examineer.component.scss

@ -75,6 +75,8 @@
} }
} }
.headthree { .headthree {
display: flex;
flex-direction: column;
@media screen and (min-device-width: 1400px) { @media screen and (min-device-width: 1400px) {
margin-left: 30px; margin-left: 30px;
} }

13
src/app/statistic-analysis/all-plan/all-plan.component.html

@ -4,7 +4,7 @@
* @Author: sueRimn * @Author: sueRimn
* @Date: 2021-03-05 15:57:08 * @Date: 2021-03-05 15:57:08
* @LastEditors: sueRimn * @LastEditors: sueRimn
* @LastEditTime: 2021-03-24 14:19:05 * @LastEditTime: 2021-07-21 09:45:49
--> -->
<div class="body"> <div class="body">
<div class="topbox"> <div class="topbox">
@ -14,17 +14,26 @@
</div> </div>
<div class="title"> <div class="title">
<span>{{titlename}}</span> <span>{{titlename}}</span>
<button mat-stroked-button style="float: right;margin-right: 50px;" *ngIf="danwei" (click)='lookunit()'>单位类型查看</button>
</div> </div>
<div class="tablebox"> <div class="tablebox">
<table mat-table [dataSource]="tabledataSource" class="mat-elevation-z8"> <table mat-table [dataSource]="tabledataSource" class="mat-elevation-z8">
<ng-container matColumnDef="unitname"> <ng-container matColumnDef="unitname">
<th mat-header-cell *matHeaderCellDef style="width: 10%;">名称</th> <th mat-header-cell *matHeaderCellDef style="width: 10%;">预案名称</th>
<td mat-cell *matCellDef="let element">{{element.name}}</td> <td mat-cell *matCellDef="let element">{{element.name}}</td>
</ng-container> </ng-container>
<ng-container matColumnDef="modifiedTime"> <ng-container matColumnDef="modifiedTime">
<th mat-header-cell *matHeaderCellDef style="width: 10%;">添加时间</th> <th mat-header-cell *matHeaderCellDef style="width: 10%;">添加时间</th>
<td mat-cell *matCellDef="let element">{{element.creationTime|date:'yyyy-MM-dd'}}</td> <td mat-cell *matCellDef="let element">{{element.creationTime|date:'yyyy-MM-dd'}}</td>
</ng-container> </ng-container>
<ng-container matColumnDef="unitName" *ngIf="danwei">
<th mat-header-cell *matHeaderCellDef style="width: 10%;">单位名称</th>
<td mat-cell *matCellDef="let element">{{element.company.name}}</td>
</ng-container>
<ng-container matColumnDef="buildtype" *ngIf="danwei">
<th mat-header-cell *matHeaderCellDef style="width: 10%;">单位类型</th>
<td mat-cell *matCellDef="let element">{{element.company.buildingTypes[0].name}}</td>
</ng-container>
<ng-container matColumnDef="organizationName"> <ng-container matColumnDef="organizationName">
<th mat-header-cell *matHeaderCellDef style="width: 10%;">预案级别</th> <th mat-header-cell *matHeaderCellDef style="width: 10%;">预案级别</th>
<td mat-cell *matCellDef="let element">{{element.planCategory==1?'Ⅰ级预案':element.planCategory==2?'Ⅱ级预案': <td mat-cell *matCellDef="let element">{{element.planCategory==1?'Ⅰ级预案':element.planCategory==2?'Ⅱ级预案':

1
src/app/statistic-analysis/all-plan/all-plan.component.scss

@ -39,6 +39,7 @@
} }
} }
.tablebox{ .tablebox{
overflow-y: auto;
width: 100%; width: 100%;
text-align: center; text-align: center;
margin-top:2%; margin-top:2%;

79
src/app/statistic-analysis/all-plan/all-plan.component.ts

@ -4,7 +4,7 @@
* @Author: sueRimn * @Author: sueRimn
* @Date: 2021-03-15 11:32:30 * @Date: 2021-03-15 11:32:30
* @LastEditors: sueRimn * @LastEditors: sueRimn
* @LastEditTime: 2021-05-17 17:19:25 * @LastEditTime: 2021-07-22 14:12:43
*/ */
import { Component, OnInit, ViewChild, Inject } from '@angular/core'; import { Component, OnInit, ViewChild, Inject } from '@angular/core';
import { HttpClient } from '@angular/common/http' import { HttpClient } from '@angular/common/http'
@ -32,19 +32,41 @@ export class AllPlanComponent implements OnInit {
ngOnInit(): void { ngOnInit(): void {
this.route.queryParams.subscribe(params => { this.route.queryParams.subscribe(params => {
this.titlename = params['name']; this.titlename = params['xname'];
this.type = params['type']; this.type = params['type'];
this.jsId = params['id'] this.jsId = params['id']
this.tid = params.tid this.tid = params.tid
this.yuantype=params.name
this.pieonetype=params.pieonetype
}); });
if(this.yuantype=='二维预案'){
this.planType=1
}else if(this.yuantype=='三维预案'){
this.planType=2
}else if(this.yuantype=='其他预案'){
this.planType=4
}else if(this.yuantype=='文本预案'){
this.planType=16
}
if(this.tid=='pieone'&&(this.yuantype=='Ⅲ级预案'||this.yuantype=='Ⅳ级预案'||this.yuantype=='Ⅴ级预案')){
this.danwei=true
this.displayedColumns=['unitname', 'modifiedTime','unitName','buildtype', 'organizationName', 'buildingTypes', 'operation']
}else{
this.danwei=false
this.displayedColumns=['unitname', 'modifiedTime', 'organizationName', 'buildingTypes', 'operation']
}
this.getAlltabledate() this.getAlltabledate()
} }
tid tid
displayedColumns: string[] = ['unitname', 'modifiedTime', 'organizationName', 'buildingTypes', 'operation']; displayedColumns: string[]
tabledataSource tabledataSource
titlename //上个页面传过来的名称 titlename //上个页面传过来的名称
type //上个页面传过来:1重点单位 2预案 type //上个页面传过来:1重点单位 2预案
jsId //组织机构id jsId //组织机构id
yuantype//上个页面传过来的预案类型或者级别
danwei=true//控制单位字段显示或隐藏
pieonetype//判断是级别还是类型,上个页面传过来的参数
planType//预案类型
//分页 //分页
@ViewChild(MatPaginator, { static: true }) @ViewChild(MatPaginator, { static: true })
pageEvent: PageEvent; pageEvent: PageEvent;
@ -68,8 +90,9 @@ export class AllPlanComponent implements OnInit {
getAlltabledate() { getAlltabledate() {
let paramtedate: any = { let paramtedate: any = {
organizationId: this.jsId || '', organizationId: this.jsId || '',
planStatus: this.tid == 'pieone' ? '' : this.type, planStatus:this.tid=='pieone'?'': this.type,
PlanCategory: this.tid == 'pieone' ? this.type : '', PlanCategory:this.tid=='pieone'&&this.pieonetype=='true'?this.type:'',
PlanType:this.tid=='pieone'&&this.pieonetype=='false'?this.planType:'',
PageNumber: this.PageNumber || '1', PageNumber: this.PageNumber || '1',
PageSize: this.pageSizeOptions[0] PageSize: this.pageSizeOptions[0]
} }
@ -133,6 +156,14 @@ export class AllPlanComponent implements OnInit {
window.open(`/planManagement/webLook`) window.open(`/planManagement/webLook`)
} }
} }
//单位类型查看
lookunit(){
const dialogRef = this.dialog.open(lookunit, {
width: '350px',
height: '700px',
data: {jsId:this.jsId,type:this.type}
});
}
} }
@ -151,4 +182,42 @@ export class PsViewer {
}); });
} }
}
//单位类型查看弹出框
@Component({
selector: 'lookunit',
templateUrl: './lookunit.html',
styleUrls: ['./all-plan.component.scss']
})
export class lookunit{
constructor(private router: Router, private http: HttpClient, public dialog: MatDialog, public snackBar: MatSnackBar, public dialogRef: MatDialogRef<lookunit>, @Inject(MAT_DIALOG_DATA) public data: any) { }
ngOnInit(): void{
this.getAlltabledate()
}
tabledataSource//表格数据
displayedColumns=['unitname', 'count']
//分页
@ViewChild(MatPaginator, { static: true })
pageEvent: PageEvent;
paginator: MatPaginator;
length: any; //共多少条数据
pageSize: any; //每页条数
pageSizeOptions: number[] = [10] //设置每页条数
PageNumber: any; //第几页
//分页事件
changePage(e) {
this.PageNumber = e.pageIndex + 1
this.getAlltabledate()
}
//获取表格数据
getAlltabledate(){
let paramtedate: any = {
organizationId: this.data.jsId || '',
PlanCategory:this.data.type ||''
}
this.http.get(`/api/StatisticsAnalysis/Plans/BuildingTypes`, { params: paramtedate }).subscribe((data: any) => {
this.tabledataSource=data.planBuildingTypes
// console.log(this.tabledataSource)
})
}
} }

28
src/app/statistic-analysis/all-plan/lookunit.html

@ -0,0 +1,28 @@
<!--
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2021-07-21 09:15:47
* @LastEditors: sueRimn
* @LastEditTime: 2021-07-21 15:13:16
-->
<div class="body">
<div class="title">
<span>单位类型统计</span>
</div>
<div class="tablebox">
<table mat-table [dataSource]="tabledataSource" class="mat-elevation-z8">
<ng-container matColumnDef="unitname">
<th mat-header-cell *matHeaderCellDef style="width: 50%;">单位名称</th>
<td mat-cell *matCellDef="let element">{{element.buildingTypeName}}</td>
</ng-container>
<ng-container matColumnDef="count">
<th mat-header-cell *matHeaderCellDef style="width: 50%;">数量</th>
<td mat-cell *matCellDef="let element">{{element.count}}</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
</div>
</div>

28
src/app/statistic-analysis/echarts-data.service.ts

@ -485,23 +485,34 @@ export class EchartsDataService {
} }
//预案表格提示 //预案表格提示
apidata=[] apidata=[]
biaogeTishiyuan(datas,tid){ biaogeTishiyuan(datas,tid,pieonetype){
//localStorage.setItem('tishi',this.tishiData) //localStorage.setItem('tishi',this.tishiData)
this.tishiData='' this.tishiData=''
var countall=0//总计 var countall=0//总计
var countbi=0//站比 var countbi=0//站比
var allCountbi=0//总站比 var allCountbi=0//总站比
if(tid=='pieone'){ if(tid=='pieone'){
this.tishiData='' if(pieonetype){
for(var a in this.obdata[0].planCategoryStatistics.planCategories){ for(var a in this.obdata[0].planCategoryStatistics.planCategories){
if(this.obdata[0].planCategoryStatistics.planCategories[a].planCategoryName==datas.planStatusName){ if(this.obdata[0].planCategoryStatistics.planCategories[a].planCategoryName==datas.planStatusName){
this.tishiData=this.obdata[0].planCategoryStatistics.planCategories[a].organizations this.tishiData=this.obdata[0].planCategoryStatistics.planCategories[a].organizations
}
} }
for(var i=0;i<this.tishiData.length;i++){
countall+=this.tishiData[i].count
}
} }
else{
for(var i=0;i<this.tishiData.length;i++){ for(var a in this.obdata[0].planTypeStatistics.planTypes){
countall+=this.tishiData[i].count if(this.obdata[0].planTypeStatistics.planTypes[a].planTypeName==datas.planStatusName){
this.tishiData=this.obdata[0].planTypeStatistics.planTypes[a].organizations
}
} }
for(var i=0;i<this.tishiData.length;i++){
countall+=this.tishiData[i].count
}
}
}else{ }else{
for(var a in this.obdata[0].planStatusStatistics.planStatuses){ for(var a in this.obdata[0].planStatusStatistics.planStatuses){
@ -588,7 +599,6 @@ export class EchartsDataService {
}) })
this.allDate.push(result) this.allDate.push(result)
this.obdata=JSON.parse(JSON.stringify(this.allDate)) this.obdata=JSON.parse(JSON.stringify(this.allDate))
} }
selectType=0//选择年月 selectType=0//选择年月
selectOneYear selectOneYear

82
src/app/statistic-analysis/state/page-one/page-one.component.ts

@ -4,7 +4,7 @@
* @Author: sueRimn * @Author: sueRimn
* @Date: 2020-09-01 15:24:39 * @Date: 2020-09-01 15:24:39
* @LastEditors: sueRimn * @LastEditors: sueRimn
* @LastEditTime: 2021-07-14 14:31:47 * @LastEditTime: 2021-07-21 08:54:04
*/ */
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
@ -93,13 +93,13 @@ export class PageOneComponent implements OnInit {
}else{ }else{
this.tabledata[0].planTypeStatistics.planTypes.forEach((value,index,array) => { this.tabledata[0].planTypeStatistics.planTypes.forEach((value,index,array) => {
if(array[index].planTypeName=='Plan2D'){ if(array[index].planTypeName=='Plan2D'){
this.planTypeStatisticsdata.push({name:'二维预案',value:array[index].count,planStatusName:array[index].planCategoryName,type:1}) this.planTypeStatisticsdata.push({name:'二维预案',value:array[index].count,planStatusName:array[index].planTypeName,type:1})
}else if(array[index].planTypeName=='Plan3D'){ }else if(array[index].planTypeName=='Plan3D'){
this.planTypeStatisticsdata.push({name:'三维预案',value:array[index].count,planStatusName:array[index].planCategoryName,type:2}) this.planTypeStatisticsdata.push({name:'三维预案',value:array[index].count,planStatusName:array[index].planTypeName,type:2})
}else if(array[index].planTypeName=='Other'){ }else if(array[index].planTypeName=='Other'){
this.planTypeStatisticsdata.push({name:'其它预案',value:array[index].count,planStatusName:array[index].planCategoryName,type:3}) this.planTypeStatisticsdata.push({name:'其它预案',value:array[index].count,planStatusName:array[index].planTypeName,type:3})
}else if(array[index].planTypeName=='PlanText'){ }else if(array[index].planTypeName=='PlanText'){
this.planTypeStatisticsdata.push({name:'文本预案',value:array[index].count,planStatusName:array[index].planCategoryName,type:4}) this.planTypeStatisticsdata.push({name:'文本预案',value:array[index].count,planStatusName:array[index].planTypeName,type:4})
} }
}); });
} }
@ -135,7 +135,7 @@ export class PageOneComponent implements OnInit {
tooltip: { tooltip: {
trigger: 'item', trigger: 'item',
formatter: (params)=>{ formatter: (params)=>{
this.echartsData.biaogeTishiyuan(params.data,tid) this.echartsData.biaogeTishiyuan(params.data,tid,this.pieonetype)
return this.echartsData.res return this.echartsData.res
} }
}, },
@ -185,30 +185,58 @@ export class PageOneComponent implements OnInit {
this.indexBzt.on('click', (params) => { this.indexBzt.on('click', (params) => {
// console.log(params) // console.log(params)
if(tid=='pieone'){ if(tid=='pieone'){
for(var i=0;i<this.tabledata[0].planCategoryStatistics.planCategories.length;i++){ if(this.pieonetype){
if(this.tabledata[0].planCategoryStatistics.planCategories[i].planCategoryName==params.data.planStatusName){ for(var i=0;i<this.tabledata[0].planCategoryStatistics.planCategories.length;i++){
if((this.echartsData.level=='0'||this.echartsData.level=='1'||this.echartsData.level=='2')&&this.tabledata[0].planCategoryStatistics.planCategories[i].organizations.length>0){ if(this.tabledata[0].planCategoryStatistics.planCategories[i].planCategoryName==params.data.planStatusName){
this.tabledata[0].planCategoryStatistics.planCategories[i].organizations.forEach((element,index,array) => { if((this.echartsData.level=='0'||this.echartsData.level=='1'||this.echartsData.level=='2')&&this.tabledata[0].planCategoryStatistics.planCategories[i].organizations.length>0){
if(array[index].organizationId==this.orid){ this.tabledata[0].planCategoryStatistics.planCategories[i].organizations.forEach((element,index,array) => {
array.splice(index,1) if(array[index].organizationId==this.orid){
} array.splice(index,1)
window.setTimeout(()=>{
if(array.length>0){
this.router.navigate(['/statisticanalysis/statePageOne/time'],{queryParams:{'level':params.name,'type':params.data.type,'tid':'pieone'}});
} }
else{ window.setTimeout(()=>{
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':params.name,'id':null,'type':params.data.type,'tid':'pieone'}}); if(array.length>0){
} this.router.navigate(['/statisticanalysis/statePageOne/time'],{queryParams:{'level':params.name,'type':params.data.type,'tid':'pieone','pieonetype':this.pieonetype}});
}) }
}); else{
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':params.name,'name':params.name,'id':null,'type':params.data.type,'tid':'pieone','pieonetype':this.pieonetype}});
}
})
});
}
else if(this.echartsData.level=='3'){
//中队跳转
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':params.name,'name':params.name,'id':null,'type':params.data.type,'tid':'pieone','pieonetype':this.pieonetype}});
}
} }
else if(this.echartsData.level=='3'){ }
//中队跳转 }else{
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':params.name,'id':null,'type':params.data.type,'tid':'pieone'}}); for(var i=0;i<this.tabledata[0].planTypeStatistics.planTypes.length;i++){
if(this.tabledata[0].planTypeStatistics.planTypes[i].planTypeName==params.data.planStatusName){
if((this.echartsData.level=='0'||this.echartsData.level=='1'||this.echartsData.level=='2')&&this.tabledata[0].planCategoryStatistics.planCategories[i].organizations.length>0){
this.tabledata[0].planTypeStatistics.planTypes[i].organizations.forEach((element,index,array) => {
if(array[index].organizationId==this.orid){
array.splice(index,1)
}
window.setTimeout(()=>{
if(array.length>0){
this.router.navigate(['/statisticanalysis/statePageOne/time'],{queryParams:{'level':params.name,'type':params.data.type,'tid':'pieone','pieonetype':this.pieonetype}});
}
else{
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':params.name,'name':params.name,'id':null,'type':params.data.type,'tid':'pieone','pieonetype':this.pieonetype}});
}
})
});
}
else if(this.echartsData.level=='3'){
//中队跳转
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':params.name,'name':params.name,'id':null,'type':params.data.type,'tid':'pieone','pieonetype':this.pieonetype}});
}
} }
} }
} }
}else{ }else{
for(var i=0;i<this.tabledata[0].planStatusStatistics.planStatuses.length;i++){ for(var i=0;i<this.tabledata[0].planStatusStatistics.planStatuses.length;i++){
if(this.tabledata[0].planStatusStatistics.planStatuses[i].planStatusName==params.data.planStatusName){ if(this.tabledata[0].planStatusStatistics.planStatuses[i].planStatusName==params.data.planStatusName){
@ -222,7 +250,7 @@ export class PageOneComponent implements OnInit {
this.router.navigate(['/statisticanalysis/statePageOne/time'],{queryParams:{'level':params.name,'type':params.data.type,'tid':'pietwo'}}); this.router.navigate(['/statisticanalysis/statePageOne/time'],{queryParams:{'level':params.name,'type':params.data.type,'tid':'pietwo'}});
} }
else{ else{
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':params.name,'id':null,'type':params.data.type,'tid':'pietwo'}}); this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':params.name,'name':params.name,'id':null,'type':params.data.type,'tid':'pietwo'}});
} }
}) })
}); });
@ -230,7 +258,7 @@ export class PageOneComponent implements OnInit {
} }
else if(this.echartsData.level=='3'){ else if(this.echartsData.level=='3'){
//中队跳转 //中队跳转
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':params.name,'id':null,'type':params.data.type,'tid':'pietwo'}}); this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':params.name,'name':params.name,'id':null,'type':params.data.type,'tid':'pietwo'}});
} }
} }
} }

23
src/app/statistic-analysis/state/page-there/page-there.component.ts

@ -53,6 +53,16 @@ export class PageThereComponent implements OnInit {
this.zhong=param.zhong this.zhong=param.zhong
this.headName=datayuex+this.headtext; this.headName=datayuex+this.headtext;
this.tid=param.tid this.tid=param.tid
this.pieonetype=param.pieonetype
if(this.headtext=='二维预案'){
this.planType=1
}else if(this.headtext=='三维预案'){
this.planType=2
}else if(this.headtext=='其他预案'){
this.planType=4
}else if(this.headtext=='文本预案'){
this.planType=16
}
//console.log(headName) //console.log(headName)
}); });
@ -60,16 +70,19 @@ export class PageThereComponent implements OnInit {
this.getechartsdata() this.getechartsdata()
}) })
} }
pieonetype//判断是级别还是类型,上个页面传过来的参数
planType//预案类型
padHw padHw
headName headName
selectType:string = 'month'; //选择当前的 查询类型 按月/年 selectType:string = 'month'; //选择当前的 查询类型 按月/年
async getechartsdata(){ async getechartsdata(){
let paramdata={ let paramdata={
planStatus:this.tid=='pieone'?'': this.type, planStatus:this.tid=='pieone'?'': this.type,
PlanCategory:this.tid=='pieone'?this.type:'', PlanCategory:this.tid=='pieone'&&this.pieonetype=='true'?this.type:'',
OrganizationId:this.lastid OrganizationId:this.lastid,
PlanType:this.tid=='pieone'&&this.pieonetype=='false'?this.planType:''
} }
await this.echartsData.getData(paramdata,this.tid=='pieone'?'/api/StatisticsAnalysis/Plans/Category': `/api/StatisticsAnalysis/Plans/Status`) await this.echartsData.getData(paramdata,this.tid=='pieone'&&this.pieonetype=='true'?'/api/StatisticsAnalysis/Plans/Category':this.tid=='pieone'&&this.pieonetype=='false'?'/api/StatisticsAnalysis/Plans/Type': `/api/StatisticsAnalysis/Plans/Status`)
this.tabledata=JSON.parse(JSON.stringify(this.echartsData.allDate)) this.tabledata=JSON.parse(JSON.stringify(this.echartsData.allDate))
// console.log(this.tabledata) // console.log(this.tabledata)
for(var i=0;i<this.tabledata[0].organizations.length;i++){ for(var i=0;i<this.tabledata[0].organizations.length;i++){
@ -233,9 +246,9 @@ export class PageThereComponent implements OnInit {
let xIndex=this.zhutu.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0]; let xIndex=this.zhutu.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0];
/*事件处理代码书写位置*/ /*事件处理代码书写位置*/
if((this.echartsData.level=='0'||this.echartsData.level=='1')&&this.tabledata[0].organizations[xIndex].subOrganizations.length>=1){ if((this.echartsData.level=='0'||this.echartsData.level=='1')&&this.tabledata[0].organizations[xIndex].subOrganizations.length>=1){
this.router.navigate(['/statisticanalysis/PageZhongDuiDetails'],{queryParams:{'level':this.option.xAxis.data[xIndex]+this.headtext,'id':this.option.xAxis.id[xIndex],'type':this.type,'tid':this.tid}}); this.router.navigate(['/statisticanalysis/PageZhongDuiDetails'],{queryParams:{'level':this.option.xAxis.data[xIndex],'name':this.headtext,'id':this.option.xAxis.id[xIndex],'type':this.type,'tid':this.tid,'pieonetype':this.pieonetype}});
}else{ }else{
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':this.option.xAxis.data[xIndex],'id':this.option.xAxis.id[xIndex],'type':this.type,'tid':this.tid}}); this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':this.option.xAxis.data[xIndex],'name':this.headtext,'id':this.option.xAxis.id[xIndex],'type':this.type,'tid':this.tid,'pieonetype':this.pieonetype}});
} }
} }

23
src/app/statistic-analysis/state/page-two-name/page-two-name.component.ts

@ -29,6 +29,16 @@ export class PageTwoNameComponent implements OnInit {
this.headname=param.level this.headname=param.level
this.type=param.type this.type=param.type
this.tid=param.tid this.tid=param.tid
this.pieonetype=param.pieonetype
if(this.headname=='二维预案'){
this.planType=1
}else if(this.headname=='三维预案'){
this.planType=2
}else if(this.headname=='其他预案'){
this.planType=4
}else if(this.headname=='文本预案'){
this.planType=16
}
}); });
@ -42,11 +52,12 @@ export class PageTwoNameComponent implements OnInit {
async getechartsdata(){ async getechartsdata(){
let paramdata={ let paramdata={
planStatus:this.tid=='pieone'?'': this.type, planStatus:this.tid=='pieone'?'': this.type,
PlanCategory:this.tid=='pieone'?this.type:'' PlanCategory:this.tid=='pieone'&&this.pieonetype=='true'?this.type:'',
PlanType:this.tid=='pieone'&&this.pieonetype=='false'?this.planType:''
} }
await this.data.getData(paramdata,this.tid=='pieone'?'/api/StatisticsAnalysis/Plans/Category': `/api/StatisticsAnalysis/Plans/Status`) await this.data.getData(paramdata,this.tid=='pieone'&&this.pieonetype=='true'?'/api/StatisticsAnalysis/Plans/Category':this.tid=='pieone'&&this.pieonetype=='false'?'/api/StatisticsAnalysis/Plans/Type': `/api/StatisticsAnalysis/Plans/Status`)
this.tabledata=JSON.parse(JSON.stringify(this.data.allDate)) this.tabledata=JSON.parse(JSON.stringify(this.data.allDate))
//console.log(this.tabledata) console.log(this.tabledata)
for(var i=0;i<this.tabledata[0].organizations.length;i++){ for(var i=0;i<this.tabledata[0].organizations.length;i++){
this.zhiNameData.push(this.tabledata[0].organizations[i].organizationName) this.zhiNameData.push(this.tabledata[0].organizations[i].organizationName)
this.zhiNumData.push(this.tabledata[0].organizations[i].count) this.zhiNumData.push(this.tabledata[0].organizations[i].count)
@ -55,6 +66,8 @@ export class PageTwoNameComponent implements OnInit {
this.tiaoshiPao=this.data.qipao(this.tiaoshiPao,this.zhiNumData,this.zhiNameData) this.tiaoshiPao=this.data.qipao(this.tiaoshiPao,this.zhiNumData,this.zhiNameData)
this.planAdd() this.planAdd()
} }
pieonetype//判断是级别还是类型,上个页面传过来的参数
planType//预案类型
tid//上个页面点的第几个饼状图 tid//上个页面点的第几个饼状图
padHw padHw
headname//标题 headname//标题
@ -186,9 +199,9 @@ export class PageTwoNameComponent implements OnInit {
let xIndex=this.addEchart.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0]; let xIndex=this.addEchart.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0];
/*事件处理代码书写位置*/ /*事件处理代码书写位置*/
if((this.data.level=='0'||this.data.level=='1')&&this.tabledata[0].organizations[xIndex].subOrganizations.length>=1){ if((this.data.level=='0'||this.data.level=='1')&&this.tabledata[0].organizations[xIndex].subOrganizations.length>=1){
this.router.navigate(['/statisticanalysis/stataPageThere'],{queryParams:{'level':option.xAxis.data[xIndex],'headtext':_this.headname,'id':option.xAxis.id[xIndex],'type':this.type,'tid':this.tid}}); this.router.navigate(['/statisticanalysis/stataPageThere'],{queryParams:{'level':option.xAxis.data[xIndex],'headtext':_this.headname,'id':option.xAxis.id[xIndex],'type':this.type,'tid':this.tid,'pieonetype':this.pieonetype}});
}else{ }else{
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':option.xAxis.data[xIndex],'id':option.xAxis.id[xIndex],'type':this.type,'tid':this.tid}}); this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':option.xAxis.data[xIndex],'name':this.headname,'id':option.xAxis.id[xIndex],'type':this.type,'tid':this.tid,'pieonetype':this.pieonetype}});
} }
//this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':option.xAxis.data[xIndex],'id':option.xAxis.id[xIndex],'type':this.type}}); //this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':option.xAxis.data[xIndex],'id':option.xAxis.id[xIndex],'type':this.type}});

21
src/app/statistic-analysis/state/page-two-time/page-two-time.component.ts

@ -166,6 +166,8 @@ export class echartsComponent implements OnInit {
datayuex=[] datayuex=[]
dataYearX = [] dataYearX = []
dataYearY = [] dataYearY = []
pieonetype//判断是级别还是类型,上个页面传过来的参数
planType//预案类型
toggleTrue (){} toggleTrue (){}
//气泡提示数据获取 //气泡提示数据获取
bianli(){ bianli(){
@ -186,8 +188,17 @@ export class echartsComponent implements OnInit {
this.headtext=param.level this.headtext=param.level
this.type=param.type this.type=param.type
this.tid=param.tid this.tid=param.tid
this.pieonetype=param.pieonetype
}); });
if(this.headtext=='二维预案'){
this.planType=1
}else if(this.headtext=='三维预案'){
this.planType=2
}else if(this.headtext=='其他预案'){
this.planType=4
}else if(this.headtext=='文本预案'){
this.planType=16
}
window.setTimeout(()=>{ window.setTimeout(()=>{
this.getechartsData() this.getechartsData()
}) })
@ -205,8 +216,8 @@ export class echartsComponent implements OnInit {
this.zongcount=0 this.zongcount=0
let paramdata={ let paramdata={
planStatus:this.tid=='pieone'?'': this.type, planStatus:this.tid=='pieone'?'': this.type,
PlanCategory:this.tid=='pieone'?this.type:'', PlanCategory:this.tid=='pieone'&&this.pieonetype=='true'?this.type:'',
objectType:this.tid=='pieone'?2: 1, objectType:this.tid=='pieone'&&this.pieonetype=='true'?2:this.tid=='pieone'&&this.pieonetype=='false'?5: 1,
TrendType:0 TrendType:0
} }
await this.echartsData.getData(paramdata,`/api/StatisticsAnalysis/Trends`) await this.echartsData.getData(paramdata,`/api/StatisticsAnalysis/Trends`)
@ -419,7 +430,7 @@ export class echartsComponent implements OnInit {
if (this.twoExample.containPixel('grid',pointInPixel)) { if (this.twoExample.containPixel('grid',pointInPixel)) {
let xIndex=this.twoExample.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0]; let xIndex=this.twoExample.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0];
if(this.echartsData.selectType==2){ if(this.echartsData.selectType==2){
this.router.navigate(['/statisticanalysis/stataPageThereYearComponent'],{queryParams:{'level':this.headtext,'headtext':X[xIndex],'type':this.type,'tid':this.tid}}); this.router.navigate(['/statisticanalysis/stataPageThereYearComponent'],{queryParams:{'level':this.headtext,'headtext':X[xIndex],'type':this.type,'tid':this.tid,'pieonetype':this.pieonetype}});
}else{ }else{
/*事件处理代码书写位置*/ /*事件处理代码书写位置*/
if(this.echartsData.level=='0'||this.echartsData.level=='1'||this.echartsData.level=='2'){ if(this.echartsData.level=='0'||this.echartsData.level=='1'||this.echartsData.level=='2'){
@ -429,7 +440,7 @@ export class echartsComponent implements OnInit {
//this.router.navigate(['/statisticanalysis/statePageOne/name'],{queryParams:{'level':option.xAxis.data[xIndex],'headtext':this.headtext,'type':this.type}}); //this.router.navigate(['/statisticanalysis/statePageOne/name'],{queryParams:{'level':option.xAxis.data[xIndex],'headtext':this.headtext,'type':this.type}});
} else if(this.echartsData.level=='3'){ } else if(this.echartsData.level=='3'){
//中队跳转 //中队跳转
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':params.name,'type':this.type,'tid':this.tid}}); this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':params.name,'type':this.type,'tid':this.tid,'pieonetype':this.pieonetype}});
} }
} }

28
src/app/statistic-analysis/state/page-zhong-dui-details/page-zhong-dui-details.component.ts

@ -4,7 +4,7 @@
* @Author: sueRimn * @Author: sueRimn
* @Date: 2020-09-05 13:50:45 * @Date: 2020-09-05 13:50:45
* @LastEditors: sueRimn * @LastEditors: sueRimn
* @LastEditTime: 2021-04-20 15:42:08 * @LastEditTime: 2021-07-22 11:28:02
*/ */
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
@ -30,6 +30,9 @@ export class PageZhongDuiDetailsComponent implements OnInit {
organizationId=[] organizationId=[]
padHw padHw
tid tid
yuanName
pieonetype//判断是级别还是类型,上个页面传过来的参数
planType//预案类型
ngOnInit(): void { ngOnInit(): void {
if(sessionStorage.getItem('refresh') === 'true') { if(sessionStorage.getItem('refresh') === 'true') {
sessionStorage.removeItem('refresh'); sessionStorage.removeItem('refresh');
@ -49,8 +52,18 @@ export class PageZhongDuiDetailsComponent implements OnInit {
this.type=param.type this.type=param.type
this.lastid=param.id this.lastid=param.id
this.tid=param.tid this.tid=param.tid
this.yuanName=param.name
this.pieonetype=param.pieonetype
}); });
if(this.yuanName=='二维预案'){
this.planType=1
}else if(this.yuanName=='三维预案'){
this.planType=2
}else if(this.yuanName=='其他预案'){
this.planType=4
}else if(this.yuanName=='文本预案'){
this.planType=16
}
window.setTimeout(()=>{ window.setTimeout(()=>{
this.getechartsdata() this.getechartsdata()
}) })
@ -62,10 +75,11 @@ export class PageZhongDuiDetailsComponent implements OnInit {
async getechartsdata(){ async getechartsdata(){
let paramdata={ let paramdata={
planStatus:this.tid=='pieone'?'': this.type, planStatus:this.tid=='pieone'?'': this.type,
PlanCategory:this.tid=='pieone'?this.type:'', PlanCategory:this.tid=='pieone'&&this.pieonetype=='true'?this.type:'',
OrganizationId:this.lastid OrganizationId:this.lastid,
PlanType:this.tid=='pieone'&&this.pieonetype=='false'?this.planType:''
} }
await this.data.getData(paramdata,this.tid=='pieone'?'/api/StatisticsAnalysis/Plans/Category': `/api/StatisticsAnalysis/Plans/Status`) await this.data.getData(paramdata,this.tid=='pieone'&&this.pieonetype=='true'?'/api/StatisticsAnalysis/Plans/Category':this.tid=='pieone'&&this.pieonetype=='false'?'/api/StatisticsAnalysis/Plans/Type': `/api/StatisticsAnalysis/Plans/Status`)
this.tabledata=JSON.parse(JSON.stringify(this.data.allDate)) this.tabledata=JSON.parse(JSON.stringify(this.data.allDate))
// console.log(this.tabledata) // console.log(this.tabledata)
for(var i=0;i<this.tabledata[0].organizations.length;i++){ for(var i=0;i<this.tabledata[0].organizations.length;i++){
@ -118,7 +132,7 @@ export class PageZhongDuiDetailsComponent implements OnInit {
this.detailPlanEchart = echarts.init(document.getElementById('detailBox'),'walden'); this.detailPlanEchart = echarts.init(document.getElementById('detailBox'),'walden');
var option = { var option = {
title: { title: {
text: this.headName+`总数(${this.tabledata[0].totalCount})`, text: this.headName+this.yuanName+`总数(${this.tabledata[0].totalCount})`,
left: "center", left: "center",
top: "0", top: "0",
textStyle: { textStyle: {
@ -179,7 +193,7 @@ export class PageZhongDuiDetailsComponent implements OnInit {
const pointInPixel= [params.offsetX, params.offsetY]; const pointInPixel= [params.offsetX, params.offsetY];
if (this.detailPlanEchart.containPixel('grid',pointInPixel)){ if (this.detailPlanEchart.containPixel('grid',pointInPixel)){
let xIndex=this.detailPlanEchart.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0]; let xIndex=this.detailPlanEchart.convertFromPixel({seriesIndex:0},[params.offsetX, params.offsetY])[0];
this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'name':option.xAxis.data[xIndex],'id':option.xAxis.id[xIndex],'type':this.type,'tid':this.tid}}); this.router.navigate(['/statisticanalysis/AllPlan'],{queryParams:{'xname':option.xAxis.data[xIndex],'name':this.yuanName,'id':option.xAxis.id[xIndex],'type':this.type,'tid':this.tid,'pieonetype':this.pieonetype}});
} }
}); });

12
src/app/statistic-analysis/statistic-analysis.module.ts

@ -73,10 +73,18 @@ import { AllPlanComponent } from './all-plan/all-plan.component';
import { PsViewer }from './all-plan/all-plan.component'; import { PsViewer }from './all-plan/all-plan.component';
import { GkPsViewer2, PlanAnalysisBySynthesisComponent } from './plan-analysis-by-synthesis/plan-analysis-by-synthesis.component' import { GkPsViewer2, PlanAnalysisBySynthesisComponent } from './plan-analysis-by-synthesis/plan-analysis-by-synthesis.component'
import { PlanManagementModule } from '../plan-management/plan-management.module'; import { PlanManagementModule } from '../plan-management/plan-management.module';
import { RealMonitoringComponent } from './real-monitoring/real-monitoring.component' import { RealMonitoringComponent } from './real-monitoring/real-monitoring.component';
import { lookunit }from './all-plan/all-plan.component'
@NgModule({ @NgModule({
declarations: [GkPsViewer2,PageOneComponent, PageTwoTimeComponent, PageTwoNameComponent, PageZhongDuiDetailsComponent,echartsComponent, DeleteOneComponent, DeleteTwoComponent, DeleteThereComponent, DeleteFourComponent, BuildingTypeOneComponent, ScheduledUpdatesComponent,publicEchartsComponent,verifiedComponent,notVerifiedComponent,detailedInformationComponent,moreTableComponent,yueDateComponent,yuebuildingDateComponent,indexConditionComponent, BuildingTypeTwoForwardComponent, BuildingTypeTwoReverseComponent, BuildingTypeThreeDetailsComponent, AddUnitOneComponent, AddUnitTwoTypeStatisticsComponent, AddUnitTwoTypeDetailsComponent, AddUnitTwoTimeComponent,AddUnitThreeLineDetailsComponent,AddUnitThreeBarDetailsComponent, HomeComponent, DeleteThereLineDetailsComponent, PageThereComponent, PageThereYearComponent, DeleteTwoNewaddComponent, CompangInfoComponent, AllPlanComponent,PsViewer, RealMonitoringComponent,PlanAnalysisBySynthesisComponent], declarations: [GkPsViewer2,PageOneComponent, PageTwoTimeComponent, PageTwoNameComponent, PageZhongDuiDetailsComponent,
echartsComponent, DeleteOneComponent, DeleteTwoComponent, DeleteThereComponent, DeleteFourComponent, BuildingTypeOneComponent,
ScheduledUpdatesComponent,publicEchartsComponent,verifiedComponent,notVerifiedComponent,detailedInformationComponent,
moreTableComponent,yueDateComponent,yuebuildingDateComponent,indexConditionComponent, BuildingTypeTwoForwardComponent,
BuildingTypeTwoReverseComponent, BuildingTypeThreeDetailsComponent, AddUnitOneComponent, AddUnitTwoTypeStatisticsComponent,
AddUnitTwoTypeDetailsComponent, AddUnitTwoTimeComponent,AddUnitThreeLineDetailsComponent,AddUnitThreeBarDetailsComponent,
HomeComponent, DeleteThereLineDetailsComponent, PageThereComponent, PageThereYearComponent, DeleteTwoNewaddComponent,
CompangInfoComponent, AllPlanComponent,PsViewer, RealMonitoringComponent,PlanAnalysisBySynthesisComponent,lookunit],
imports: [ imports: [
CommonModule, CommonModule,
StatisticAnalysisRoutingModule, StatisticAnalysisRoutingModule,

Loading…
Cancel
Save