邵佳豪 4 years ago
parent
commit
3cae86cbf3
  1. 90
      src/app/plan-audit/basic-info/basic-info.component.html
  2. 106
      src/app/plan-audit/basic-info/basic-info.component.scss
  3. 25
      src/app/plan-audit/basic-info/basic-info.component.spec.ts
  4. 15
      src/app/plan-audit/basic-info/basic-info.component.ts
  5. 12
      src/app/plan-audit/plan-audit-routing.module.ts
  6. 7
      src/app/plan-audit/plan-audit.module.ts
  7. 127
      src/app/plan-audit/plan-record/plan-record.component.html
  8. 68
      src/app/plan-audit/plan-record/plan-record.component.scss
  9. 25
      src/app/plan-audit/plan-record/plan-record.component.spec.ts
  10. 33
      src/app/plan-audit/plan-record/plan-record.component.ts
  11. 225
      src/app/plan-audit/wait-examineer/wait-examineer.component.html
  12. 163
      src/app/plan-audit/wait-examineer/wait-examineer.component.scss
  13. 25
      src/app/plan-audit/wait-examineer/wait-examineer.component.spec.ts
  14. 104
      src/app/plan-audit/wait-examineer/wait-examineer.component.ts
  15. 25
      src/app/plan-management/entry-plan/entry-plan.component.html
  16. 44
      src/app/plan-management/entry-plan/entry-plan.component.ts
  17. 42
      src/app/plan-management/onetwo-entry-plan/newunit.html
  18. 35
      src/app/plan-management/onetwo-entry-plan/newunit.scss
  19. 136
      src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.html
  20. 116
      src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.scss
  21. 25
      src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.spec.ts
  22. 152
      src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.ts
  23. 12
      src/app/plan-management/plan-management-routing.module.ts
  24. 4
      src/app/plan-management/plan-management.module.ts
  25. BIN
      src/assets/images/bendi.png
  26. BIN
      src/assets/images/change.png
  27. BIN
      src/assets/images/chatchange.png
  28. BIN
      src/assets/images/newadd.png
  29. BIN
      src/assets/images/preview.png
  30. BIN
      src/assets/images/refresh.png
  31. BIN
      src/assets/images/update.png

90
src/app/plan-audit/basic-info/basic-info.component.html

@ -0,0 +1,90 @@
<!--
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-25 15:29:42
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-25 15:59:18
-->
<div class="content">
<div id="firefacilities" style="margin: 10px;">
<mat-accordion class="tableContent" >
<mat-expansion-panel style="box-shadow: 0 0 black;border: 1px solid #EEF1F5;">
<mat-expansion-panel-header collapsedHeight ='40px' expandedHeight='40px' class="panelhead" style="background-color: #2196F3;">
<mat-panel-title style="font-size: 16px;color: #FFFFFF;" >
单位信息
</mat-panel-title>
</mat-expansion-panel-header >
<div class="mainbox" >
<div class="mainleft">
<div class="inputbox" >
<span style="color: red;">*</span>
<span>统一社会信用代码:</span>
<mat-form-field>
<input readonly matInput id="creditcode" name="creditcode" type='text'
required minlength="1" maxlength="18"
pattern="^[0-9A-HJ-NP-RTUW-Y]{2}\d{6}[0-9A-HJ-NP-RTUW-Y]{10}$">
</mat-form-field>
</div>
<div class="inputbox">
<span style="color: red;">*</span>
<span>单位类型:</span>
<mat-form-field>
<mat-select disabled readonly required name="unittype" >
<mat-option>石油化工类</mat-option>
</mat-select>
</mat-form-field>
</div>
<div class="inputbox">
<span style="color: red;">*</span>
<span>联系人:</span>
<mat-form-field>
<input readonly matInput id="linkman" name="linkman" type='text'
required minlength="1"
>
</mat-form-field>
</div>
<div class="inputbox">
<span style="color: red;">*</span>
<span>联系电话:</span>
<mat-form-field>
<input readonly matInput id="linkphone" name="linkphone" type='text'
required pattern="^(?:\+?86)?1(?:3\d{3}|5[^4\D]\d{2}|8\d{3}|7(?:[35-8]\d{2}|4(?:0\d|1[0-2]|9\d))|9[0135-9]\d{2}|66\d{2})\d{6}$"
>
</mat-form-field>
</div>
<div class="inputbox" style="width: 700px;">
<span style="color: red;">*</span>
<span>辖区中队:</span>
<mat-form-field style="width: 538px;">
<input readonly matInput id="organization" name="organization" type='text'
required minlength="1"
readonly="value" >
</mat-form-field>
</div>
<div class="inputbox" style="width: 700px;">
<span style="color: red;">*</span>
<span>单位地址:</span>
<mat-form-field style="width: 538px;">
<input readonly matInput id="unitaddress" name="unitaddress" type='text'
required minlength="1">
</mat-form-field>
</div>
<div class="uploadimg" >
<span>单位照片:</span>
<div class="uploadingimg">
<img src="../../../assets/images/upload.jpg" alt="" style="width: 299px; height: 170px;" >
</div>
<!-- <mat-spinner *ngIf="isspinner" diameter= 50></mat-spinner> -->
</div>
</div>
</div>
</mat-expansion-panel>
</mat-accordion>
</div>
</div>

106
src/app/plan-audit/basic-info/basic-info.component.scss

@ -0,0 +1,106 @@
.content{
width: 100%;
height: 100%;
.tableContent{
width: 100%;
}
}
.mainbox{
height: 100%;
position: relative;
.mainleft{
width:800px;
height: 100%;
// background-color: yellow;
float: left;
.inputbox{
width: 343px;
height: 58px;
margin:2px 6px;
float: left;
text-align: end;
}
.organizationbox{
width:538px;
height: 200px;
background: white;
position: absolute;
top: 164px;
left:166px;
z-index: 100;
border: 1px solid grey;
overflow: auto;
li{
list-style: none;
}
mat-tree-node{
cursor: pointer;
}
mat-tree-node:hover{
background: rgba(225, 225, 225, 0.8);
}
}
.addbtn{
width: 695px;
position: absolute;
bottom: -495px;
text-align: center;
margin-bottom:20px;
button{
margin: 0 4px;
}
}
.uploadimg{
width: 400px;
height: 200px;
float: left;
margin-top:12px;
position: relative;
margin-left: 80px;
cursor: pointer;
span{
float: left;
}
// img{
// float: left;
// }
.uploadingimg{
width: 299px;
height: 170px;
// background: url('../../../assets/images/upload2.png') no-repeat center center;
position: absolute;
top: 0px;
left: 79px;
border: 1px dashed gray;
border-radius:3px;
}
}
.image{
// position: absolute;
// top: 199px;
// left: 160px;
// width: 299px;
// height: 170px;
input{
// width: 299px;
// height: 170px;
width: 190px;
margin-top: 160px;
cursor: pointer;
}
// opacity:0;
}
}
.mainright{
float: left;
width: 600px;
height: 400px;
// position: absolute;
// right: 170px;
}
}

