5 changed files with 1017 additions and 1089 deletions
@ -1,153 +1,165 @@ |
|||||||
<!-- 报表统计 --> |
<!-- 报表统计 --> |
||||||
<div style="height: 100%;overflow: auto;"> |
<div style="height: 100%;overflow: auto;" id="combinedQuery"> |
||||||
<mat-tab-group style="height: 100%;" [selectedIndex]="selected.value" (selectedIndexChange)="selectedIndexChange($event)"> |
<mat-tab-group style="height: 100%;" [selectedIndex]="selected.value" |
||||||
<mat-tab *ngFor="let item of lable" [label]="item"> |
(selectedIndexChange)="selectedIndexChange($event)"> |
||||||
<ng-template matTabContent> |
<mat-tab *ngFor="let item of lable" [label]="item" [disabled]="isMasklayer"> |
||||||
<form (ngSubmit)="onSubmit(form.value)" #form="ngForm"> |
<ng-template matTabContent class="box"> |
||||||
<div class="header"> |
<form (ngSubmit)="onSubmit(form.value)" #form="ngForm"> |
||||||
<div class="queryBox"> |
<div class="header"> |
||||||
<div class="queryField ordiv"> |
<div class="queryBox"> |
||||||
<label style="margin-right: 10px;">消防救援站:</label> |
<div class="queryField ordiv"> |
||||||
<mat-form-field class="example-full-width"> |
<label style="margin-right: 10px;">消防救援站:</label> |
||||||
<input readonly matInput placeholder="请选择消防救援站" autocomplete="off" *ngIf="preparelevels==0" [(ngModel)]="js" name="js" |
<mat-form-field class="example-full-width"> |
||||||
(focus)="openorganizationbox()"> |
<input readonly matInput placeholder="请选择消防救援站" autocomplete="off" *ngIf="preparelevels==0" |
||||||
<input readonly matInput placeholder="请选择消防救援站" autocomplete="off" *ngIf="preparelevels==1" [(ngModel)]="yuanjs" name="js" |
[(ngModel)]="js" name="js" (focus)="openorganizationbox()"> |
||||||
(focus)="openorganizationbox()"> |
<input readonly matInput placeholder="请选择消防救援站" autocomplete="off" *ngIf="preparelevels==1" |
||||||
</mat-form-field> |
[(ngModel)]="yuanjs" name="js" (focus)="openorganizationbox()"> |
||||||
<mat-checkbox style="margin-left: 6px;" color="primary" *ngIf="preparelevels==0" [(ngModel)]="jscheck" name="jscheck">包含下级</mat-checkbox> |
</mat-form-field> |
||||||
<mat-checkbox style="margin-left: 6px;" color="primary" *ngIf="preparelevels==1" [(ngModel)]="yuanjscheck" name="jscheck">包含下级</mat-checkbox> |
<mat-checkbox style="margin-left: 6px;" color="primary" *ngIf="preparelevels==0" [(ngModel)]="jscheck" |
||||||
<div class="organizationbox" *ngIf="isorganizationbox"> |
name="jscheck">包含下级</mat-checkbox> |
||||||
<div (click)="closediv()" class="closediv"> |
<mat-checkbox style="margin-left: 6px;" color="primary" *ngIf="preparelevels==1" |
||||||
<mat-icon>clear</mat-icon> |
[(ngModel)]="yuanjscheck" name="jscheck">包含下级</mat-checkbox> |
||||||
</div> |
<div class="organizationbox" *ngIf="isorganizationbox"> |
||||||
<mat-tree [dataSource]="dataSource" [treeControl]="treeControl"> |
<div (click)="closediv()" class="closediv"> |
||||||
<mat-tree-node *matTreeNodeDef="let node" matTreeNodePadding (click)='add(node)' class="organizationlist"> |
<mat-icon>clear</mat-icon> |
||||||
<button type="button" mat-icon-button disabled></button> |
|
||||||
<li>{{node.name}}</li> |
|
||||||
</mat-tree-node> |
|
||||||
<mat-tree-node *matTreeNodeDef="let node;when: hasChild" matTreeNodePadding (click)='add(node)' |
|
||||||
class="organizationlist"> |
|
||||||
<button type="button" mat-icon-button matTreeNodeToggle [attr.aria-label]="'toggle ' + node.name"> |
|
||||||
<mat-icon class="mat-icon-rtl-mirror"> |
|
||||||
{{treeControl.isExpanded(node) ? 'expand_more' : 'chevron_right'}} |
|
||||||
</mat-icon> |
|
||||||
</button> |
|
||||||
<li>{{node.name}}</li> |
|
||||||
</mat-tree-node> |
|
||||||
</mat-tree> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<div class="queryField" > |
|
||||||
<label style="margin-right: 10px;">时间查询:</label> |
|
||||||
<mat-form-field class="example-full-width"> |
|
||||||
<input type="date" matInput name="addtime" autocomplete="off" [(ngModel)]="dwaddtime" *ngIf="preparelevels==0"> |
|
||||||
<input type="date" matInput name="addtime" autocomplete="off" [(ngModel)]="yuanaddtime" *ngIf="preparelevels==1"> |
|
||||||
</mat-form-field> |
|
||||||
<!-- <mat-icon aria-hidden="false" style="position: relative;right: 120px;top: 5px;">arrow forward</mat-icon> --> |
|
||||||
<span style="margin-left: 15px;">🠊</span> |
|
||||||
<mat-form-field class="example-full-width" style="margin-left: 10px;"> |
|
||||||
<input type="date" matInput name="endtime" autocomplete="off" [(ngModel)]="dwendtime" *ngIf="preparelevels==0"> |
|
||||||
<input type="date" matInput name="endtime" autocomplete="off" [(ngModel)]="yuanendtime" *ngIf="preparelevels==1"> |
|
||||||
</mat-form-field> |
|
||||||
</div> |
|
||||||
<div class="queryField" *ngIf="preparelevels==1"> |
|
||||||
<label style="margin-right: 10px;">预案类型:</label> |
|
||||||
<mat-form-field> |
|
||||||
<mat-select [(ngModel)]="reservePlanType" name="reservePlanType" placeholder='请选择预案类型' [multiple]="true"> |
|
||||||
<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> |
|
||||||
|
|
||||||
</div> |
|
||||||
<div class="queryField" *ngIf="preparelevels==0"> |
|
||||||
<label style="margin-right: 10px;">单位类型:</label> |
|
||||||
<mat-form-field> |
|
||||||
<mat-select placeholder='请选择单位类型' [(ngModel)]="unittype" name="unittype" [multiple]="true"> |
|
||||||
<mat-option *ngFor="let unit of allunittype" [value]="unit.id"> |
|
||||||
{{unit.name}} |
|
||||||
</mat-option> |
|
||||||
</mat-select> |
|
||||||
</mat-form-field> |
|
||||||
</div> |
|
||||||
<div class="queryField" *ngIf="preparelevels==0"> |
|
||||||
<label style="margin-right: 10px;">单位状态:</label> |
|
||||||
<mat-form-field> |
|
||||||
<mat-select required [(ngModel)]="preparelevel" name="preparelevel" placeholder='请选择单位状态' [multiple]="true"> |
|
||||||
<mat-option [value]='preparelevel[0]'>新增</mat-option> |
|
||||||
<mat-option [value]='preparelevel[1]||2'>维护更新</mat-option> |
|
||||||
</mat-select> |
|
||||||
</mat-form-field> |
|
||||||
</div> |
|
||||||
<div class="queryField" *ngIf="preparelevels==1"> |
|
||||||
<label style="margin-right: 10px;">预案级别:</label> |
|
||||||
<mat-form-field> |
|
||||||
<mat-select placeholder='请选择预案级别' [(ngModel)]="planCategory" name="planCategory" [multiple]="true"> |
|
||||||
<mat-option value=1>Ⅰ级预案</mat-option> |
|
||||||
<mat-option value=2>Ⅱ级预案</mat-option> |
|
||||||
<mat-option value=3>Ⅲ级预案</mat-option> |
|
||||||
<mat-option value=4>Ⅳ级预案</mat-option> |
|
||||||
<mat-option value=5>Ⅴ级预案</mat-option> |
|
||||||
</mat-select> |
|
||||||
</mat-form-field> |
|
||||||
</div> |
|
||||||
<div class="queryField" *ngIf="preparelevels==0"> |
|
||||||
<label style="margin-right: 10px;">按总数排序:</label> |
|
||||||
<mat-form-field> |
|
||||||
<mat-select placeholder='请选择排序方式' [(ngModel)]="integritySort" name="integritySort"> |
|
||||||
<mat-option value=1>从高到低</mat-option> |
|
||||||
<mat-option value=0>从低到高</mat-option> |
|
||||||
</mat-select> |
|
||||||
</mat-form-field> |
|
||||||
</div> |
|
||||||
<div class="queryField" *ngIf="preparelevels==1"> |
|
||||||
<label style="margin-right: 10px;">按总数排序:</label> |
|
||||||
<mat-form-field> |
|
||||||
<mat-select placeholder='请选择排序方式' [(ngModel)]="yuanintegritySort" name="integritySort"> |
|
||||||
<mat-option value=1>从高到低</mat-option> |
|
||||||
<mat-option value=0>从低到高</mat-option> |
|
||||||
</mat-select> |
|
||||||
</mat-form-field> |
|
||||||
</div> |
|
||||||
<div class="queryField" *ngIf="preparelevels==0||preparelevels==1"> |
|
||||||
<button mat-raised-button color="primary">查询</button> |
|
||||||
<button mat-raised-button style="margin-left: 25px;" type="button" (click)="reset()">重置</button> |
|
||||||
<button mat-raised-button style="margin-left: 25px;" color="primary" (click)='export()'>导出</button> |
|
||||||
</div> |
|
||||||
</div> |
</div> |
||||||
|
<mat-tree [dataSource]="dataSource" [treeControl]="treeControl"> |
||||||
|
<mat-tree-node *matTreeNodeDef="let node" matTreeNodePadding (click)='add(node)' |
||||||
|
class="organizationlist"> |
||||||
|
<button type="button" mat-icon-button disabled></button> |
||||||
|
<li>{{node.name}}</li> |
||||||
|
</mat-tree-node> |
||||||
|
<mat-tree-node *matTreeNodeDef="let node;when: hasChild" matTreeNodePadding (click)='add(node)' |
||||||
|
class="organizationlist"> |
||||||
|
<button type="button" mat-icon-button matTreeNodeToggle [attr.aria-label]="'toggle ' + node.name"> |
||||||
|
<mat-icon class="mat-icon-rtl-mirror"> |
||||||
|
{{treeControl.isExpanded(node) ? 'expand_more' : 'chevron_right'}} |
||||||
|
</mat-icon> |
||||||
|
</button> |
||||||
|
<li>{{node.name}}</li> |
||||||
|
</mat-tree-node> |
||||||
|
</mat-tree> |
||||||
</div> |
</div> |
||||||
|
</div> |
||||||
|
<div class="queryField"> |
||||||
|
<label style="margin-right: 10px;">时间查询:</label> |
||||||
|
<mat-form-field class="example-full-width"> |
||||||
|
<input type="date" matInput name="addtime" autocomplete="off" [(ngModel)]="dwaddtime" |
||||||
|
*ngIf="preparelevels==0"> |
||||||
|
<input type="date" matInput name="addtime" autocomplete="off" [(ngModel)]="yuanaddtime" |
||||||
|
*ngIf="preparelevels==1"> |
||||||
|
</mat-form-field> |
||||||
|
<!-- <mat-icon aria-hidden="false" style="position: relative;right: 120px;top: 5px;">arrow forward</mat-icon> --> |
||||||
|
<span style="margin-left: 15px;">🠊</span> |
||||||
|
<mat-form-field class="example-full-width" style="margin-left: 10px;"> |
||||||
|
<input type="date" matInput name="endtime" autocomplete="off" [(ngModel)]="dwendtime" |
||||||
|
*ngIf="preparelevels==0"> |
||||||
|
<input type="date" matInput name="endtime" autocomplete="off" [(ngModel)]="yuanendtime" |
||||||
|
*ngIf="preparelevels==1"> |
||||||
|
</mat-form-field> |
||||||
|
</div> |
||||||
|
<div class="queryField" *ngIf="preparelevels==1"> |
||||||
|
<label style="margin-right: 10px;">预案类型:</label> |
||||||
|
<mat-form-field> |
||||||
|
<mat-select [(ngModel)]="reservePlanType" name="reservePlanType" placeholder='请选择预案类型' |
||||||
|
[multiple]="true"> |
||||||
|
<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> |
||||||
|
|
||||||
</form> |
</div> |
||||||
<mat-divider></mat-divider> |
<div class="queryField" *ngIf="preparelevels==0"> |
||||||
<div class="body"> |
<label style="margin-right: 10px;">单位类型:</label> |
||||||
<div class="tablebox" id="table"> |
<mat-form-field> |
||||||
<table cellpadding="0" cellspacing="0" *ngIf="preparelevels==0&&!tableDataNull"> |
<mat-select placeholder='请选择单位类型' [(ngModel)]="unittype" name="unittype" [multiple]="true"> |
||||||
<thead> |
<mat-option *ngFor="let unit of allunittype" [value]="unit.id"> |
||||||
<th *ngFor="let item of displayedColumns;let i=index">{{item}}</th> |
{{unit.name}} |
||||||
</thead> |
</mat-option> |
||||||
<tbody> |
</mat-select> |
||||||
<tr *ngFor="let element of tabledataSource"> |
</mat-form-field> |
||||||
<td *ngFor="let eletd of element.name">{{eletd}}</td> |
</div> |
||||||
</tr> |
<div class="queryField" *ngIf="preparelevels==0"> |
||||||
</tbody> |
<label style="margin-right: 10px;">单位状态:</label> |
||||||
</table> |
<mat-form-field> |
||||||
<table cellpadding="0" cellspacing="0" *ngIf="preparelevels==1&&!tableDataNull"> |
<mat-select required [(ngModel)]="preparelevel" name="preparelevel" placeholder='请选择单位状态' |
||||||
<thead> |
[multiple]="true"> |
||||||
<th *ngFor="let item of yuanColumns;let i=index">{{item}}</th> |
<mat-option [value]='preparelevel[0]'>新增</mat-option> |
||||||
</thead> |
<mat-option [value]='preparelevel[1]||2'>维护更新</mat-option> |
||||||
<tbody> |
</mat-select> |
||||||
<tr *ngFor="let element of yuanTable"> |
</mat-form-field> |
||||||
<td *ngFor="let eletd of element.name">{{eletd}}</td> |
</div> |
||||||
</tr> |
<div class="queryField" *ngIf="preparelevels==1"> |
||||||
</tbody> |
<label style="margin-right: 10px;">预案级别:</label> |
||||||
</table> |
<mat-form-field> |
||||||
<span *ngIf="tableDataNull">暂无数据</span> |
<mat-select placeholder='请选择预案级别' [(ngModel)]="planCategory" name="planCategory" [multiple]="true"> |
||||||
</div> |
<mat-option value=1>Ⅰ级预案</mat-option> |
||||||
</div> |
<mat-option value=2>Ⅱ级预案</mat-option> |
||||||
</ng-template> |
<mat-option value=3>Ⅲ级预案</mat-option> |
||||||
</mat-tab> |
<mat-option value=4>Ⅳ级预案</mat-option> |
||||||
|
<mat-option value=5>Ⅴ级预案</mat-option> |
||||||
|
</mat-select> |
||||||
|
</mat-form-field> |
||||||
|
</div> |
||||||
|
<div class="queryField" *ngIf="preparelevels==0"> |
||||||
|
<label style="margin-right: 10px;">按总数排序:</label> |
||||||
|
<mat-form-field> |
||||||
|
<mat-select placeholder='请选择排序方式' [(ngModel)]="integritySort" name="integritySort"> |
||||||
|
<mat-option value=1>从高到低</mat-option> |
||||||
|
<mat-option value=0>从低到高</mat-option> |
||||||
|
</mat-select> |
||||||
|
</mat-form-field> |
||||||
|
</div> |
||||||
|
<div class="queryField" *ngIf="preparelevels==1"> |
||||||
|
<label style="margin-right: 10px;">按总数排序:</label> |
||||||
|
<mat-form-field> |
||||||
|
<mat-select placeholder='请选择排序方式' [(ngModel)]="yuanintegritySort" name="integritySort"> |
||||||
|
<mat-option value=1>从高到低</mat-option> |
||||||
|
<mat-option value=0>从低到高</mat-option> |
||||||
|
</mat-select> |
||||||
|
</mat-form-field> |
||||||
|
</div> |
||||||
|
<div class="queryField" *ngIf="preparelevels==0||preparelevels==1"> |
||||||
|
<button mat-raised-button color="primary">查询</button> |
||||||
|
<button mat-raised-button style="margin-left: 25px;" type="button" (click)="reset()">重置</button> |
||||||
|
<button mat-raised-button style="margin-left: 25px;" color="primary" (click)='export()'>导出</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</form> |
||||||
|
<mat-divider></mat-divider> |
||||||
|
<div class="body"> |
||||||
|
<div class="tablebox" id="table"> |
||||||
|
<table cellpadding="0" cellspacing="0" *ngIf="preparelevels==0&&!tableDataNull"> |
||||||
|
<thead> |
||||||
|
<th *ngFor="let item of displayedColumns;let i=index">{{item}}</th> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr *ngFor="let element of tabledataSource"> |
||||||
|
<td *ngFor="let eletd of element.name;let key = index" (click)="clicktd(key,eletd)">{{eletd}}</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
|
||||||
</mat-tab-group> |
<table cellpadding="0" cellspacing="0" *ngIf="preparelevels==1&&!tableDataNull"> |
||||||
</div> |
<thead> |
||||||
|
<th *ngFor="let item of yuanColumns;let i=index">{{item}}</th> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr *ngFor="let element of yuanTable"> |
||||||
|
<td *ngFor="let eletd of element.name;let key = index" (click)="clicktd(key,eletd)">{{eletd}}</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
<span *ngIf="tableDataNull">暂无数据</span> |
||||||
|
</div> |
||||||
|
<div class="masklayer" *ngIf="isMasklayer"> |
||||||
|
<mat-spinner [diameter]="40"></mat-spinner> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</ng-template> |
||||||
|
</mat-tab> |
||||||
|
</mat-tab-group> |
||||||
|
</div> |
@ -1,265 +1,190 @@ |
|||||||
|
|
||||||
|
|
||||||
.header { |
.header { |
||||||
width: 100%; |
width: 100%; |
||||||
padding: 12px 10px; |
padding: 12px 10px; |
||||||
|
box-sizing: border-box; |
||||||
|
|
||||||
|
.queryBox { |
||||||
box-sizing: border-box; |
box-sizing: border-box; |
||||||
.queryBox { |
padding: 5px 0 0 5px; |
||||||
box-sizing: border-box; |
// margin-left: 50px; |
||||||
padding: 5px 0 0 5px; |
display: flex; |
||||||
// margin-left: 50px; |
flex-direction: row; |
||||||
display: flex; |
flex-wrap: wrap; |
||||||
flex-direction: row; |
align-items: center; |
||||||
flex-wrap: wrap; |
|
||||||
align-items:center; |
// justify-content:center; |
||||||
// justify-content:center; |
|
||||||
.queryField { |
.queryField { |
||||||
|
|
||||||
//margin: 0 10px; |
//margin: 0 10px; |
||||||
input { |
input { |
||||||
width: 180px; |
width: 180px; |
||||||
height: 22px; |
height: 22px; |
||||||
line-height: 22px; |
line-height: 22px; |
||||||
border-radius: 3px; |
border-radius: 3px; |
||||||
} |
} |
||||||
@media screen and (min-device-width:1400px){ |
|
||||||
margin: 3px 20px; |
@media screen and (min-device-width:1400px) { |
||||||
} |
margin: 3px 20px; |
||||||
@media screen and (max-device-width:1400px)and (min-device-width:1200px){ |
} |
||||||
margin: 3px 10px; |
|
||||||
mat-form-field{ |
@media screen and (max-device-width:1400px)and (min-device-width:1200px) { |
||||||
width: 180px; |
margin: 3px 10px; |
||||||
} |
|
||||||
|
mat-form-field { |
||||||
|
width: 180px; |
||||||
} |
} |
||||||
@media screen and (max-device-width:1200px){ |
} |
||||||
margin: 3px 0 3px 10px; |
|
||||||
mat-form-field{ |
@media screen and (max-device-width:1200px) { |
||||||
width: 120px; |
margin: 3px 0 3px 10px; |
||||||
} |
|
||||||
|
mat-form-field { |
||||||
|
width: 120px; |
||||||
} |
} |
||||||
|
} |
||||||
|
|
||||||
} |
} |
||||||
|
|
||||||
|
|
||||||
} //queryBox |
} |
||||||
.butclass{ |
|
||||||
button{ |
|
||||||
width: 80px;height: 36px; |
|
||||||
font-size: 16px; |
|
||||||
} |
|
||||||
} |
|
||||||
.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; |
|
||||||
li{ |
|
||||||
overflow: hidden; |
|
||||||
text-overflow: ellipsis; |
|
||||||
white-space: nowrap; |
|
||||||
} |
|
||||||
mat-tree-node{ |
|
||||||
cursor: pointer; |
|
||||||
white-space:pre; |
|
||||||
} |
|
||||||
mat-tree-node:hover{ |
|
||||||
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); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
|
//queryBox |
||||||
|
.butclass { |
||||||
|
button { |
||||||
|
width: 80px; |
||||||
|
height: 36px; |
||||||
|
font-size: 16px; |
||||||
} |
} |
||||||
} |
} |
||||||
.body{ |
|
||||||
height: 100%; |
.ordiv { |
||||||
width: 100%; |
position: relative; |
||||||
.buttonbox{ |
|
||||||
padding-left: 50px; |
.organizationbox { |
||||||
button{ |
width: 450px; |
||||||
margin:0 10px |
height: 200px; |
||||||
} |
background: white; |
||||||
|
position: absolute; |
||||||
|
top: 48px; |
||||||
|
left: 77px; |
||||||
|
z-index: 999; |
||||||
|
border: 1px solid grey; |
||||||
|
overflow-y: auto; |
||||||
|
|
||||||
|
li { |
||||||
|
overflow: hidden; |
||||||
|
text-overflow: ellipsis; |
||||||
|
white-space: nowrap; |
||||||
} |
} |
||||||
.tablebox{ |
|
||||||
height: 620px; |
mat-tree-node { |
||||||
overflow-y: auto; |
cursor: pointer; |
||||||
//margin-bottom: 15px; |
white-space: pre; |
||||||
table{ |
|
||||||
width: 100%; |
|
||||||
background-color: white; |
|
||||||
margin-top: 15px; |
|
||||||
table-layout: fixed; |
|
||||||
thead,tr{ |
|
||||||
border-bottom: 1px solid grey; |
|
||||||
} |
|
||||||
th { |
|
||||||
border-bottom: 1px solid #999; |
|
||||||
//width: 30%; |
|
||||||
font-size: 16px; |
|
||||||
text-align: center; |
|
||||||
height: 60px; |
|
||||||
line-height: 60px; |
|
||||||
} |
|
||||||
td { |
|
||||||
|
|
||||||
height: 50px; |
|
||||||
//line-height: 50px; |
|
||||||
text-align: center; |
|
||||||
font-size: 16px; |
|
||||||
margin-left: 3px; |
|
||||||
border-bottom: 1px solid #999; |
|
||||||
.spantext{ |
|
||||||
margin-left: 7px; |
|
||||||
} |
|
||||||
.buleColor{ |
|
||||||
color: #2196f3; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
mat-paginator{ |
|
||||||
width:100%; |
|
||||||
// margin-left: 2%; |
|
||||||
// margin-top: 30px; |
|
||||||
} |
|
||||||
} |
} |
||||||
} |
|
||||||
.mat-header-cell{ |
|
||||||
text-align: center; |
|
||||||
} |
|
||||||
.mat-cell{ |
|
||||||
text-align: center; |
|
||||||
|
|
||||||
} |
mat-tree-node:hover { |
||||||
|
background: rgba(225, 225, 225, 0.8); |
||||||
|
} |
||||||
|
|
||||||
//完整度 |
.closediv { |
||||||
.integrityDiv{ |
z-index: 100; |
||||||
width: 180px; |
|
||||||
height: 18px; |
|
||||||
background-color: #e2e7ee; |
|
||||||
// background-image: linear-gradient(to right, #e2e7ee ,#FF4500, #FF8C00,#32cd32); |
|
||||||
margin: 0 auto; |
|
||||||
position: relative; |
|
||||||
.integrityNum{ |
|
||||||
position: absolute; |
position: absolute; |
||||||
left: 50%; |
right: 0; |
||||||
top: 50%; |
top: 0; |
||||||
transform: translate(-50%, -50%); |
width: 30px; |
||||||
color: black; |
height: 30px; |
||||||
font-weight: 800; |
cursor: pointer; |
||||||
font-size: 13px; |
line-height: 30px; |
||||||
cursor: default; |
text-align: center; |
||||||
|
} |
||||||
|
|
||||||
|
.closediv:hover { |
||||||
|
background: rgba(225, 225, 225, 0.8); |
||||||
|
} |
||||||
} |
} |
||||||
.integrityColorDiv{ |
|
||||||
height: 100%; |
} |
||||||
|
} |
||||||
|
|
||||||
|
.body { |
||||||
|
flex: 1; |
||||||
|
width: 100%; |
||||||
|
position: relative; |
||||||
|
.buttonbox { |
||||||
|
padding-left: 50px; |
||||||
|
|
||||||
|
button { |
||||||
|
margin: 0 10px |
||||||
} |
} |
||||||
.integrityDetails{ |
} |
||||||
position: absolute; |
.masklayer{ |
||||||
display: none; |
position: absolute; |
||||||
width: 350px; |
left: 0; |
||||||
height:280px; |
top: 0; |
||||||
border: 1px solid rgba(0, 0, 0, 0.22); |
width: 100%; |
||||||
background-color: white; |
height: 100%; |
||||||
.integrityDetailsTop{ |
z-index: 999; |
||||||
width: 100%; |
background-color: rgba(0, 0, 0, 0.22); |
||||||
height: 23px; |
display: flex; |
||||||
line-height:23px; |
align-items: center; |
||||||
border-bottom: 1px solid rgba(0, 0, 0, 0.22); |
justify-content: center; |
||||||
margin-bottom: 1px; |
} |
||||||
font-size: 14px; |
.tablebox { |
||||||
span{ |
height: 620px; |
||||||
display: inline-block; |
overflow-y: auto; |
||||||
text-align: center; |
table { |
||||||
font-weight: 800; |
width: 100%; |
||||||
} |
background-color: white; |
||||||
.span1{ |
margin-top: 15px; |
||||||
width: 25%; |
table-layout: fixed; |
||||||
} |
|
||||||
.span2{ |
thead, |
||||||
width: 60%; |
tr { |
||||||
} |
border-bottom: 1px solid grey; |
||||||
.span3{ |
} |
||||||
width: 15%; |
|
||||||
} |
th { |
||||||
|
border-bottom: 1px solid #999; |
||||||
|
//width: 30%; |
||||||
|
font-size: 16px; |
||||||
|
text-align: center; |
||||||
|
height: 60px; |
||||||
|
line-height: 60px; |
||||||
|
} |
||||||
|
|
||||||
|
td { |
||||||
|
|
||||||
|
height: 50px; |
||||||
|
//line-height: 50px; |
||||||
|
text-align: center; |
||||||
|
font-size: 16px; |
||||||
|
margin-left: 3px; |
||||||
|
border-bottom: 1px solid #999; |
||||||
|
|
||||||
|
.spantext { |
||||||
|
margin-left: 7px; |
||||||
} |
} |
||||||
.integrityDetailsBody{ |
|
||||||
ul{ |
|
||||||
li{ |
|
||||||
width: 100%; |
|
||||||
height: 23px; |
|
||||||
line-height: 23px; |
|
||||||
margin: 3px 0; |
|
||||||
div{ |
|
||||||
float: left; |
|
||||||
font-size: 13px; |
|
||||||
} |
|
||||||
.name{ |
|
||||||
width: 25%; |
|
||||||
height: 100%; |
|
||||||
} |
|
||||||
.colorDiv{ |
|
||||||
width: 60%; |
|
||||||
height: 100%; |
|
||||||
position: relative; |
|
||||||
.colorDivBac{ |
|
||||||
width: 90%; |
|
||||||
height: 100%; |
|
||||||
position: absolute; |
|
||||||
left: 50%; |
|
||||||
top: 50%; |
|
||||||
transform: translate(-50%,-50%); |
|
||||||
background-color: #dfe5ec; |
|
||||||
border-radius: 5px; |
|
||||||
.colorDivCon{ |
|
||||||
border-radius: 5px; |
|
||||||
height: 100%; |
|
||||||
background-color: #2398f1; |
|
||||||
} |
|
||||||
} |
|
||||||
span{ |
|
||||||
position: absolute; |
|
||||||
left: 50%; |
|
||||||
top: 50%; |
|
||||||
transform: translate(-50%,-50%); |
|
||||||
// color: white; |
|
||||||
font-weight: 600; |
|
||||||
} |
|
||||||
} |
|
||||||
.number{ |
|
||||||
width: 15%; |
|
||||||
height: 100%; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
|
.buleColor { |
||||||
|
color: #2196f3; |
||||||
} |
} |
||||||
|
} |
||||||
} |
} |
||||||
.bottomposition{ |
|
||||||
top: 2px; |
mat-paginator { |
||||||
left: 188px; |
width: 100%; |
||||||
} |
|
||||||
.topposition{ |
|
||||||
top: -252px; |
|
||||||
left: 188px; |
|
||||||
} |
} |
||||||
|
} |
||||||
} |
} |
||||||
.integrityDiv:hover{ |
|
||||||
.integrityDetails{ |
.mat-header-cell { |
||||||
display: block; |
text-align: center; |
||||||
} |
|
||||||
} |
} |
||||||
|
|
||||||
|
.mat-cell { |
||||||
|
text-align: center; |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
@ -1,25 +0,0 @@ |
|||||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing'; |
|
||||||
|
|
||||||
import { CombinedQueryComponent } from './combined-query.component'; |
|
||||||
|
|
||||||
describe('CombinedQueryComponent', () => { |
|
||||||
let component: CombinedQueryComponent; |
|
||||||
let fixture: ComponentFixture<CombinedQueryComponent>; |
|
||||||
|
|
||||||
beforeEach(async(() => { |
|
||||||
TestBed.configureTestingModule({ |
|
||||||
declarations: [ CombinedQueryComponent ] |
|
||||||
}) |
|
||||||
.compileComponents(); |
|
||||||
})); |
|
||||||
|
|
||||||
beforeEach(() => { |
|
||||||
fixture = TestBed.createComponent(CombinedQueryComponent); |
|
||||||
component = fixture.componentInstance; |
|
||||||
fixture.detectChanges(); |
|
||||||
}); |
|
||||||
|
|
||||||
it('should create', () => { |
|
||||||
expect(component).toBeTruthy(); |
|
||||||
}); |
|
||||||
}); |
|
Loading…
Reference in new issue