25
src/app/plan-audit/basic-info/basic-info.component.spec.ts

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { BasicInfoComponent } from './basic-info.component';
describe('BasicInfoComponent', () => {
let component: BasicInfoComponent;
let fixture: ComponentFixture<BasicInfoComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ BasicInfoComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(BasicInfoComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

15
src/app/plan-audit/basic-info/basic-info.component.ts

@ -0,0 +1,15 @@
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-basic-info',
templateUrl: './basic-info.component.html',
styleUrls: ['./basic-info.component.scss']
})
export class BasicInfoComponent implements OnInit {
constructor() { }
ngOnInit(): void {
}
}

12
src/app/plan-audit/plan-audit-routing.module.ts

@ -1,13 +1,25 @@
/*
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-24 10:59:48
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-25 16:27:40
*/
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {DetachmentLevelComponent} from './detachment-level/detachment-level.component'
import { PlanAuditComponent } from './plan-audit/plan-audit.component';
import { PlanPassComponent } from './plan-pass/plan-pass.component';
import { PlanRecordComponent } from './plan-record/plan-record.component';
import { WaitExamineerComponent } from './wait-examineer/wait-examineer.component'
const routes: Routes = [
{ path: 'detachmentLevel', component: DetachmentLevelComponent },
{ path: 'planaudit', component: PlanAuditComponent },
{ path: 'planpass', component: PlanPassComponent },
{ path: 'planrecord', component: PlanRecordComponent },
{ path: 'waitexamineer', component: WaitExamineerComponent },
];
@NgModule({

7
src/app/plan-audit/plan-audit.module.ts

@ -48,10 +48,13 @@ import { PlanAuditComponent, PlanOpen } from './plan-audit/plan-audit.component'
import { FormsModule } from '@angular/forms';
import { PlanPassComponent } from './plan-pass/plan-pass.component';
import {ViewUnitDetailsPlanComponent} from '../key-unit/view-unit-details-plan/view-unit-details-plan.component'
import {KeyUnitModule} from '../key-unit/key-unit.module'
import {KeyUnitModule} from '../key-unit/key-unit.module';
import { PlanRecordComponent } from './plan-record/plan-record.component';
import { BasicInfoComponent } from './basic-info/basic-info.component';
import { WaitExamineerComponent } from './wait-examineer/wait-examineer.component'
@NgModule({
declarations: [DetachmentLevelComponent, PlanAuditComponent, PlanPassComponent,PlanOpen,],
declarations: [DetachmentLevelComponent, PlanAuditComponent, PlanPassComponent,PlanOpen, PlanRecordComponent, BasicInfoComponent, WaitExamineerComponent,],
imports: [
CommonModule,
PlanAuditRoutingModule,

127
src/app/plan-audit/plan-record/plan-record.component.html

@ -0,0 +1,127 @@
<!--
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-25 10:19:31
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-25 15:31:29
-->
<div class="box">
<div class="boxleft">
<div class="lefthead">
<div class="headdiv" style="margin-top: 30px;">
<span>操作类型:</span>
<input type="radio" name="level"><span>全部</span>
<input type="radio" name="level" style="margin-left: 50px;"><span>更新</span>
<input type="radio" name="level" style="margin-left: 50px;"><span>新增</span>
<input type="radio" name="level" style="margin-left: 50px;"><span>删除</span>
<span style="margin-left: 100px;">共计:80条</span>
</div>
<div class="headdiv">
<span>审核状态:</span>
<input type="radio" name="passstate"><span>全部</span>
<input type="radio" name="passstate" style="margin-left: 50px;"><span>已通过</span>
<input type="radio" name="passstate" style="margin-left: 50px;"><span>已拒绝</span>
</div>
<div class="headthree">
<span>类型:</span>
<mat-form-field>
<mat-select placeholder='请选择单位类型' name="unittype" [(ngModel)]="level">
<mat-option value="1">Ⅰ级</mat-option>
<mat-option value="2">Ⅱ级</mat-option>
</mat-select>
</mat-form-field>
<span style="margin-left: 30px;">所属组织:</span>
<mat-form-field>
<mat-select placeholder='请选择组织机构' name="js" [(ngModel)]="js">
<mat-option value="1">Ⅰ级</mat-option>
<mat-option value="2">Ⅱ级</mat-option>
</mat-select>
</mat-form-field>
<span style="margin-left: 30px;">时间:</span>
<mat-form-field class="example-full-width">
<input type="date" matInput name="companyName" autocomplete="off" [(ngModel)]="addtime">
</mat-form-field>
</div>
<div class="tablediv">
<table cellspacing="0" cellpadding="0">
<thead>
<th style="width: 15%;">类型</th>
<th style="width: 15%;">操作</th>
<th style="width: 15%;">所属组织</th>
<th style="width: 15%;">审核状态</th>
<th style="width: 15%;">提交人</th>
<th style="width: 25%;">提交时间</th>
</thead>
<tbody>
<tr *ngFor="let item of tableDate">
<td>{{item.level}}</td>
<td [ngClass]="{'green': item.option == '更新','red':item.option == '删除','blue':item.option == '新增'}">{{item.option}}</td>
<td>{{item.orgication}}</td>
<td [ngClass]="{'green': item.unitstate == '已通过','red':item.unitstate == '已拒绝'}">{{item.unitstate}}</td>
<td>{{item.addname}}</td>
<td>{{item.addtime}}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="boxright">
<mat-tab-group style="flex: 1;overflow-y: auto;" [selectedIndex]="selected.value" (selectedIndexChange)="selected.setValue($event)">
<mat-tab label="基本信息">
<ng-template matTabContent>
<app-basic-info></app-basic-info>
</ng-template>
</mat-tab>
<mat-tab label="平面图">
<ng-template matTabContent>
平面图
</ng-template>
</mat-tab>
<mat-tab label="四周毗邻">
<ng-template matTabContent>
四周毗邻
</ng-template>
</mat-tab>
<mat-tab label="消防设施">
<ng-template matTabContent>
消防设施
</ng-template>
</mat-tab>
<mat-tab label="重点部位">
<ng-template matTabContent>
重点部位
</ng-template>
</mat-tab>
<mat-tab label="功能分区">
<ng-template matTabContent>
功能分区
</ng-template>
</mat-tab>
<mat-tab label="实景图">
<ng-template matTabContent>
实景图
</ng-template>
</mat-tab>
<mat-tab label="CAD">
<ng-template matTabContent>
cad
</ng-template>
</mat-tab>
<!-- <mat-tab label="六熟悉">
<ng-template matTabContent>
六熟悉
</ng-template>
</mat-tab>
<mat-tab label="实战演练">
<ng-template matTabContent>
实战演练
</ng-template>
</mat-tab> -->
</mat-tab-group>
</div>
</div>

68
src/app/plan-audit/plan-record/plan-record.component.scss

@ -0,0 +1,68 @@
.box{
height: 100%;
width: 100%;
display: flex;
.boxleft{
height: 100%;
width: 45%;
background-color: #FFFFFF;
display: flex;
flex-direction: column;
.lefthead{
display: flex;
flex-direction: column;
.headdiv{
margin: 0 0 0 30px;
height: 40px;
span{
font-size: 16px;
margin-left: 3px;
}
input{
margin-left: 15px;
position: relative;
top: 1px;
}
}
.headthree{
margin-left: 30px;
mat-form-field{
width: 150px;
}
}
}
.tablediv{
width: 95%;
table{
margin: 20px 20px;
width: 100%;
//border: 1px solid #2196F3;
thead{
height:48px;
color: #FFFFFF;
background-color: #2196F3;
font-size: 16px;
}
tr:nth-child(odd){
background: #FAFAFA;
}
}
}
}
.boxright{
height: 100%;
width: 55%;
background-color: #FFFFFF;
margin-left: 10px;
}
}
th,td{
height:48px;
font-size: 16px;
text-align: center;
}
.green{color: #00C756;}
.red{color: #FF4D4D;}
.blue{color: #2196F3;}

25
src/app/plan-audit/plan-record/plan-record.component.spec.ts

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { PlanRecordComponent } from './plan-record.component';
describe('PlanRecordComponent', () => {
let component: PlanRecordComponent;
let fixture: ComponentFixture<PlanRecordComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ PlanRecordComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(PlanRecordComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

33
src/app/plan-audit/plan-record/plan-record.component.ts

@ -0,0 +1,33 @@
/*
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-25 10:19:31
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-25 14:53:46
*/
import { Component, OnInit } from '@angular/core';
import { FormControl } from '@angular/forms';
@Component({
selector: 'app-plan-record',
templateUrl: './plan-record.component.html',
styleUrls: ['./plan-record.component.scss']
})
export class PlanRecordComponent implements OnInit {
constructor() { }
ngOnInit(): void {
}
selected = new FormControl(0); //选项卡 实例
level//类型
js//组织机构
addtime//时间
tableDate=[
{level:"Ⅰ级预案",option:"更新",orgication:"浦东支队",unitstate:"已通过",addname:"赵信",addtime:"2020-12-15 10:36:24"},
{level:"消火栓",option:"新增",orgication:"闵行支队",unitstate:"已拒绝",addname:"张三",addtime:"2020-12-15 10:36:24"},
{level:"天然取水点",option:"删除",orgication:"上海总队",unitstate:"已拒绝",addname:"王五",addtime:"2020-12-15 10:36:24"}
]
}

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

@ -0,0 +1,225 @@
<div class="box">
<div class="boxleft">
<div class="lefthead">
<div class="headdiv" style="margin-top: 30px;">
<span>操作类型:</span>
<input type="radio" name="level"><span>全部</span>
<input type="radio" name="level" style="margin-left: 50px;"><span>更新</span>
<input type="radio" name="level" style="margin-left: 50px;"><span>新增</span>
<input type="radio" name="level" style="margin-left: 50px;"><span>删除</span>
<span style="margin-left: 100px;">共计:80条</span>
</div>
<div class="headthree">
<span>类型:</span>
<mat-form-field>
<mat-select placeholder='请选择单位类型' name="unittype" [(ngModel)]="level">
<mat-option value="1">Ⅰ级</mat-option>
<mat-option value="2">Ⅱ级</mat-option>
</mat-select>
</mat-form-field>
<span style="margin-left: 30px;">编制级别:</span>
<mat-form-field>
<mat-select placeholder='请选择编制级别' name="js" [(ngModel)]="js">
<mat-option value="1">Ⅰ级</mat-option>
<mat-option value="2">Ⅱ级</mat-option>
</mat-select>
</mat-form-field>
<button mat-raised-button color="primary" style="margin-left: 80px;"><img src="../../../assets/images/refresh.png" > 刷新</button>
</div>
<div class="tablediv">
<table cellspacing="0" cellpadding="0">
<thead>
<th style="width: 15%;">类型</th>
<th style="width: 15%;">操作</th>
<th style="width: 15%;">所属组织</th>
<th style="width: 15%;">审核状态</th>
<th style="width: 15%;">提交人</th>
<th style="width: 25%;">提交时间</th>
</thead>
<tbody>
<tr *ngFor="let item of tableDate">
<td>{{item.level}}</td>
<td [ngClass]="{'green': item.option == '更新','red':item.option == '删除','blue':item.option == '新增'}">{{item.option}}</td>
<td>{{item.orgication}}</td>
<td [ngClass]="{'green': item.unitstate == '已通过','red':item.unitstate == '已拒绝'}">{{item.unitstate}}</td>
<td>{{item.addname}}</td>
<td>{{item.addtime}}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="boxright">
<div class="righthead">
<div class="rightheadone">
<button mat-raised-button color="primary" (click)="buttonChange()"><img src="../../../assets/images/preview.png" style="margin-right: 3px;margin-bottom: 3px;">{{isallDate?'显示变更数据':'显示完整数据'}} </button>
<button mat-raised-button *ngIf="isallDate" style="background-color: #FFCC00; color: #FFFFFF;"><img src="../../../assets/images/change.png" style="margin-bottom: 2px;"> 预览得分</button>
</div>
<div class="rightheadtwo">
<button mat-raised-button style="color: #FFFFFF;background-color: #FF7161;float: right;">拒绝</button>
<button mat-raised-button style="color: #FFFFFF;background-color: #38D984;float: right;">同意</button>
</div>
</div>
<mat-tab-group *ngIf="isallDate" style="flex: 1;overflow-y: auto;margin-top: 10px;" [selectedIndex]="selected.value" (selectedIndexChange)="selected.setValue($event)">
<mat-tab label="基本信息">
<ng-template matTabContent>
<app-basic-info></app-basic-info>
</ng-template>
</mat-tab>
<mat-tab label="平面图">
<ng-template matTabContent>
平面图
</ng-template>
</mat-tab>
<mat-tab label="四周毗邻">
<ng-template matTabContent>
四周毗邻
</ng-template>
</mat-tab>
<mat-tab label="消防设施">
<ng-template matTabContent>
消防设施
</ng-template>
</mat-tab>
<mat-tab label="重点部位">
<ng-template matTabContent>
重点部位
</ng-template>
</mat-tab>
<mat-tab label="功能分区">
<ng-template matTabContent>
功能分区
</ng-template>
</mat-tab>
<mat-tab label="实景图">
<ng-template matTabContent>
实景图
</ng-template>
</mat-tab>
<mat-tab label="CAD">
<ng-template matTabContent>
cad
</ng-template>
</mat-tab>
<!-- <mat-tab label="六熟悉">
<ng-template matTabContent>
六熟悉
</ng-template>
</mat-tab>
<mat-tab label="实战演练">
<ng-template matTabContent>
实战演练
</ng-template>
</mat-tab> -->
</mat-tab-group>
<div id="firefacilities" *ngIf="!isallDate" style="margin: 10px;">
<mat-accordion class="tableContent" >
<mat-expansion-panel style="box-shadow: 0 0 black;border: 1px solid #EEF1F5;">
<mat-expansion-panel-header collapsedHeight ='40px' expandedHeight='40px' class="panelhead" style="background-color: #2196F3;">
<mat-panel-title style="font-size: 16px;color: #FFFFFF;" >
基本信息
</mat-panel-title>
</mat-expansion-panel-header >
<div class="accordingin">
<mat-accordion>
<mat-expansion-panel style="box-shadow: 0 0 black;border: 1px solid #EEF1F5;">
<mat-expansion-panel-header collapsedHeight ='30px' expandedHeight='30px' class="panelhead" >
<mat-panel-title style="font-size: 16px;color:#2196F3;" >
<img src="../../../assets/images/update.png"><span>修改-沃尔玛(上海)职业发展有限公司</span>
</mat-panel-title>
</mat-expansion-panel-header>
<table>
<tr>
<th>单位地址 :</th>
<td><span style="margin-left: 7px;"></span> <span style="color: #2196F3;">上海市上海市黄浦区武胜路333号</span>变更为
<span style="color: #2196F3;">上海市上海市黄浦区金陵西路28号</span></td>
</tr>
<tr>
<th>联系电话 :</th>
<td><span style="margin-left: 7px;"></span><span style="color: #2196F3;">15069853369</span>变更为
<span style="color: #2196F3;">13869877764</span></td>
</tr>
<tr>
<th>始建于(年):</th>
<td><span style="margin-left: 7px;"></span><span style="color: #2196F3;">1991</span>变更为
<span style="color: #2196F3;">2003</span></td>
</tr>
</table>
</mat-expansion-panel>
</mat-accordion>
</div>
</mat-expansion-panel>
</mat-accordion>
<mat-accordion class="tableContent" >
<mat-expansion-panel *ngIf="!isallDate" style="box-shadow: 0 0 black;border: 1px solid #EEF1F5;">
<mat-expansion-panel-header collapsedHeight ='40px' expandedHeight='40px' class="panelhead" style="background-color: #2196F3;">
<mat-panel-title style="font-size: 16px;color: #FFFFFF;" >
四周毗邻
</mat-panel-title>
</mat-expansion-panel-header >
<div class="accordingin">
<mat-accordion>
<mat-expansion-panel style="box-shadow: 0 0 black;border: 1px solid #EEF1F5;">
<mat-expansion-panel-header collapsedHeight ='30px' expandedHeight='30px' class="panelhead" >
<mat-panel-title style="font-size: 16px;color:#2196F3;" >
<img src="../../../assets/images/update.png"><span>一号建筑</span>
</mat-panel-title>
</mat-expansion-panel-header>
<div class="onebuilding">
<div class="accordingleft">
<span>一号建筑:</span>
</div>
<div class="accordingright">
<span></span><img src="../../../assets/images/chatchange.png">
<span>变更为</span><img src="../../../assets/images/chatchange.png">
</div>
</div>
</mat-expansion-panel>
</mat-accordion>
</div>
</mat-expansion-panel>
</mat-accordion>
<mat-accordion class="tableContent" >
<mat-expansion-panel *ngIf="!isallDate" style="box-shadow: 0 0 black;border: 1px solid #EEF1F5;">
<mat-expansion-panel-header collapsedHeight ='40px' expandedHeight='40px' class="panelhead" style="background-color: #2196F3;">
<mat-panel-title style="font-size: 16px;color: #FFFFFF;" >
消防设施
</mat-panel-title>
</mat-expansion-panel-header >
<div class="accordingin">
<mat-accordion>
<mat-expansion-panel style="box-shadow: 0 0 black;border: 1px solid #EEF1F5;">
<mat-expansion-panel-header collapsedHeight ='30px' expandedHeight='30px' class="panelhead" >
<mat-panel-title style="font-size: 16px;color:#2196F3;" >
<img src="../../../assets/images/update.png"><span>室内消火栓</span>
</mat-panel-title>
</mat-expansion-panel-header>
<table>
<tr>
<th>总数:</th>
<td><span style="margin-left: 7px;"></span><span style="color: #2196F3;">5</span>变更为
<span style="color: #2196F3;">8</span></td>
</tr>
</table>
</mat-expansion-panel>
</mat-accordion>
</div>
</mat-expansion-panel>
</mat-accordion>
</div>
</div>
</div>
<div class="echarts" style="display: none;">
<div class="bar" id="indexbar"></div>
<div class="zhu" id="zhu"></div>
</div>

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

@ -0,0 +1,163 @@
.box{
height: 100%;
width: 100%;
display: flex;
.boxleft{
height: 100%;
width: 45%;
background-color: #FFFFFF;
display: flex;
flex-direction: column;
.lefthead{
display: flex;
flex-direction: column;
.headdiv{
margin: 0 0 0 30px;
height: 40px;
span{
font-size: 16px;
margin-left: 3px;
}
input{
margin-left: 15px;
position: relative;
top: 1px;
}
}
.headthree{
margin-left: 30px;
mat-form-field{
width: 150px;
}
button{
width: 80px;
height: 36px;
font-size: 16px;
}
img{
height: 14px;
width: 14px;
}
}
}
.tablediv{
width: 95%;
table{
margin: 20px 20px;
width: 100%;
//border: 1px solid #2196F3;
thead{
height:48px;
color: #FFFFFF;
background-color: #2196F3;
font-size: 16px;
}
tr:nth-child(odd){
background: #FAFAFA;
}
}
}
}
.boxright{
height: 100%;
width: 55%;
background-color: #FFFFFF;
margin-left: 10px;
.righthead{
width: 100%;
display: flex;
button{
margin-left: 10px;
font-size: 16px;
}
.rightheadone{
width: 50%;
margin-top: 20px;
}
.rightheadtwo{
width: 40%;
margin-top: 20px;
margin-left: 6%;
}
}
}
}
th,td{
height:48px;
font-size: 16px;
text-align: center;
}
.green{color: #00C756;}
.red{color: #FF4D4D;}
.blue{color: #2196F3;}
.accordingin{
margin: 5px;
.panelhead{
background-color:#E8F4FE;
color: #2196F3;
font-size: 16px;
span{
margin-left: 10px;
}
}
table{
margin: 5px 0;
width: 100%;
th{
background-color: #FAFAFA;
width: 30%;
font-size: 16px;
text-align: right;
}
td{
text-align: left;
font-size: 16px;
margin-left: 3px;
}
}
.onebuilding{
display: flex;
margin: 5px 0;
width: 100%;
.accordingleft{
background-color: #FAFAFA;
width: 30%;
height: 120px;
font-size: 16px;
text-align: right;
}
.accordingright{
margin: 7px;
height: 100px;
font-size: 16px;
img{
margin-left: 10px;
//height: 80px;
}
span{
margin-left: 10px;
position: relative;
bottom: 90px;
}
}
}
}
.echarts{
width: 480px;
height: 304px;
display: flex;
background-color: #000000;
opacity: 0.6;
position: absolute;
top: 13%;
left: 55%;
z-index: 100;
.bar{
height: 100%;
width: 40%;
opacity: 1;
//margin: 40px 30px;
}
}

25
src/app/plan-audit/wait-examineer/wait-examineer.component.spec.ts

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { WaitExamineerComponent } from './wait-examineer.component';
describe('WaitExamineerComponent', () => {
let component: WaitExamineerComponent;
let fixture: ComponentFixture<WaitExamineerComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ WaitExamineerComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(WaitExamineerComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

104
src/app/plan-audit/wait-examineer/wait-examineer.component.ts

@ -0,0 +1,104 @@
/*
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-25 16:13:50
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-26 15:17:14
*/
import { Component, OnInit } from '@angular/core';
import { FormControl } from '@angular/forms';
declare var echarts: any;
@Component({
selector: 'app-wait-examineer',
templateUrl: './wait-examineer.component.html',
styleUrls: ['./wait-examineer.component.scss']
})
export class WaitExamineerComponent implements OnInit {
constructor() { }
ngOnInit(): void {
window.setTimeout(()=>{
this.bar()
},0)
}
selected = new FormControl(0); //选项卡 实例
level//类型
js//组织机构
addtime//时间
tableDate=[
{level:"Ⅰ级预案",option:"更新",orgication:"浦东支队",unitstate:"已通过",addname:"赵信",addtime:"2020-12-15 10:36:24"},
{level:"消火栓",option:"新增",orgication:"闵行支队",unitstate:"已拒绝",addname:"张三",addtime:"2020-12-15 10:36:24"},
{level:"天然取水点",option:"删除",orgication:"上海总队",unitstate:"已拒绝",addname:"王五",addtime:"2020-12-15 10:36:24"}
]
isallDate=true//是否显示完成数据,默认显示
companyBuiltInGrouping=["基本信息","四周毗邻","消防设施"]
indexbar //饼状图实例
//变更数据和全部数据切换按钮
buttonChange(){
this.isallDate=!this.isallDate
}
//分数饼状图
bar(){
var ec = echarts as any;
this.indexbar=ec.init(document.getElementById('indexbar'),'light');
var option = {
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c} ({d}%)'
},
title: {
text: '总分',
left: 'center',
bottom:70,
textStyle:{
color:'#FFFFFF',
fontSize:16
}
},
series: [
{
name: '分数',
type: 'pie',
radius: ['50%', '70%'],
bottom:60,
avoidLabelOverlap: false,
label: {
show: true,
position: 'center',
fontSize:16,
color:'#FFFFFF'
},
labelLine: {
show: false
},
data: [
{value: 93, name: '93分', itemStyle:{color:'#2196F3'}},
{value:7, itemStyle:{color:'#FFFFFF'}}
]
}
]
};
this.indexbar.setOption(option);
}
//分数柱状图
zhu(){
var ec = echarts as any;
this.indexbar=ec.init(document.getElementById('zhu'),'light');
var option={
xAxis: {
type: 'value'
},
yAxis: {
type: 'category',
data: ['基本信息', '四周毗邻', '消防设施', '重点单位', '功能分区', '实景图', '上传CAD', '六熟悉记录', '实战演练记录']
},
}
}
}

25
src/app/plan-management/entry-plan/entry-plan.component.html

@ -84,24 +84,7 @@
</mat-form-field>
<mat-checkbox style="margin-left: 6px;" [(ngModel)]="plcheck" name="plcheck">包含下级</mat-checkbox>
</div>
<div class="queryField">
<label style="margin-right: 10px;">建筑类型:</label>
<mat-form-field>
<mat-select name="preparelevel" placeholder='请选择建筑类型'>
<mat-option *ngFor="let item of buildingType">{{item.name}}</mat-option>
</mat-select>
</mat-form-field>
<!-- <mat-checkbox style="margin-left: 6px;" [(ngModel)]="plcheck" name="plcheck">包含下级</mat-checkbox> -->
</div>
<div class="queryField">
<label style="margin-right: 10px;">选择支队:</label>
<mat-form-field>
<mat-select name="preparelevel" [(ngModel)]="preparelevel" placeholder='请选择支队'>
<mat-option *ngFor="let item of tableDataZhi">{{item.name}}</mat-option>
</mat-select>
</mat-form-field>
<!-- <mat-checkbox style="margin-left: 6px;" [(ngModel)]="plcheck" name="plcheck">包含下级</mat-checkbox> -->
</div>
<div class="queryField">
<label style="margin-right: 10px;">信息完整度排序:</label>
<mat-form-field>
@ -128,7 +111,7 @@
<td mat-cell *matCellDef="let element">{{element.company.name}}</td>
</ng-container>
<ng-container matColumnDef="integrity">
<th mat-header-cell *matHeaderCellDef style="text-align: center;">信息完整度得分</th>
<th mat-header-cell *matHeaderCellDef style="text-align: center;">信息完整度</th>
<td mat-cell *matCellDef="let element;let i = index">
<div class="integrityDiv">
<span class="integrityNum">
@ -243,6 +226,10 @@
</div>
</td>
</ng-container>
<ng-container matColumnDef="level">
<th mat-header-cell *matHeaderCellDef>预案级别</th>
<td mat-cell *matCellDef="let element">Ⅲ(0)Ⅳ(0)Ⅴ(0)</td>
</ng-container>
<ng-container matColumnDef="jurisdictionsquadron">
<th mat-header-cell *matHeaderCellDef>消防救援站</th>
<td mat-cell *matCellDef="let element">{{element.company.organizationName}}</td>

44
src/app/plan-management/entry-plan/entry-plan.component.ts

@ -43,50 +43,9 @@ export class EntryPlanComponent implements OnInit {
pageSizeOptions: number[] = [10] //设置每页条数
PageNumber:any; //第几页
//支队提示框
tableDataZhi = [
{name:"浦东支队",number:"156",zhanbi:"3%"},
{name:"黄浦支队",number:"144",zhanbi:"2.8%"},
{name:"徐汇支队",number:"133",zhanbi:"2.1%"},
{name:"长宁支队",number:"122",zhanbi:"1.6%"},
{name:"静安支队",number:"120",zhanbi:"1.3%"},
{name:"普陀支队",number:"100",zhanbi:"1.1%"},
{name:"虹口支队",number:"95",zhanbi:"1%"},
{name:"杨浦支队",number:"90",zhanbi:"0.9%"},
{name:"闵行支队",number:"88",zhanbi:"0.8%"},
{name:"宝山支队",number:"83",zhanbi:"0.7%"},
{name:"徐汇支队",number:"133",zhanbi:"2.1%"},
{name:"长宁支队",number:"122",zhanbi:"1.6%"},
{name:"嘉定支队",number:"78",zhanbi:"0.6%"},
{name:"松江支队",number:"75",zhanbi:"0.5%"},
{name:"金山支队",number:"65",zhanbi:"0.4%"},
{name:"崇明支队",number:"55",zhanbi:"0.3%"}/* ,
{name:"总计",number:"1356",zhanbi:"19%"} */
]
//建筑类型提示框
buildingType = [
{name:"高层",number:"156",zhanbi:"3%"},
{name:"地下",number:"144",zhanbi:"2.8%"},
{name:"轨道交通",number:"133",zhanbi:"2.1%"},
{name:"化工生产",number:"122",zhanbi:"1.6%"},
{name:"储罐类",number:"120",zhanbi:"1.3%"},
{name:"厂房",number:"100",zhanbi:"1.1%"},
{name:"古建筑",number:"95",zhanbi:"1%"},
{name:"商市场",number:"90",zhanbi:"0.9%"},
{name:"医院",number:"88",zhanbi:"0.8%"},
{name:"学校",number:"83",zhanbi:"0.7%"},
{name:"宾馆",number:"133",zhanbi:"2.1%"},
{name:"娱乐场所",number:"122",zhanbi:"1.6%"},
{name:"餐饮业",number:"78",zhanbi:"0.6%"},
{name:"影剧院",number:"75",zhanbi:"0.5%"},
{name:"展览建筑",number:"65",zhanbi:"0.4%"},
{name:"隧道",number:"55",zhanbi:"0.3%"}/* ,
{name:"总计",number:"1356",zhanbi:"19%"} */
]
displayedColumns: string[] = ['unitname','integrity','jurisdictionsquadron', 'unittype','plantype', 'passstate','projectlevel','operation'];
displayedColumns: string[] = ['unitname','integrity','level','jurisdictionsquadron', 'unittype','plantype', 'passstate','projectlevel','operation'];
allorganizations:any //所有组织机构
allunittype:any //所有单位类型
tabledataSource:any //表格数据
@ -348,6 +307,7 @@ export class EntryPlanComponent implements OnInit {
this.allPlanInfo = data
this.tabledataSource = data.items
console.log(this.tabledataSource)
})
}

42
src/app/plan-management/onetwo-entry-plan/newunit.html

@ -0,0 +1,42 @@
<!--
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-24 16:26:16
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-24 17:29:48
-->
<div class="box">
<div class="top">
<span>新增预案</span>
</div>
<div class="queryField">
<label style="margin-right: 10px;">预案名称:</label>
<mat-form-field class="example-full-width">
<input matInput placeholder="请输入单位名称" name="companyName" autocomplete="off" [(ngModel)]="unitname">
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">预案类型:</label>
<mat-form-field class="example-full-width">
<input matInput placeholder="请输入预案类型" name="companyName" autocomplete="off" [(ngModel)]="unittype">
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">预案级别:</label>
<mat-form-field>
<mat-select placeholder='请选择单位类型' name="unittype" [(ngModel)]="level">
<mat-option value="1">Ⅰ级</mat-option>
<mat-option value="2">Ⅱ级</mat-option>
</mat-select>
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">上传本地文件:</label>
<button mat-raised-button color="primary" ><img style="margin-bottom: 2px;" src="../../../assets/images/bendi.png"> 本地文件</button>
</div>
<div class="bottom">
<button mat-raised-button color="primary">确定</button>
<button mat-raised-button style="margin-left: 50px;" (click)="close()">取消</button>
</div>
</div>

35
src/app/plan-management/onetwo-entry-plan/newunit.scss

@ -0,0 +1,35 @@
.box{
height: 100%;
width: 100%;
display: flex;
flex-direction: column;
}
.queryField {
margin: 3px 5px;
input {
width: 50px;
height: 18px;
line-height: 18px;
border-radius: 3px;}
button{
width: 140px;
font-size: 16px;
}
}
.top{
width: 100%;
margin-bottom: 20px;
span{
color: #2196F3;
margin-left: 100px;
font-size: 18px;
}
}
.bottom{
margin: 30px 30px;
button{
width: 80px;
height: 36px;
font-size: 16px;
}
}

136
src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.html

@ -0,0 +1,136 @@
<!--
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-24 14:15:10
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-25 10:12:02
-->
<div style="height: 100%;overflow-y: auto;">
<div class="header" >
<form >
<div class="queryBox">
<div class="queryField">
<label style="margin-right: 10px;">预案名称:</label>
<mat-form-field class="example-full-width">
<input matInput placeholder="请输入单位名称" name="companyName" autocomplete="off" [(ngModel)]="unitname">
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">预案级别:</label>
<mat-form-field>
<mat-select placeholder='请选择单位类型' name="unittype" [(ngModel)]="level">
<mat-option value="1">Ⅰ级</mat-option>
<mat-option value="2">Ⅱ级</mat-option>
</mat-select>
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">添加人:</label>
<mat-form-field class="example-full-width">
<input matInput placeholder="请输入添加人" name="companyName" autocomplete="off" [(ngModel)]="addname">
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">添加时间:</label>
<mat-form-field class="example-full-width">
<input type="date" matInput name="companyName" autocomplete="off" [(ngModel)]="addtime">
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">预案类型:</label>
<mat-form-field class="example-full-width">
<input matInput placeholder="请输入预案类型" name="companyName" autocomplete="off" [(ngModel)]="unittype">
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">审核状态:</label>
<mat-form-field>
<mat-select name="toExamine" placeholder='请选择审核状态' [(ngModel)]="unitstate">
<mat-option value="8">未提交审核</mat-option>
<mat-option value="1">审核中</mat-option>
<mat-option value="2">审核通过</mat-option>
<mat-option value="4">审核退回</mat-option>
</mat-select>
</mat-form-field>
</div>
<div class="queryField">
<label style="margin-right: 10px;">编制级别:</label>
<mat-form-field>
<mat-select name="preparelevel" placeholder='请选择编制级别' [(ngModel)]="projectlevel">
<!-- <mat-option value="1">总队</mat-option>
<mat-option value="2">支队</mat-option>
<mat-option value="4">大队</mat-option>
<mat-option value="8">中队</mat-option> -->
<mat-option *ngFor="let item of preparelevels" [value]="item.value">{{item.name}}</mat-option>
</mat-select>
</mat-form-field>
<mat-checkbox style="margin-left: 6px;" [(ngModel)]="plcheck" name="plcheck">包含下级</mat-checkbox>
</div>
</div>
<div style="width: 100%;text-align: center;">
<button mat-raised-button color="primary" type="submit">查询</button>
<button mat-raised-button style="margin-left: 25px;" type="button" (click)="reset()">重置</button>
</div>
</form>
</div>
<mat-divider></mat-divider>
<div class="newadd">
<button mat-raised-button color="primary" (click)="addunit()"><img style="margin-bottom: 3px;" src="../../../assets/images/newadd.png"> 新增</button>
</div>
<div class="body">
<div class="tablebox">
<table mat-table class="mat-elevation-z8">
<ng-container matColumnDef="unitname">
<th mat-header-cell *matHeaderCellDef>预案名称</th>
<!-- <td mat-cell *matCellDef="let element">{{element.company.name}}</td> -->
</ng-container>
<ng-container matColumnDef="level">
<th mat-header-cell *matHeaderCellDef>预案级别</th>
<!-- <td mat-cell *matCellDef="let element">Ⅲ(0)Ⅳ(0)Ⅴ(0)</td> -->
</ng-container>
<ng-container matColumnDef="addname">
<th mat-header-cell *matHeaderCellDef>添加人</th>
</ng-container>
<ng-container matColumnDef="addtime">
<th mat-header-cell *matHeaderCellDef>添加时间</th>
</ng-container>
<ng-container matColumnDef="plantype">
<th mat-header-cell *matHeaderCellDef>预案类型</th>
<!-- <td mat-cell *matCellDef="let element">{{element.planType}}</td> -->
</ng-container>
<ng-container matColumnDef="passstate">
<th mat-header-cell *matHeaderCellDef>审核状态</th>
<!-- <td mat-cell *matCellDef="let element">{{element.auditStatus}}</td> -->
</ng-container>
<ng-container matColumnDef="isopen">
<th mat-header-cell *matHeaderCellDef>是否公开</th>
<!-- <td mat-cell *matCellDef="let element">{{element.planLevel}}</td> -->
</ng-container>
<ng-container matColumnDef="projectlevel">
<th mat-header-cell *matHeaderCellDef>编制级别</th>
<!-- <td mat-cell *matCellDef="let element">{{element.planLevel}}</td> -->
</ng-container>
<ng-container matColumnDef="operation">
<th mat-header-cell *matHeaderCellDef>操作</th>
<!-- <td mat-cell *matCellDef="let element">
<span style="color: blue;">查看预案</span>
</td> -->
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
<mat-paginator pageEvent [length]="length"
[pageSize]="pageSize"
[pageSizeOptions]="pageSizeOptions">
</mat-paginator>
</div>
</div>
</div>

116
src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.scss

@ -0,0 +1,116 @@
.header {
width: 100%;
padding: 12px 10px;
// margin-bottom: 10px;
box-sizing: border-box;
// border-bottom: 1px solid black;
.queryBox {
box-sizing: border-box;
padding: 5px 25px;
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-items:center;
// justify-content:center;
.queryField {
margin: 3px 40px;
input {
width: 180px;
height: 22px;
line-height: 22px;
border-radius: 3px;}
}
} //queryBox
.ordiv{
position: relative;
.organizationbox{
width:450px;
height: 200px;
background: white;
position: absolute;
top: 48px;
left: 77px;
z-index: 999;
border: 1px solid grey;
overflow-y: auto;
background-color: #fafafa;
li{
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
background-color: #fafafa;
}
mat-tree-node{
cursor: pointer;
white-space:pre;
background-color: #fafafa;
}
mat-tree-node:hover{
background: rgba(225, 225, 225, 0.8);
li{
background: rgba(225, 225, 225, 0.8);
}
}
.closediv{
z-index: 100;
position: absolute;
right: 0;
top: 0;
width: 30px;
height: 30px;
cursor: pointer;
line-height: 30px;
text-align: center;
}
.closediv:hover{
background:rgba(225, 225, 225, 0.8);
}
}
}
}
.newadd{
margin-top: 10px;
margin-left: 70px;
button{
font-size: 16px;
width: 100px;
height: 36px;
}
}
.body{
.buttonbox{
padding-left: 50px;
button{
margin:0 10px
}
}
.tablebox{
table{
width: 100%;
margin-left: 0%;
margin-top:15px;
th{
text-align: center;
}
}
mat-paginator{
width: 100%;
margin-left: 0%;
}
.mat-column-unitname{
width: 15%;
}
.mat-column-integrity{
width: 13%;
}
.mat-column-operation{
width: 5%;
}
.mat-column-jurisdictionsquadron{
width: 10%;
}
}
}

25
src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.spec.ts

@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { OnetwoEntryPlanComponent } from './onetwo-entry-plan.component';
describe('OnetwoEntryPlanComponent', () => {
let component: OnetwoEntryPlanComponent;
let fixture: ComponentFixture<OnetwoEntryPlanComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ OnetwoEntryPlanComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(OnetwoEntryPlanComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

152
src/app/plan-management/onetwo-entry-plan/onetwo-entry-plan.component.ts

@ -0,0 +1,152 @@
/*
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-24 14:15:10
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-25 10:29:54
*/
import { Component, OnInit, ViewChild, Inject } from '@angular/core';
import { HttpClient } from '@angular/common/http'
import { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree';
import { MatPaginator } from '@angular/material/paginator';
import { FlatTreeControl } from '@angular/cdk/tree';
import { FormControl } from '@angular/forms';
import { Router,ActivatedRoute } from '@angular/router'
import { PageEvent } from '@angular/material/paginator';
import { MatDialogRef, MatDialog, MAT_DIALOG_DATA } from '@angular/material/dialog';
import { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';
import { TreeService } from '../../http-interceptors/tree.service'
import { ConstantPool } from '@angular/compiler';
import { MatTableDataSource } from '@angular/material/table';
export interface PeriodicElement {
unitname: string;
level: string;
addname: string;
addtime: string;
unittype: string;
unitstate: string;
isopen: string;
projectlevel: string;
}
const ELEMENT_DATA=[
{name:"梧州市中恒制药有限公司",jibie:"Ⅰ级"},
{name:"梧州市中恒制药有限公司",jibie:"Ⅰ级"}
]
@Component({
selector: 'app-onetwo-entry-plan',
templateUrl: './onetwo-entry-plan.component.html',
styleUrls: ['./onetwo-entry-plan.component.scss']
})
export class OnetwoEntryPlanComponent implements OnInit {
constructor(private http:HttpClient,private router:Router,private route:ActivatedRoute,private tree: TreeService,public dialog: MatDialog,public snackBar: MatSnackBar) { }
ngOnInit(): void {
let level = sessionStorage.getItem("level");
if(level == "0"){//如果是总队
this.preparelevels = [
{name:"总队",value:"1"},
{name:"支队",value:"2"},
{name:"大队",value:"4"},
{name:"中队",value:"8"}
]
}
if(level == "1"){//如果是支队
this.preparelevels = [
{name:"支队",value:"2"},
{name:"大队",value:"4"},
{name:"中队",value:"8"}
]
}
if(level == "2"){//如果是大队
this.preparelevels = [
{name:"大队",value:"4"},
{name:"中队",value:"8"}
]
}
if(level == "3"){//如果是中队
this.preparelevels = [
{name:"中队",value:"8"}
]
}
}
preparelevels:any
plcheck:boolean //编制级别勾选框
displayedColumns: string[] = ['unitname','level','addname','addtime', 'plantype', 'passstate','isopen','projectlevel','operation'];
tabledataSource
unitname//预案名称
level//预案级别
addname//添加人
addtime//添加时间
unittype//预案类型
unitstate//审核状态
projectlevel//编制级别
//分页
@ViewChild(MatPaginator, {static: true})
pageEvent: PageEvent;
paginator: MatPaginator;
length:any; //共多少条数据
pageSize:any; //每页条数
pageSizeOptions: number[] = [10] //设置每页条数
PageNumber:any; //第几页
//获得所有预案信息
getAllPlanInfo(){
let paramsdata:any = {
HasChildrenPlanLevel: this.plcheck || '',
PageNumber: this.PageNumber || '1',
PageSize: this.pageSizeOptions[0],
}
this.http.get("/api/Plans",{params:paramsdata}).subscribe((data:any)=>{
this.length = data.totalCount
//this.allPlanInfo = data
this.tabledataSource = new MatTableDataSource(data.items)
console.log(this.tabledataSource)
})
}
//重置
reset(){
this.unitname=''
this.level=''
this.addname=''
this.addtime=''
this.unittype=''
this.unitstate=''
this.projectlevel=''
}
//新增预案弹窗
addunit(){
const dialogRef = this.dialog.open(newunitComponent, {
width: '340px',
height:'430px'
//data: paperDataInfo
});
}
}
@Component({
selector: 'new-unit',
templateUrl: './newunit.html',
styleUrls: ['./newunit.scss']
})
export class newunitComponent{
constructor(private router:Router,private http: HttpClient,public dialog: MatDialog,public snackBar: MatSnackBar,public dialogRef: MatDialogRef<newunitComponent>,@Inject(MAT_DIALOG_DATA) public data: any) {}
unitname//预案名称
level//预案级别
addname//添加人
addtime//添加时间
unittype//预案类型
unitstate//审核状态
projectlevel//编制级别
close(){
this.dialogRef.close();
}
}

12
src/app/plan-management/plan-management-routing.module.ts

@ -1,3 +1,11 @@
/*
* @Descripttion:
* @version:
* @Author: sueRimn
* @Date: 2020-12-24 10:59:48
* @LastEditors: sueRimn
* @LastEditTime: 2020-12-24 14:20:18
*/
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {EntryPlanComponent} from './entry-plan/entry-plan.component'
@ -5,13 +13,15 @@ import { OpenPlanComponent } from './open-plan/open-plan.component';
import { PassPlanComponent } from './pass-plan/pass-plan.component';
import { EntryPlanLookComponent } from './entry-plan-look/entry-plan-look.component';
import { WebLookComponent } from './web-look/web-look.component';
import {OnetwoEntryPlanComponent} from './onetwo-entry-plan/onetwo-entry-plan.component'
const routes: Routes = [
{ path: 'entryPlan', component: EntryPlanComponent},
{ path: 'openPlan', component: OpenPlanComponent},
{ path: 'passPlan', component: PassPlanComponent},
{ path: 'entryPlandetail', component: EntryPlanLookComponent},
{ path: 'webLook', component: WebLookComponent}
{ path: 'webLook', component: WebLookComponent},
{ path: 'OnetwoEntryPlan', component: OnetwoEntryPlanComponent}
];
@NgModule({

4
src/app/plan-management/plan-management.module.ts

@ -50,11 +50,13 @@ import { OpenPlanComponent } from './open-plan/open-plan.component';
import { EntryPlanLookComponent, AddPlanone, DownloadFile, AuditResult, ChangeName } from './entry-plan-look/entry-plan-look.component';
import { PlanType, AuditSatus, PlanLevel } from '../pipes/boolean.pipe';
import { WebLookComponent } from './web-look/web-look.component';
import { OnetwoEntryPlanComponent } from './onetwo-entry-plan/onetwo-entry-plan.component';
import { newunitComponent} from './onetwo-entry-plan/onetwo-entry-plan.component'
@NgModule({
declarations: [EntryPlanComponent, PassPlanComponent, OpenPlanComponent, EntryPlanLookComponent,AddPlanone,PlanType,AuditSatus,PlanLevel,DownloadFile,AuditResult,ChangeName, WebLookComponent],
declarations: [EntryPlanComponent, PassPlanComponent, OpenPlanComponent, EntryPlanLookComponent,AddPlanone,PlanType,AuditSatus,PlanLevel,DownloadFile,AuditResult,ChangeName, WebLookComponent, OnetwoEntryPlanComponent,newunitComponent],
imports: [
CommonModule,
PlanManagementRoutingModule,

BIN
src/assets/images/bendi.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 B

BIN
src/assets/images/change.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 327 B

BIN
src/assets/images/chatchange.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
src/assets/images/newadd.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 377 B

BIN
src/assets/images/preview.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

BIN
src/assets/images/refresh.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

BIN
src/assets/images/update.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 479 B

Loading…
Cancel
Save