@ -1 +1,398 @@ |
|||||||
<p>da-monthly-task-overview works!</p> |
<!-- <p>月度任务总览</p> --> |
||||||
|
<div class="box"> |
||||||
|
<div class="timebox"> |
||||||
|
<nz-select ngModel="2022"> |
||||||
|
<nz-option nzValue="2021" nzLabel="2021年"></nz-option> |
||||||
|
<nz-option nzValue="2022" nzLabel="2022年"></nz-option> |
||||||
|
</nz-select> |
||||||
|
<div *ngFor="let item of months" class="monthbtn" (click)="selectMonth(item)" |
||||||
|
[ngClass]="{'selectedMonth': item.name == selectedMonth}"> |
||||||
|
{{item.name}} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div style="flex: 1;overflow-y: auto;"> |
||||||
|
<!-- 上部仪表盘 --> |
||||||
|
<div class="instrumentpanelbox"> |
||||||
|
<div class="instrumentpanelheader"> |
||||||
|
<span><img src="../../../../assets/images/icon/task.png" alt=""> 上级任务指标</span> |
||||||
|
</div> |
||||||
|
<div class="instrumentpanel"> |
||||||
|
<div class="instrumentpanelitem instrumentpanelitemclose" *ngFor="let item of cardData"> |
||||||
|
<div class="itemone" *ngIf="!item.isDetails"> |
||||||
|
<div class="instrumentpanelitemleft"> |
||||||
|
<div class="panelheadername" [style]="'background:'+ item.background"> |
||||||
|
<img [src]="'../../../../assets/images/icon/'+ item.icon" alt=""> |
||||||
|
{{item.name}} |
||||||
|
</div> |
||||||
|
<div class="tasknum"> |
||||||
|
<p> |
||||||
|
<span style="margin-right: 6px;">任务分配</span> |
||||||
|
<i (click)="openDetails(item,true)" |
||||||
|
style="vertical-align: text-top;cursor: pointer;" nz-icon nzType="right-circle" |
||||||
|
nzTheme="outline"></i> |
||||||
|
</p> |
||||||
|
<p style="font-weight: 900;font-size: 36px;text-align: left;">5/9</p> |
||||||
|
</div> |
||||||
|
<div class="jindu"> |
||||||
|
<p> |
||||||
|
<span>完成率</span> |
||||||
|
<span>60%</span> |
||||||
|
</p> |
||||||
|
<nz-progress style="width: 100%;" [nzPercent]="75" nzStrokeColor="#42B983" |
||||||
|
[nzShowInfo]="false"></nz-progress> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="itemtwo" *ngIf="item.isDetails"> |
||||||
|
<p class="itemtwotitle"> |
||||||
|
<span>{{item.name}}</span> |
||||||
|
<span class="back" (click)="openDetails(item,false)"><i nz-icon nzType="rollback" |
||||||
|
nzTheme="outline"></i>返回</span> |
||||||
|
</p> |
||||||
|
<div class="itemtwocontent"> |
||||||
|
<div class="itemtwocontentitem"> |
||||||
|
<p class="itemtwocontentitemp1"> |
||||||
|
<span class="itemtwocontentitemp1name">济南历下森豪室内娱乐场</span> |
||||||
|
</p> |
||||||
|
<p> |
||||||
|
<span class="green" style="margin-right: 12px;">已分配</span> |
||||||
|
<span class="green">已检查</span> |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<!-- 下级任务申请 --> |
||||||
|
<div class="taskaudit"> |
||||||
|
<div class="taskauditheader"> |
||||||
|
<span><img src="../../../../assets/images/icon/task.png" alt=""> 下级任务申请</span> |
||||||
|
<span (click)="istaskauditexpand()" class="expand blue"> |
||||||
|
{{istaskauditExpanded ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="istaskauditExpanded ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<!-- 熟悉演练任务 --> |
||||||
|
<div class="shuxibox" *ngIf="istaskauditExpanded"> |
||||||
|
<div class="header"> |
||||||
|
<span>熟悉演练任务</span> |
||||||
|
<span (click)="expand(shuxiTaskData)" class="expand blue"> |
||||||
|
{{shuxiTaskData.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="shuxiTaskData.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="content" *ngIf="shuxiTaskData.isExpand"> |
||||||
|
<div class="card redcard"> |
||||||
|
<div class="unitname"> |
||||||
|
<img src="../../../../assets/images/icon/unit.png" alt=""> |
||||||
|
<span>上海雅特酒店管理有限公司济南泺文路分公司</span> |
||||||
|
</div> |
||||||
|
<div class="info"> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/main.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/assist.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span class="blue">分配</span> |
||||||
|
<span>|</span> |
||||||
|
<span>申请人: 历下区A消防救援站</span> |
||||||
|
<span class="blue">修改</span> |
||||||
|
</div> |
||||||
|
<div class="btn"> |
||||||
|
<button nz-button style="background: #42B983;color: white;">同意</button> |
||||||
|
<button nz-button style="background: #FF0000;color: white;margin-left: 20px;">驳回</button> |
||||||
|
</div> |
||||||
|
<img class="auditimg" src="../../../../assets/images/icon/reject.png" alt=""> |
||||||
|
<!-- <img class="auditimg" src="../../../../assets/images/icon/agree.png" alt=""> --> |
||||||
|
</div> |
||||||
|
<div class="card greencard"> |
||||||
|
<div class="unitname"> |
||||||
|
<img src="../../../../assets/images/icon/unit.png" alt=""> |
||||||
|
<span>上海雅特酒店管理有限公司济南泺文路分公司</span> |
||||||
|
</div> |
||||||
|
<div class="info"> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/main.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/assist.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span class="blue">分配</span> |
||||||
|
<span>|</span> |
||||||
|
<span>申请人: 历下区A消防救援站</span> |
||||||
|
<span class="blue">修改</span> |
||||||
|
</div> |
||||||
|
<div class="btn"> |
||||||
|
<button nz-button style="background: #42B983;color: white;">同意</button> |
||||||
|
<button nz-button style="background: #FF0000;color: white;margin-left: 20px;">驳回</button> |
||||||
|
</div> |
||||||
|
<img class="auditimg" src="../../../../assets/images/icon/reject.png" alt=""> |
||||||
|
<!-- <img class="auditimg" src="../../../../assets/images/icon/agree.png" alt=""> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<!-- 联络指导任务 --> |
||||||
|
<div class="zhidaobox" *ngIf="istaskauditExpanded"> |
||||||
|
<div class="header"> |
||||||
|
<span>联络指导任务</span> |
||||||
|
<span (click)="expand(zhidaoTaskData)" class="expand blue"> |
||||||
|
{{zhidaoTaskData.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="zhidaoTaskData.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="content" *ngIf="zhidaoTaskData.isExpand"> |
||||||
|
<!-- <div class="card redcard"> |
||||||
|
<div class="unitname"> |
||||||
|
<img src="../../../../assets/images/icon/unit.png" alt=""> |
||||||
|
<span>上海雅特酒店管理有限公司济南泺文路分公司</span> |
||||||
|
</div> |
||||||
|
<div class="info"> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/main.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/assist.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span class="blue">分配</span> |
||||||
|
<span>|</span> |
||||||
|
<span>申请人: 历下区A消防救援站</span> |
||||||
|
<span class="blue">修改</span> |
||||||
|
</div> |
||||||
|
<div class="btn"> |
||||||
|
<button nz-button style="background: #42B983;color: white;">同意</button> |
||||||
|
<button nz-button style="background: #FF0000;color: white;margin-left: 20px;">驳回</button> |
||||||
|
</div> |
||||||
|
<img class="auditimg" src="../../../../assets/images/icon/reject.png" alt=""> |
||||||
|
<img class="auditimg" src="../../../../assets/images/icon/agree.png" alt=""> |
||||||
|
</div> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<!-- 本级部署 --> |
||||||
|
<div class="deploybox"> |
||||||
|
<div class="deployboxheader"> |
||||||
|
<span><img src="../../../../assets/images/icon/task0.png" alt=""> 本级部署</span> |
||||||
|
<span (click)="isdeployboxexpand()" class="expand blue"> |
||||||
|
{{isdeployboxExpanded ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="isdeployboxExpanded ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="deploycontent" *ngIf="isdeployboxExpanded"> |
||||||
|
<div class="deploycontentitem"> |
||||||
|
<div class="title"> |
||||||
|
月计划统计 |
||||||
|
</div> |
||||||
|
<div class="details"> |
||||||
|
<div class="detailsname"> |
||||||
|
月计划总数 |
||||||
|
<span style="font-weight: 18;font-size: 26px;margin-left: 10px;">15</span> |
||||||
|
</div> |
||||||
|
<span>已完成 15</span> |
||||||
|
<span class="progresssquare"> |
||||||
|
<span>完成率</span> |
||||||
|
<nz-progress nzStrokeLinecap="square" style="width: 70%;margin-bottom: 3px;" |
||||||
|
[nzPercent]="75" nzStrokeColor="#42B983" [nzShowInfo]="false" [nzStrokeWidth]="18"> |
||||||
|
</nz-progress> |
||||||
|
<span>75%</span> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="deploycontentitem"> |
||||||
|
<div class="title"> |
||||||
|
周计划统计 |
||||||
|
</div> |
||||||
|
<div class="details"> |
||||||
|
<div class="detailsname"> |
||||||
|
周计划总数 |
||||||
|
<span style="font-weight: 18;font-size: 26px;margin-left: 10px;">15</span> |
||||||
|
</div> |
||||||
|
<span>已完成 15</span> |
||||||
|
<span class="progresssquare"> |
||||||
|
<span>完成率</span> |
||||||
|
<nz-progress nzStrokeLinecap="square" style="width: 70%;margin-bottom: 3px;" |
||||||
|
[nzPercent]="75" nzStrokeColor="#42B983" [nzShowInfo]="false" [nzStrokeWidth]="18"> |
||||||
|
</nz-progress> |
||||||
|
<span>75%</span> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<!-- 救援站列表 --> |
||||||
|
<div class="stationcardlistbox"> |
||||||
|
<div class="stationcardlistitembox" *ngFor="let item of stationData"> |
||||||
|
<div class="stationcardlistitem"> |
||||||
|
<div class="header"> |
||||||
|
<span style="width: 16%;"> |
||||||
|
<img src="../../../../assets//images/icon/station.png" alt=""> |
||||||
|
{{item.name}} |
||||||
|
</span> |
||||||
|
<span style="width: 8%;">单位总数: 7/8</span> |
||||||
|
<div style="width: 66%;" class="progress progresssquare"> |
||||||
|
<span>完成进度</span> |
||||||
|
<nz-progress nzStrokeLinecap="square" nzStrokeWidth="16" nzStrokeColor="#42B983" |
||||||
|
[nzPercent]="30"></nz-progress> |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">任务下派</button> |
||||||
|
<span (click)="expandcarditem(item)" class="expand blue"> |
||||||
|
{{item.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="item.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="maincontent" *ngIf="item.isExpand"> |
||||||
|
<div class="maincontentitem"> |
||||||
|
<div class="maincontentitemleft"> |
||||||
|
<div class="panelheadername panelheadernameor"> |
||||||
|
<img src="'../../../../assets/images/icon/huodong.png" alt=""> |
||||||
|
重大活动 |
||||||
|
</div> |
||||||
|
<div class="num"> |
||||||
|
<div class="round" style="background: #2C4DC0;"></div> |
||||||
|
<span class="word">已分配</span> |
||||||
|
<span class="boldspan">1</span> |
||||||
|
</div> |
||||||
|
<div class="num"> |
||||||
|
<div class="round" style="background: #42B983;"></div> |
||||||
|
<span class="word">已完成</span> |
||||||
|
<span class="boldspan">1</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="maincontentitemright"> |
||||||
|
<div class="maincontentitemrightitem"> |
||||||
|
<div class="flexcol namebox"> |
||||||
|
<span> |
||||||
|
尬粒酒店管理有限公司济南泺文路分公司 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
单位名称 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
重点单位 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
级别 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区A消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
责任机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区B消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
协助机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
宣传 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
同步工作 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol progressbox progresssquare"> |
||||||
|
<span> |
||||||
|
<nz-progress style="width: 200px;" nzStrokeLinecap="square" |
||||||
|
nzStrokeWidth="16" nzStrokeColor="#42B983" [nzPercent]="30"> |
||||||
|
</nz-progress> |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
进度 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="btnbox"> |
||||||
|
<button nz-button nzType="primary">提交审核</button> |
||||||
|
<button style="margin-left: 12px;" nz-button nzType="primary">取消</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="maincontentitemrightitem"> |
||||||
|
<div class="flexcol namebox"> |
||||||
|
<span> |
||||||
|
尬粒酒店管理有限公司济南泺文路分公司 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
单位名称 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
重点单位 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
级别 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区A消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
责任机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区B消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
协助机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
宣传 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
同步工作 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol progressbox progresssquare"> |
||||||
|
<span> |
||||||
|
<nz-progress style="width: 200px;" nzStrokeLinecap="square" |
||||||
|
nzStrokeWidth="16" nzStrokeColor="#42B983" [nzPercent]="30"> |
||||||
|
</nz-progress> |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
进度 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="btnbox"> |
||||||
|
<button nz-button nzType="primary">提交审核</button> |
||||||
|
<button style="margin-left: 12px;" nz-button nzType="primary">取消</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<!-- --> |
||||||
|
<div class="cutoffrule"></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
@ -0,0 +1,557 @@ |
|||||||
|
.box { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
} |
||||||
|
|
||||||
|
.timebox { |
||||||
|
width: 100%; |
||||||
|
height: 68px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 20px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
nz-select { |
||||||
|
margin-right: 16px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
} |
||||||
|
|
||||||
|
.monthbtn { |
||||||
|
width: 80px; |
||||||
|
height: 32px; |
||||||
|
line-height: 32px; |
||||||
|
background: #FFFFFF; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
margin-right: 16px; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
.selectedMonth { |
||||||
|
|
||||||
|
background: #2C4DC0; |
||||||
|
color: #FFFFFF; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelbox { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
color: #303133; |
||||||
|
|
||||||
|
.instrumentpanelheader { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
margin-bottom: 15px; |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanel { |
||||||
|
display: flex; |
||||||
|
flex-wrap: wrap; |
||||||
|
justify-content: space-between; |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitem { |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 3px 8px 1px rgba(0, 0, 0, 0.0800); |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
display: flex; |
||||||
|
|
||||||
|
|
||||||
|
.itemone { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
|
||||||
|
.instrumentpanelitemleft { |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: space-around; |
||||||
|
align-items: flex-start; |
||||||
|
flex: 1; |
||||||
|
box-sizing: border-box; |
||||||
|
|
||||||
|
|
||||||
|
.panelheadername { |
||||||
|
width: 80%; |
||||||
|
height: 46px; |
||||||
|
line-height: 46px; |
||||||
|
text-align: center; |
||||||
|
box-sizing: border-box; |
||||||
|
border-radius: 6px 0px 6px 6px; |
||||||
|
color: #fff; |
||||||
|
|
||||||
|
img { |
||||||
|
vertical-align: text-top; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tasknum { |
||||||
|
margin-left: 8px; |
||||||
|
|
||||||
|
p { |
||||||
|
margin: 0; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.jindu { |
||||||
|
width: 80%; |
||||||
|
margin-left: 8px; |
||||||
|
|
||||||
|
p { |
||||||
|
margin: 0; |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitemright { |
||||||
|
flex: 1; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
nz-progress { |
||||||
|
margin-top: 65px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.itemtwo { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 16px; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
|
||||||
|
.itemtwotitle { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
|
||||||
|
.back { |
||||||
|
cursor: pointer; |
||||||
|
|
||||||
|
i { |
||||||
|
margin-right: 3px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
margin-bottom: 0; |
||||||
|
} |
||||||
|
|
||||||
|
.itemtwocontent { |
||||||
|
flex: 1; |
||||||
|
overflow-y: auto; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
|
||||||
|
.itemtwocontentitem { |
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
height: 70px; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: space-around; |
||||||
|
align-items: flex-start; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 8px 0; |
||||||
|
|
||||||
|
p { |
||||||
|
margin-bottom: 0; |
||||||
|
} |
||||||
|
|
||||||
|
.itemtwocontentitemp1 { |
||||||
|
width: 100%; |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
box-sizing: border-box; |
||||||
|
padding-right: 5px; |
||||||
|
|
||||||
|
.itemtwocontentitemp1name { |
||||||
|
white-space: nowrap; |
||||||
|
overflow: hidden; |
||||||
|
text-overflow: ellipsis; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitemopen { |
||||||
|
width: 24.3%; |
||||||
|
height: 260px; |
||||||
|
margin-bottom: 18px; |
||||||
|
|
||||||
|
.itemone { |
||||||
|
.instrumentpanelitemleft { |
||||||
|
padding: 26px 0 26px 10%; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitemclose { |
||||||
|
width: 11.7%; |
||||||
|
height: 250px; |
||||||
|
margin-bottom: 0px; |
||||||
|
|
||||||
|
.itemone { |
||||||
|
.instrumentpanelitemleft { |
||||||
|
padding: 15px 0 15px 10%; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.taskaudit { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
color: #303133; |
||||||
|
border-top: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
.taskauditheader { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
margin-bottom: 15px; |
||||||
|
} |
||||||
|
|
||||||
|
.shuxibox, |
||||||
|
.zhidaobox { |
||||||
|
|
||||||
|
width: 100%; |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 3px 8px 1px rgba(0, 0, 0, 0.0800); |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
margin-bottom: 18px; |
||||||
|
|
||||||
|
.header { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
} |
||||||
|
|
||||||
|
.content { |
||||||
|
.card:first-child { |
||||||
|
margin-top: 18px; |
||||||
|
} |
||||||
|
|
||||||
|
.card:last-child { |
||||||
|
margin-bottom: 0px; |
||||||
|
} |
||||||
|
|
||||||
|
.card { |
||||||
|
color: #303133; |
||||||
|
width: 100%; |
||||||
|
height: 70px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
display: flex; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 20px; |
||||||
|
position: relative; |
||||||
|
margin-bottom: 18px; |
||||||
|
|
||||||
|
div { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
img { |
||||||
|
margin-top: -3px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.unitname { |
||||||
|
flex: 3; |
||||||
|
} |
||||||
|
|
||||||
|
.info { |
||||||
|
flex: 6; |
||||||
|
|
||||||
|
span { |
||||||
|
margin-right: 20px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.btn { |
||||||
|
flex: 1; |
||||||
|
} |
||||||
|
|
||||||
|
.auditimg { |
||||||
|
position: absolute; |
||||||
|
right: 18%; |
||||||
|
top: 9%; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.greencard { |
||||||
|
background: rgba(66, 185, 131, 0.0400); |
||||||
|
border: 1px solid rgba(66, 185, 131, 0.1600); |
||||||
|
} |
||||||
|
|
||||||
|
.redcard { |
||||||
|
background: rgba(255, 0, 0, 0.0200); |
||||||
|
border: 1px solid rgba(255, 0, 0, 0.1000); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.zhidaobox { |
||||||
|
margin-bottom: 0px; |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.deploybox { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
color: #303133; |
||||||
|
border-top: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
.deployboxheader { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
margin-bottom: 15px; |
||||||
|
} |
||||||
|
|
||||||
|
.deploycontent { |
||||||
|
width: 100%; |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
|
||||||
|
.deploycontentitem { |
||||||
|
width: 49.5%; |
||||||
|
height: 110px; |
||||||
|
background: linear-gradient(180deg, #7AA3FC 0%, #2C4DC0 100%); |
||||||
|
box-shadow: 0px 3px 8px 1px rgba(0, 0, 0, 0.0800); |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px 18px; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: space-around; |
||||||
|
color: #fff; |
||||||
|
.title{ |
||||||
|
text-align: left; |
||||||
|
} |
||||||
|
.details{ |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
.detailsname{ |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
} |
||||||
|
.progresssquare{ |
||||||
|
width: 60%; |
||||||
|
display: flex; |
||||||
|
color: #fff; |
||||||
|
align-items: center; |
||||||
|
span:nth-child(1){ |
||||||
|
margin-right: 16px; |
||||||
|
} |
||||||
|
span:last-child{ |
||||||
|
margin-left: 16px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.deploycontentitem:nth-child(1) { |
||||||
|
background: linear-gradient(180deg, #7AA3FC 0%, #2C4DC0 100%); |
||||||
|
} |
||||||
|
|
||||||
|
.deploycontentitem:nth-child(2) { |
||||||
|
|
||||||
|
background: linear-gradient(180deg, #56C5FF 0%, #005DFF 100%); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.stationcardlistbox { |
||||||
|
.stationcardlistitembox { |
||||||
|
width: 100%; |
||||||
|
border-top: 1px dashed #C7CAD0; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
|
||||||
|
.stationcardlistitem { |
||||||
|
width: 100%; |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 3px 8px 1px rgba(0, 0, 0, 0.0800); |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 18px; |
||||||
|
|
||||||
|
.header { |
||||||
|
width: 100%; |
||||||
|
height: 64px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
text-align: left; |
||||||
|
|
||||||
|
.progress { |
||||||
|
width: 200px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
span { |
||||||
|
margin-right: 12px; |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
nz-progress { |
||||||
|
width: 230px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.expand { |
||||||
|
margin-left: 20px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.maincontent { |
||||||
|
.maincontentitem { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 16px; |
||||||
|
margin-bottom: 18px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
border: 1px solid #42B983; |
||||||
|
display: flex; |
||||||
|
} |
||||||
|
|
||||||
|
.maincontentitemleft { |
||||||
|
width: 170px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding-right: 40px; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: flex-start; |
||||||
|
align-items: center; |
||||||
|
border-right: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
.panelheadername { |
||||||
|
width: 90%; |
||||||
|
height: 38px; |
||||||
|
line-height: 38px; |
||||||
|
text-align: center; |
||||||
|
box-sizing: border-box; |
||||||
|
border-radius: 6px 0px 6px 6px; |
||||||
|
color: #fff; |
||||||
|
margin-bottom: 8px; |
||||||
|
|
||||||
|
img { |
||||||
|
vertical-align: text-top; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.num { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
margin-bottom: 8px; |
||||||
|
|
||||||
|
.round { |
||||||
|
width: 8px; |
||||||
|
height: 8px; |
||||||
|
} |
||||||
|
|
||||||
|
.word { |
||||||
|
margin: 0 6px; |
||||||
|
} |
||||||
|
|
||||||
|
.boldspan { |
||||||
|
font-weight: 800; |
||||||
|
font-size: 25px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.maincontentitemright { |
||||||
|
flex: 1; |
||||||
|
box-sizing: border-box; |
||||||
|
padding-left: 40px; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: space-around; |
||||||
|
// align-items: center; |
||||||
|
|
||||||
|
.maincontentitemrightitem { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 12px 0px; |
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.flexcol { |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
align-items: flex-start; |
||||||
|
margin-right: 3%; |
||||||
|
|
||||||
|
span:nth-child(1) { |
||||||
|
color: #303133; |
||||||
|
margin-bottom: 8px; |
||||||
|
} |
||||||
|
|
||||||
|
span:nth-child(2) { |
||||||
|
color: #C7CAD0; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.namebox { |
||||||
|
width: 28%; |
||||||
|
} |
||||||
|
|
||||||
|
.progressbox { |
||||||
|
width: 220px; |
||||||
|
|
||||||
|
span:nth-child(1) { |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.btnbox { |
||||||
|
display: flex; |
||||||
|
justify-content: flex-end; |
||||||
|
align-self: flex-start; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
div:last-child { |
||||||
|
border-bottom: 0px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
.cutoffrule { |
||||||
|
width: 100%; |
||||||
|
border-top: 1px dashed #C7CAD0; |
||||||
|
} |
@ -1 +1,238 @@ |
|||||||
<p>da-oneself-plan works!</p> |
<!-- <p>本级计划</p> --> |
||||||
|
<div class="box"> |
||||||
|
<div class="timebox"> |
||||||
|
<nz-select ngModel="2022"> |
||||||
|
<nz-option nzValue="2021" nzLabel="2021年"></nz-option> |
||||||
|
<nz-option nzValue="2022" nzLabel="2022年"></nz-option> |
||||||
|
</nz-select> |
||||||
|
<div *ngFor="let item of months" class="monthbtn" (click)="selectMonth(item)" |
||||||
|
[ngClass]="{'selectedMonth': item.name == selectedMonth}"> |
||||||
|
{{item.name}} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div style="flex: 1;overflow-y: auto;"> |
||||||
|
<!-- 上部仪表盘 --> |
||||||
|
<div class="instrumentpanelbox"> |
||||||
|
<div class="instrumentpanelheader"> |
||||||
|
<span>本级部署</span> |
||||||
|
<span (click)="expand()" class="expand blue"> |
||||||
|
{{isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="instrumentpanel"> |
||||||
|
<div class="instrumentpanelitem" *ngFor="let item of cardData" |
||||||
|
[ngClass]="{'instrumentpanelitemopen': isExpand,'instrumentpanelitemclose': !isExpand}"> |
||||||
|
<div class="itemone" *ngIf="!item.isDetails"> |
||||||
|
<div class="instrumentpanelitemleft"> |
||||||
|
<div class="panelheadername" [style]="'background:'+ item.background"> |
||||||
|
<img [src]="'../../../../assets/images/icon/'+ item.icon" alt=""> |
||||||
|
{{item.name}} |
||||||
|
</div> |
||||||
|
<div class="tasknum"> |
||||||
|
<p> |
||||||
|
<span style="margin-right: 6px;">任务分配</span> |
||||||
|
<i (click)="openDetails(item,true)" |
||||||
|
style="vertical-align: text-top;cursor: pointer;" nz-icon nzType="right-circle" |
||||||
|
nzTheme="outline"></i> |
||||||
|
</p> |
||||||
|
<p style="font-weight: 900;font-size: 36px;text-align: left;">5/9</p> |
||||||
|
</div> |
||||||
|
<button *ngIf="isExpand" nz-button class="btn">快速派发</button> |
||||||
|
</div> |
||||||
|
<div class="instrumentpanelitemright" *ngIf="isExpand"> |
||||||
|
<nz-progress [nzPercent]="75" nzType="circle" [nzFormat]="formatOne" |
||||||
|
nzStrokeColor="#42B983"> |
||||||
|
</nz-progress> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="itemtwo" *ngIf="item.isDetails"> |
||||||
|
<p class="itemtwotitle"> |
||||||
|
<span>{{item.name}}</span> |
||||||
|
<span class="back" (click)="openDetails(item,false)"><i nz-icon nzType="rollback" |
||||||
|
nzTheme="outline"></i>返回</span> |
||||||
|
</p> |
||||||
|
<div class="itemtwocontent"> |
||||||
|
<div class="itemtwocontentitem"> |
||||||
|
<p class="itemtwocontentitemp1"> |
||||||
|
<span class="itemtwocontentitemp1name">济南历下森豪室内娱乐场</span> |
||||||
|
<span> |
||||||
|
<span class="blue" *ngIf="isExpand">派发</span> |
||||||
|
</span> |
||||||
|
</p> |
||||||
|
<p>A消防救援站</p> |
||||||
|
<p><span class="blue" *ngIf="!isExpand">派发</span></p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<!-- 救援站列表 --> |
||||||
|
<div class="stationcardlistbox"> |
||||||
|
<div class="stationcardlistitembox" *ngFor="let item of stationData"> |
||||||
|
<div class="stationcardlistitem"> |
||||||
|
<div class="header"> |
||||||
|
<span style="width: 16%;"> |
||||||
|
<img src="../../../../assets//images/icon/station.png" alt=""> |
||||||
|
{{item.name}} |
||||||
|
</span> |
||||||
|
<span style="width: 8%;">单位总数: 7/8</span> |
||||||
|
<div style="width: 66%;" class="progress progresssquare"> |
||||||
|
<span>完成进度</span> |
||||||
|
<nz-progress nzStrokeLinecap="square" nzStrokeWidth="16" nzStrokeColor="#42B983" |
||||||
|
[nzPercent]="30"></nz-progress> |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">任务下派</button> |
||||||
|
<span (click)="expandcarditem(item)" class="expand blue"> |
||||||
|
{{item.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="item.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="maincontent" *ngIf="item.isExpand"> |
||||||
|
<div class="maincontentitem"> |
||||||
|
<div class="maincontentitemleft"> |
||||||
|
<div class="panelheadername panelheadernameor"> |
||||||
|
<img src="'../../../../assets/images/icon/huodong.png" alt=""> |
||||||
|
重大活动 |
||||||
|
</div> |
||||||
|
<div class="num"> |
||||||
|
<div class="round" style="background: #2C4DC0;"></div> |
||||||
|
<span class="word">已分配</span> |
||||||
|
<span class="boldspan">1</span> |
||||||
|
</div> |
||||||
|
<div class="num"> |
||||||
|
<div class="round" style="background: #42B983;"></div> |
||||||
|
<span class="word">已完成</span> |
||||||
|
<span class="boldspan">1</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="maincontentitemright"> |
||||||
|
<div class="maincontentitemrightitem"> |
||||||
|
<div class="flexcol namebox"> |
||||||
|
<span> |
||||||
|
尬粒酒店管理有限公司济南泺文路分公司 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
单位名称 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
重点单位 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
级别 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区A消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
责任机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区B消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
协助机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
<label nz-radio ngModel [ngModel]="xxx" |
||||||
|
(click)="radioChange($event)">宣传</label> |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
同步工作 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol progressbox progresssquare"> |
||||||
|
<span> |
||||||
|
<nz-progress style="width: 200px;" nzStrokeLinecap="square" |
||||||
|
nzStrokeWidth="16" nzStrokeColor="#42B983" [nzPercent]="30"> |
||||||
|
</nz-progress> |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
进度 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="btnbox"> |
||||||
|
<button nz-button nzType="primary">提交审核</button> |
||||||
|
<button style="margin-left: 12px;" nz-button nzType="primary">取消</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="maincontentitemrightitem"> |
||||||
|
<div class="flexcol namebox"> |
||||||
|
<span> |
||||||
|
尬粒酒店管理有限公司济南泺文路分公司 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
单位名称 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
重点单位 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
级别 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区A消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
责任机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
历下区B消防救援站 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
协助机构 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol"> |
||||||
|
<span> |
||||||
|
<label nz-radio ngModel [ngModel]="xxx" |
||||||
|
(click)="radioChange($event)">宣传</label> |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
同步工作 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="flexcol progressbox progresssquare"> |
||||||
|
<span> |
||||||
|
<nz-progress style="width: 200px;" nzStrokeLinecap="square" |
||||||
|
nzStrokeWidth="16" nzStrokeColor="#42B983" [nzPercent]="30"> |
||||||
|
</nz-progress> |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
进度 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="btnbox"> |
||||||
|
<button nz-button nzType="primary">提交审核</button> |
||||||
|
<button style="margin-left: 12px;" nz-button nzType="primary">取消</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<!-- --> |
||||||
|
<div class="cutoffrule"></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
@ -0,0 +1,384 @@ |
|||||||
|
.box { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
} |
||||||
|
|
||||||
|
.timebox { |
||||||
|
width: 100%; |
||||||
|
height: 68px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 20px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
nz-select { |
||||||
|
margin-right: 16px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
} |
||||||
|
|
||||||
|
.monthbtn { |
||||||
|
width: 80px; |
||||||
|
height: 32px; |
||||||
|
line-height: 32px; |
||||||
|
background: #FFFFFF; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
margin-right: 16px; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
.selectedMonth { |
||||||
|
|
||||||
|
background: #2C4DC0; |
||||||
|
color: #FFFFFF; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelbox { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
color: #303133; |
||||||
|
|
||||||
|
.instrumentpanelheader { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
margin-bottom: 15px; |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanel { |
||||||
|
display: flex; |
||||||
|
flex-wrap: wrap; |
||||||
|
justify-content: space-between; |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitem { |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 3px 8px 1px rgba(0, 0, 0, 0.0800); |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
display: flex; |
||||||
|
|
||||||
|
|
||||||
|
.itemone { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
|
||||||
|
.instrumentpanelitemleft { |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: space-around; |
||||||
|
align-items: flex-start; |
||||||
|
flex: 1; |
||||||
|
box-sizing: border-box; |
||||||
|
|
||||||
|
|
||||||
|
.panelheadername { |
||||||
|
width: 80%; |
||||||
|
height: 46px; |
||||||
|
line-height: 46px; |
||||||
|
text-align: center; |
||||||
|
box-sizing: border-box; |
||||||
|
border-radius: 6px 0px 6px 6px; |
||||||
|
color: #fff; |
||||||
|
|
||||||
|
img { |
||||||
|
vertical-align: text-top; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tasknum { |
||||||
|
margin-left: 8px; |
||||||
|
|
||||||
|
p { |
||||||
|
margin: 0; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.btn { |
||||||
|
margin-left: 8px; |
||||||
|
width: 60%; |
||||||
|
max-width: 96px; |
||||||
|
height: 36px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
background: #42B983; |
||||||
|
color: white; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitemright { |
||||||
|
flex: 1; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
nz-progress { |
||||||
|
margin-top: 65px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.itemtwo { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 16px; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
|
||||||
|
.itemtwotitle { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
|
||||||
|
.back { |
||||||
|
cursor: pointer; |
||||||
|
|
||||||
|
i { |
||||||
|
margin-right: 3px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
margin-bottom: 0; |
||||||
|
} |
||||||
|
|
||||||
|
.itemtwocontent { |
||||||
|
flex: 1; |
||||||
|
overflow-y: auto; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
|
||||||
|
.itemtwocontentitem { |
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
height: 70px; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: space-around; |
||||||
|
align-items: flex-start; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 8px 0; |
||||||
|
|
||||||
|
p { |
||||||
|
margin-bottom: 0; |
||||||
|
} |
||||||
|
|
||||||
|
.itemtwocontentitemp1 { |
||||||
|
width: 100%; |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
box-sizing: border-box; |
||||||
|
padding-right: 5px; |
||||||
|
|
||||||
|
.itemtwocontentitemp1name { |
||||||
|
white-space: nowrap; |
||||||
|
overflow: hidden; |
||||||
|
text-overflow: ellipsis; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitemopen { |
||||||
|
width: 24.3%; |
||||||
|
height: 260px; |
||||||
|
margin-bottom: 18px; |
||||||
|
|
||||||
|
.itemone { |
||||||
|
.instrumentpanelitemleft { |
||||||
|
padding: 26px 0 26px 10%; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.instrumentpanelitemclose { |
||||||
|
width: 11.7%; |
||||||
|
height: 200px; |
||||||
|
margin-bottom: 0px; |
||||||
|
|
||||||
|
.itemone { |
||||||
|
.instrumentpanelitemleft { |
||||||
|
padding: 15px 0 15px 10%; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.stationcardlistbox { |
||||||
|
.stationcardlistitembox { |
||||||
|
width: 100%; |
||||||
|
border-top: 1px dashed #C7CAD0; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
|
||||||
|
.stationcardlistitem { |
||||||
|
width: 100%; |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 3px 8px 1px rgba(0, 0, 0, 0.0800); |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 18px; |
||||||
|
|
||||||
|
.header { |
||||||
|
width: 100%; |
||||||
|
height: 64px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
text-align: left; |
||||||
|
|
||||||
|
.progress { |
||||||
|
width: 200px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
span { |
||||||
|
margin-right: 12px; |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
nz-progress { |
||||||
|
width: 230px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.expand { |
||||||
|
margin-left: 20px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.maincontent { |
||||||
|
.maincontentitem { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 16px; |
||||||
|
margin-bottom: 18px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
border: 1px solid #42B983; |
||||||
|
display: flex; |
||||||
|
} |
||||||
|
|
||||||
|
.maincontentitemleft { |
||||||
|
width: 170px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding-right: 40px; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: flex-start; |
||||||
|
align-items: center; |
||||||
|
border-right: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
.panelheadername { |
||||||
|
width: 90%; |
||||||
|
height: 38px; |
||||||
|
line-height: 38px; |
||||||
|
text-align: center; |
||||||
|
box-sizing: border-box; |
||||||
|
border-radius: 6px 0px 6px 6px; |
||||||
|
color: #fff; |
||||||
|
margin-bottom: 8px; |
||||||
|
|
||||||
|
img { |
||||||
|
vertical-align: text-top; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.num { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
margin-bottom: 8px; |
||||||
|
|
||||||
|
.round { |
||||||
|
width: 8px; |
||||||
|
height: 8px; |
||||||
|
} |
||||||
|
|
||||||
|
.word { |
||||||
|
margin: 0 6px; |
||||||
|
} |
||||||
|
|
||||||
|
.boldspan { |
||||||
|
font-weight: 800; |
||||||
|
font-size: 25px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.maincontentitemright { |
||||||
|
flex: 1; |
||||||
|
box-sizing: border-box; |
||||||
|
padding-left: 40px; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
justify-content: space-around; |
||||||
|
// align-items: center; |
||||||
|
|
||||||
|
.maincontentitemrightitem { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 12px 0px; |
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.flexcol { |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
align-items: flex-start; |
||||||
|
margin-right: 3%; |
||||||
|
|
||||||
|
span:nth-child(1) { |
||||||
|
color: #303133; |
||||||
|
margin-bottom: 8px; |
||||||
|
} |
||||||
|
|
||||||
|
span:nth-child(2) { |
||||||
|
color: #C7CAD0; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.namebox { |
||||||
|
width: 28%; |
||||||
|
} |
||||||
|
|
||||||
|
.progressbox { |
||||||
|
width: 220px; |
||||||
|
|
||||||
|
span:nth-child(1) { |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.btnbox { |
||||||
|
display: flex; |
||||||
|
justify-content: flex-end; |
||||||
|
align-self: flex-start; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
div:last-child { |
||||||
|
border-bottom: 0px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
.cutoffrule { |
||||||
|
width: 100%; |
||||||
|
border-top: 1px dashed #C7CAD0; |
||||||
|
} |
@ -1 +1,87 @@ |
|||||||
<p>da-subordinate-audit works!</p> |
<!-- <p>下级任务申请</p> --> |
||||||
|
<div class="box"> |
||||||
|
<div class="timebox"> |
||||||
|
<nz-select ngModel="2022"> |
||||||
|
<nz-option nzValue="2021" nzLabel="2021年"></nz-option> |
||||||
|
<nz-option nzValue="2022" nzLabel="2022年"></nz-option> |
||||||
|
</nz-select> |
||||||
|
<div *ngFor="let item of months" class="monthbtn" (click)="selectMonth(item)" |
||||||
|
[ngClass]="{'selectedMonth': item.name == selectedMonth}"> |
||||||
|
{{item.name}} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="content"> |
||||||
|
<div class="tabheader"> |
||||||
|
<div class="tabtitle" [ngClass]="{'selectedTab': selectedTab == 1}" (click)="selectTab(1)"> |
||||||
|
<div [ngClass]="{'blue': selectedTab == 1}"> |
||||||
|
<span>熟悉演练任务</span> |
||||||
|
<span style="margin: 0 8px;"></span> |
||||||
|
<span>已审批: 6/8</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="tabtitle" [ngClass]="{'selectedTab': selectedTab == 2}" (click)="selectTab(2)"> |
||||||
|
<div [ngClass]="{'blue': selectedTab == 2}"> |
||||||
|
<span>联络指导任务</span> |
||||||
|
<span style="margin: 0 8px;"></span> |
||||||
|
<span>已审批: 6/8</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="tabbody" *ngIf="selectedTab == 1"> |
||||||
|
<div class="card redcard"> |
||||||
|
<div class="unitname"> |
||||||
|
<img src="../../../../assets/images/icon/unit.png" alt=""> |
||||||
|
<span>上海雅特酒店管理有限公司济南泺文路分公司</span> |
||||||
|
</div> |
||||||
|
<div class="info"> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/main.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/assist.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span class="blue">分配</span> |
||||||
|
<span>|</span> |
||||||
|
<span>申请人: 历下区A消防救援站</span> |
||||||
|
<span class="blue">修改</span> |
||||||
|
</div> |
||||||
|
<div class="btn"> |
||||||
|
<button nz-button style="background: #42B983;color: white;">同意</button> |
||||||
|
<button nz-button style="background: #FF0000;color: white;margin-left: 20px;">驳回</button> |
||||||
|
</div> |
||||||
|
<img class="auditimg" src="../../../../assets/images/icon/reject.png" alt=""> |
||||||
|
<!-- <img class="auditimg" src="../../../../assets/images/icon/agree.png" alt=""> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="tabbody" *ngIf="selectedTab == 2"> |
||||||
|
<div class="card greencard"> |
||||||
|
<div class="unitname"> |
||||||
|
<img src="../../../../assets/images/icon/unit.png" alt=""> |
||||||
|
<span>上海雅特酒店管理有限公司济南泺文路分公司</span> |
||||||
|
</div> |
||||||
|
<div class="info"> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/main.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span> |
||||||
|
<img src="../../../../assets/images/icon/assist.png" alt=""> |
||||||
|
未分配 |
||||||
|
</span> |
||||||
|
<span class="blue">分配</span> |
||||||
|
<span>|</span> |
||||||
|
<span>申请人: 历下区A消防救援站</span> |
||||||
|
<span class="blue">修改</span> |
||||||
|
</div> |
||||||
|
<div class="btn"> |
||||||
|
<button nz-button style="background: #42B983;color: white;">同意</button> |
||||||
|
<button nz-button style="background: #FF0000;color: white;margin-left: 20px;">驳回</button> |
||||||
|
</div> |
||||||
|
<!-- <img class="auditimg" src="../../../../assets/images/icon/reject.png" alt=""> --> |
||||||
|
<img class="auditimg" src="../../../../assets/images/icon/agree.png" alt=""> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
@ -0,0 +1,146 @@ |
|||||||
|
.box { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
} |
||||||
|
|
||||||
|
.timebox { |
||||||
|
width: 100%; |
||||||
|
height: 68px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 20px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
nz-select { |
||||||
|
margin-right: 16px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
} |
||||||
|
|
||||||
|
.monthbtn { |
||||||
|
width: 80px; |
||||||
|
height: 32px; |
||||||
|
line-height: 32px; |
||||||
|
background: #FFFFFF; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
margin-right: 16px; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
.selectedMonth { |
||||||
|
|
||||||
|
background: #2C4DC0; |
||||||
|
color: #FFFFFF; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.content { |
||||||
|
flex: 1; |
||||||
|
overflow: hidden; |
||||||
|
margin: 20px; |
||||||
|
margin-top: 0px; |
||||||
|
background: #fff; |
||||||
|
box-shadow: 0px 3px 8px 1px rgba(0, 0, 0, 0.0800); |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
text-align: left; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
|
||||||
|
.tabheader { |
||||||
|
width: 100%; |
||||||
|
height: 52px; |
||||||
|
background: #E4E7EC; |
||||||
|
display: flex; |
||||||
|
|
||||||
|
.tabtitle { |
||||||
|
width: 205px; |
||||||
|
height: 52px; |
||||||
|
line-height: 52px; |
||||||
|
text-align: center; |
||||||
|
display: flex; |
||||||
|
justify-content: center; |
||||||
|
cursor: pointer; |
||||||
|
|
||||||
|
div { |
||||||
|
border-top: 2px solid #E4E7EC; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.selectedTab { |
||||||
|
background: #fff; |
||||||
|
|
||||||
|
div { |
||||||
|
border-top: 2px solid #2C4DC0; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tabbody { |
||||||
|
flex: 1; |
||||||
|
overflow-y: auto; |
||||||
|
color: #000; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 18px; |
||||||
|
|
||||||
|
.card { |
||||||
|
color: #303133; |
||||||
|
width: 100%; |
||||||
|
height: 70px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
display: flex; |
||||||
|
margin-bottom: 18px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 20px; |
||||||
|
position: relative; |
||||||
|
div { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
img { |
||||||
|
margin-top: -3px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.unitname { |
||||||
|
flex: 3; |
||||||
|
} |
||||||
|
|
||||||
|
.info { |
||||||
|
flex: 6; |
||||||
|
|
||||||
|
span { |
||||||
|
margin-right: 20px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.btn { |
||||||
|
flex: 1; |
||||||
|
} |
||||||
|
|
||||||
|
.auditimg { |
||||||
|
position: absolute; |
||||||
|
right: 18%; |
||||||
|
top: 9%; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.greencard { |
||||||
|
background: rgba(66, 185, 131, 0.0400); |
||||||
|
border: 1px solid rgba(66, 185, 131, 0.1600); |
||||||
|
} |
||||||
|
|
||||||
|
.redcard { |
||||||
|
background: rgba(255, 0, 0, 0.0200); |
||||||
|
border: 1px solid rgba(255, 0, 0, 0.1000); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -1 +1,215 @@ |
|||||||
<p>zhi-audit works!</p> |
<!-- <p>任务审批</p> --> |
||||||
|
<div class="box"> |
||||||
|
<div class="timebox"> |
||||||
|
<nz-select ngModel="2022"> |
||||||
|
<nz-option nzValue="2021" nzLabel="2021年"></nz-option> |
||||||
|
<nz-option nzValue="2022" nzLabel="2022年"></nz-option> |
||||||
|
</nz-select> |
||||||
|
<div *ngFor="let item of months" class="monthbtn" (click)="selectMonth(item)" |
||||||
|
[ngClass]="{'selectedMonth': item.name == selectedMonth}"> |
||||||
|
{{item.name}} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="content" cdkScrollable> |
||||||
|
<!-- 双随机 --> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernameblue"> |
||||||
|
<img src="../../../../assets/images/icon/suiji.png" alt=""> |
||||||
|
双随机 |
||||||
|
</div> |
||||||
|
<span> |
||||||
|
已选择: <span class="blue">15</span> 家单位 |
||||||
|
</span> |
||||||
|
<span class="spanline">|</span> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">14</span> 家单位 |
||||||
|
</span> |
||||||
|
<span class="spanline">|</span> |
||||||
|
<span> |
||||||
|
已通过: <span class="blue">14/15</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<button nz-button style="background: #42B983;color: white;">同意</button> |
||||||
|
<button nz-button style="background: #FF0000;color: white;margin-left: 20px;">驳回</button> |
||||||
|
<span (click)="expand(doubleRandom)" class="expand blue"> |
||||||
|
{{doubleRandom.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="doubleRandom.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panelcontent" *ngIf="doubleRandom.isExpand"> |
||||||
|
<nz-table #colSpanTable [nzData]="doubleRandom.data" nzBordered nzSize="small" |
||||||
|
[nzShowPagination]="false"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<th nzWidth="18%">责任机构</th> |
||||||
|
<th nzWidth="8%">任务额</th> |
||||||
|
<th nzWidth="25%">单位名称</th> |
||||||
|
<th nzWidth="15%">监督员</th> |
||||||
|
<th>说明</th> |
||||||
|
<th nzWidth="8%">操作</th> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr *ngFor="let item of colSpanTable.data; index as i"> |
||||||
|
<td>访客</td> |
||||||
|
<td>2021-11-19</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td class="explain"> |
||||||
|
一段简短的说明文字... |
||||||
|
<img src="../../../../assets/images/icon/agree.png" alt=""> |
||||||
|
<!-- <img src="../../../../assets/images/icon/reject.png" alt=""> --> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<span class="green" style="margin-right: 16px;">同意</span> |
||||||
|
<span class="red">驳回</span> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</nz-table> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<!-- 熟悉演练 --> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernamepurple"> |
||||||
|
<img src="../../../../assets/images/icon/yanlian.png" alt=""> |
||||||
|
熟悉演练 |
||||||
|
</div> |
||||||
|
<span> |
||||||
|
已选择: <span class="blue">15</span> 家单位 |
||||||
|
</span> |
||||||
|
<span class="spanline">|</span> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">14</span> 家单位 |
||||||
|
</span> |
||||||
|
<span class="spanline">|</span> |
||||||
|
<span> |
||||||
|
已通过: <span class="blue">14/15</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<button nz-button style="background: #42B983;color: white;">同意</button> |
||||||
|
<button nz-button style="background: #FF0000;color: white;margin-left: 20px;">驳回</button> |
||||||
|
<span (click)="expand(rehearsal)" class="expand blue"> |
||||||
|
{{rehearsal.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="rehearsal.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panelcontent" *ngIf="rehearsal.isExpand"> |
||||||
|
<nz-table #colSpanTable [nzData]="rehearsal.data" nzBordered nzSize="small" [nzShowPagination]="false"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<th nzWidth="18%">责任机构</th> |
||||||
|
<th nzWidth="8%">任务额</th> |
||||||
|
<th nzWidth="25%">单位名称</th> |
||||||
|
<th nzWidth="15%">监督员</th> |
||||||
|
<th>说明</th> |
||||||
|
<th nzWidth="8%">操作</th> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr *ngFor="let item of colSpanTable.data; index as i"> |
||||||
|
<td>访客</td> |
||||||
|
<td>2021-11-19</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td class="explain"> |
||||||
|
一段简短的说明文字... |
||||||
|
<img src="../../../../assets/images/icon/agree.png" alt=""> |
||||||
|
<!-- <img src="../../../../assets/images/icon/reject.png" alt=""> --> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<span class="green" style="margin-right: 16px;">同意</span> |
||||||
|
<span class="red">驳回</span> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</nz-table> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernameor"> |
||||||
|
<img src="../../../../assets/images/icon/huodong.png" alt=""> |
||||||
|
重大活动 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">选择单位</button> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">0/0</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<!-- <button nz-button nzType="primary">提交审核</button> |
||||||
|
<span class="expand blue"> |
||||||
|
收起 |
||||||
|
<i nz-icon nzType="down" nzTheme="outline"></i> |
||||||
|
</span> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernameor2"> |
||||||
|
<img src="../../../../assets/images/icon/xuanchuan.png" alt=""> |
||||||
|
消防宣传 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">选择单位</button> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">0/0</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<!-- <button nz-button nzType="primary">提交审核</button> |
||||||
|
<span class="expand blue"> |
||||||
|
收起 |
||||||
|
<i nz-icon nzType="down" nzTheme="outline"></i> |
||||||
|
</span> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernamered"> |
||||||
|
<img src="../../../../assets/images/icon/huozai.png" alt=""> |
||||||
|
火灾调查 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">选择单位</button> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">0/0</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<!-- <button nz-button nzType="primary">提交审核</button> |
||||||
|
<span class="expand blue"> |
||||||
|
收起 |
||||||
|
<i nz-icon nzType="down" nzTheme="outline"></i> |
||||||
|
</span> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
@ -0,0 +1,183 @@ |
|||||||
|
.box { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
} |
||||||
|
|
||||||
|
.timebox { |
||||||
|
width: 100%; |
||||||
|
height: 68px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 20px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
nz-select { |
||||||
|
margin-right: 16px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
} |
||||||
|
|
||||||
|
.monthbtn { |
||||||
|
width: 80px; |
||||||
|
height: 32px; |
||||||
|
line-height: 32px; |
||||||
|
background: #FFFFFF; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
margin-right: 16px; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
.selectedMonth { |
||||||
|
|
||||||
|
background: #2C4DC0; |
||||||
|
color: #FFFFFF; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.content { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 20px; |
||||||
|
flex: 1; |
||||||
|
overflow-y: auto; |
||||||
|
color: #606266; |
||||||
|
} |
||||||
|
|
||||||
|
.panel { |
||||||
|
margin-bottom: 16px; |
||||||
|
|
||||||
|
.panelheader { |
||||||
|
justify-content: space-between; |
||||||
|
|
||||||
|
.panelheaderleft { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
.panelheadername { |
||||||
|
width: 130px; |
||||||
|
height: 36px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 8px 28px; |
||||||
|
border-radius: 6px 0px 6px 6px; |
||||||
|
color: #fff; |
||||||
|
margin-right: 36px; |
||||||
|
|
||||||
|
img { |
||||||
|
vertical-align: text-top; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.spanline { |
||||||
|
color: rgba(44, 77, 192, 0.4000); |
||||||
|
margin: 0 20px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.panelheaderright { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
.expand { |
||||||
|
margin-left: 36px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.panelcontent { |
||||||
|
nz-table { |
||||||
|
margin-top: 16px; |
||||||
|
} |
||||||
|
.explain{ |
||||||
|
position: relative; |
||||||
|
img{ |
||||||
|
width: 36px; |
||||||
|
height: 36px; |
||||||
|
position: absolute; |
||||||
|
right: 20px; |
||||||
|
top: 4px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.panelheadernameblue { |
||||||
|
background-color: #1D9DFF; |
||||||
|
} |
||||||
|
|
||||||
|
.panelheadernamepurple { |
||||||
|
background-color: #9D80FF; |
||||||
|
} |
||||||
|
|
||||||
|
.panelheadernameblue2 { |
||||||
|
background-color: #5087FF; |
||||||
|
} |
||||||
|
|
||||||
|
.panelheadernamegreen { |
||||||
|
background-color: #42B983; |
||||||
|
} |
||||||
|
|
||||||
|
.panelheadernameor { |
||||||
|
background-color: #FF9203; |
||||||
|
} |
||||||
|
|
||||||
|
.panelheadernameor2 { |
||||||
|
background-color: #FF5D2A; |
||||||
|
} |
||||||
|
|
||||||
|
.panelheadernamered { |
||||||
|
background-color: #FF404D; |
||||||
|
} |
||||||
|
|
||||||
|
.selectUnitPopover { |
||||||
|
width: 550px; |
||||||
|
height: 492px; |
||||||
|
|
||||||
|
nz-form-item { |
||||||
|
margin: 12px 0; |
||||||
|
} |
||||||
|
|
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
|
||||||
|
.popoverTitle { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
span { |
||||||
|
color: #C7CAD0; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
.selectedspan { |
||||||
|
color: #2C4DC0; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.popoverContent { |
||||||
|
flex: 1; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
|
||||||
|
.popoverContentitem { |
||||||
|
flex: 1; |
||||||
|
overflow-y: auto; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.popoverBtn { |
||||||
|
display: flex; |
||||||
|
justify-content: flex-end; |
||||||
|
margin-top: 16px; |
||||||
|
|
||||||
|
button { |
||||||
|
margin-left: 18px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -1 +1,334 @@ |
|||||||
<p>zhi-indicators works!</p> |
<!-- <p>任务指标</p> --> |
||||||
|
<div class="box"> |
||||||
|
<div class="timebox"> |
||||||
|
<nz-select ngModel="2022"> |
||||||
|
<nz-option nzValue="2021" nzLabel="2021年"></nz-option> |
||||||
|
<nz-option nzValue="2022" nzLabel="2022年"></nz-option> |
||||||
|
</nz-select> |
||||||
|
<div *ngFor="let item of months" class="monthbtn" (click)="selectMonth(item)" |
||||||
|
[ngClass]="{'selectedMonth': item.name == selectedMonth}"> |
||||||
|
{{item.name}} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="content" cdkScrollable> |
||||||
|
<!-- 双随机 --> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernameblue"> |
||||||
|
<img src="../../../../assets/images/icon/suiji.png" alt=""> |
||||||
|
双随机 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary" nz-popover nzPopoverPlacement="bottomLeft" |
||||||
|
[nzPopoverContent]="contentTemplate" [nzPopoverTrigger]=null |
||||||
|
[nzPopoverVisible]="doubleRandom.isPopover" (click)="isPopover(doubleRandom)">选择单位</button> |
||||||
|
<ng-template #contentTemplate> |
||||||
|
<div class="selectUnitPopover"> |
||||||
|
<div class="popoverTitle"> |
||||||
|
<span (click)="popoverMenuSelect(doubleRandom,1)" |
||||||
|
[ngClass]="{'selectedspan': doubleRandom.selectedMenu == 1}">单位名称</span> |
||||||
|
<span style="margin: 0 10px;">|</span> |
||||||
|
<span (click)="popoverMenuSelect(doubleRandom,2)" |
||||||
|
[ngClass]="{'selectedspan': doubleRandom.selectedMenu == 2}">组织机构</span> |
||||||
|
</div> |
||||||
|
<div class="popoverContent" *ngIf="doubleRandom.selectedMenu == 1"> |
||||||
|
<div> |
||||||
|
<form nz-form (ngSubmit)="submitForm(doubleRandom.search1)"> |
||||||
|
<nz-form-item> |
||||||
|
<nz-form-control> |
||||||
|
<nz-input-group nzPrefixIcon="search"> |
||||||
|
<input type="text" [(ngModel)]="doubleRandom.search1" nz-input |
||||||
|
placeholder="请输入单位名称" [ngModelOptions]="{standalone: true}" /> |
||||||
|
</nz-input-group> |
||||||
|
</nz-form-control> |
||||||
|
<button style="display: none;" type="submit"></button> |
||||||
|
</nz-form-item> |
||||||
|
</form> |
||||||
|
</div> |
||||||
|
<div class="popoverContentitem"> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="popoverContent" *ngIf="doubleRandom.selectedMenu == 2"> |
||||||
|
<div> |
||||||
|
<form nz-form> |
||||||
|
<nz-form-item> |
||||||
|
<nz-form-control> |
||||||
|
<nz-input-group nzPrefixIcon="search"> |
||||||
|
<input type="text" [(ngModel)]="doubleRandom.search2" nz-input |
||||||
|
placeholder="请输入单位名称" [ngModelOptions]="{standalone: true}" /> |
||||||
|
</nz-input-group> |
||||||
|
</nz-form-control> |
||||||
|
</nz-form-item> |
||||||
|
</form> |
||||||
|
</div> |
||||||
|
<div class="popoverContentitem"> |
||||||
|
<nz-tree [nzHideUnMatched]='true' [nzSearchValue]="doubleRandom.search2" |
||||||
|
#nzTreeComponent [nzData]="doubleRandom.nodes" [nzTreeTemplate]="nzTreeTemplate" nzBlockNode |
||||||
|
[nzExpandedIcon]="multiExpandedIconTpl"> |
||||||
|
</nz-tree> |
||||||
|
<ng-template #nzTreeTemplate let-node let-origin="origin"> |
||||||
|
<div class="nodebox"> |
||||||
|
|
||||||
|
<span class="name"> |
||||||
|
<label *ngIf="node.origin.isGasStation" |
||||||
|
[(ngModel)]="node.origin.isChecked" nz-checkbox |
||||||
|
(ngModelChange)="orcheckbox(doubleRandom,$event,node)"></label> |
||||||
|
{{ node.title }} |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</ng-template> |
||||||
|
<ng-template #multiExpandedIconTpl let-node let-origin="origin"> |
||||||
|
<ng-container *ngIf="node.children.length == 0; else elseTemplate"> |
||||||
|
|
||||||
|
</ng-container> |
||||||
|
<ng-template #elseTemplate> |
||||||
|
<i nz-icon [nzType]="node.isExpanded ? 'caret-down' : 'caret-right'" |
||||||
|
class="ant-tree-switcher-line-icon"></i> |
||||||
|
</ng-template> |
||||||
|
</ng-template> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="popoverBtn"> |
||||||
|
<button nz-button nzType="primary">确定</button> |
||||||
|
<button nz-button nzType="default" (click)="isPopover(doubleRandom)">取消</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</ng-template> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">14/15</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<button nz-button nzType="primary">提交审核</button> |
||||||
|
<span (click)="expand(doubleRandom)" class="expand blue"> |
||||||
|
{{doubleRandom.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="doubleRandom.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panelcontent" *ngIf="doubleRandom.isExpand"> |
||||||
|
<nz-table #colSpanTable [nzData]="doubleRandom.data" nzBordered nzSize="small" |
||||||
|
[nzShowPagination]="false"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<th nzWidth="18%">责任机构</th> |
||||||
|
<th nzWidth="8%">任务额</th> |
||||||
|
<th nzWidth="25%">单位名称</th> |
||||||
|
<th nzWidth="15%">监督员</th> |
||||||
|
<th>说明</th> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr *ngFor="let item of colSpanTable.data; index as i"> |
||||||
|
<td>访客</td> |
||||||
|
<td>2021-11-19</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td style="padding:0 2px!important;"> |
||||||
|
<textarea style="border: 0;" rows="1" nz-input placeholder="一段简短的说明文字..."></textarea> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</nz-table> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<!-- 熟悉演练 --> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernamepurple"> |
||||||
|
<img src="../../../../assets/images/icon/yanlian.png" alt=""> |
||||||
|
熟悉演练 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary" nz-popover nzPopoverPlacement="bottomLeft" |
||||||
|
[nzPopoverContent]="contentTemplate2" [nzPopoverTrigger]=null |
||||||
|
[nzPopoverVisible]="rehearsal.isPopover" (click)="isPopover(rehearsal)">选择单位</button> |
||||||
|
<ng-template #contentTemplate2> |
||||||
|
<div class="selectUnitPopover"> |
||||||
|
<div class="popoverTitle"> |
||||||
|
<span (click)="popoverMenuSelect(rehearsal,1)" |
||||||
|
[ngClass]="{'selectedspan': rehearsal.selectedMenu == 1}">单位名称</span> |
||||||
|
<span style="margin: 0 10px;">|</span> |
||||||
|
<span (click)="popoverMenuSelect(rehearsal,2)" |
||||||
|
[ngClass]="{'selectedspan': rehearsal.selectedMenu == 2}">组织机构</span> |
||||||
|
</div> |
||||||
|
<div class="popoverContent" *ngIf="rehearsal.selectedMenu == 1"> |
||||||
|
<div> |
||||||
|
<form nz-form (ngSubmit)="submitForm(rehearsal.search1)"> |
||||||
|
<nz-form-item> |
||||||
|
<nz-form-control> |
||||||
|
<nz-input-group nzPrefixIcon="search"> |
||||||
|
<input type="text" [(ngModel)]="rehearsal.search1" nz-input |
||||||
|
placeholder="请输入单位名称" [ngModelOptions]="{standalone: true}" /> |
||||||
|
</nz-input-group> |
||||||
|
</nz-form-control> |
||||||
|
<button style="display: none;" type="submit"></button> |
||||||
|
</nz-form-item> |
||||||
|
</form> |
||||||
|
</div> |
||||||
|
<div class="popoverContentitem"> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="popoverContent" *ngIf="rehearsal.selectedMenu == 2"> |
||||||
|
<div> |
||||||
|
<form nz-form> |
||||||
|
<nz-form-item> |
||||||
|
<nz-form-control> |
||||||
|
<nz-input-group nzPrefixIcon="search"> |
||||||
|
<input type="text" [(ngModel)]="rehearsal.search2" nz-input |
||||||
|
placeholder="请输入单位名称" [ngModelOptions]="{standalone: true}" /> |
||||||
|
</nz-input-group> |
||||||
|
</nz-form-control> |
||||||
|
</nz-form-item> |
||||||
|
</form> |
||||||
|
</div> |
||||||
|
<div class="popoverContentitem"> |
||||||
|
<nz-tree [nzHideUnMatched]='true' [nzSearchValue]="rehearsal.search2" |
||||||
|
#nzTreeComponent [nzData]="rehearsal.nodes" [nzTreeTemplate]="nzTreeTemplate" nzBlockNode |
||||||
|
[nzExpandedIcon]="multiExpandedIconTpl"> |
||||||
|
</nz-tree> |
||||||
|
<ng-template #nzTreeTemplate let-node let-origin="origin"> |
||||||
|
<div class="nodebox"> |
||||||
|
|
||||||
|
<span class="name"> |
||||||
|
<label *ngIf="node.origin.isGasStation" |
||||||
|
[(ngModel)]="node.origin.isChecked" nz-checkbox |
||||||
|
(ngModelChange)="orcheckbox(rehearsal,$event,node)"></label> |
||||||
|
{{ node.title }} |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</ng-template> |
||||||
|
<ng-template #multiExpandedIconTpl let-node let-origin="origin"> |
||||||
|
<ng-container *ngIf="node.children.length == 0; else elseTemplate"> |
||||||
|
|
||||||
|
</ng-container> |
||||||
|
<ng-template #elseTemplate> |
||||||
|
<i nz-icon [nzType]="node.isExpanded ? 'caret-down' : 'caret-right'" |
||||||
|
class="ant-tree-switcher-line-icon"></i> |
||||||
|
</ng-template> |
||||||
|
</ng-template> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="popoverBtn"> |
||||||
|
<button nz-button nzType="primary">确定</button> |
||||||
|
<button nz-button nzType="default" (click)="isPopover(rehearsal)">取消</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</ng-template> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">14/15</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<button nz-button nzType="primary">提交审核</button> |
||||||
|
<span (click)="expand(rehearsal)" class="expand blue"> |
||||||
|
{{rehearsal.isExpand ? '收起' :'展开'}} |
||||||
|
<i nz-icon [nzType]="rehearsal.isExpand ? 'down' : 'up'" nzTheme="outline"></i> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panelcontent" *ngIf="rehearsal.isExpand"> |
||||||
|
<nz-table #colSpanTable [nzData]="rehearsal.data" nzBordered nzSize="small" |
||||||
|
[nzShowPagination]="false"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<th nzWidth="18%">责任机构</th> |
||||||
|
<th nzWidth="8%">任务额</th> |
||||||
|
<th nzWidth="25%">单位名称</th> |
||||||
|
<th nzWidth="15%">监督员</th> |
||||||
|
<th>说明</th> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr *ngFor="let item of colSpanTable.data; index as i"> |
||||||
|
<td>访客</td> |
||||||
|
<td>2021-11-19</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
22 |
||||||
|
</td> |
||||||
|
<td style="padding:0 2px!important;"> |
||||||
|
<textarea style="border: 0;" rows="1" nz-input placeholder="一段简短的说明文字..."></textarea> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</nz-table> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernameor"> |
||||||
|
<img src="../../../../assets/images/icon/huodong.png" alt=""> |
||||||
|
重大活动 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">选择单位</button> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">0/0</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<!-- <button nz-button nzType="primary">提交审核</button> |
||||||
|
<span class="expand blue"> |
||||||
|
收起 |
||||||
|
<i nz-icon nzType="down" nzTheme="outline"></i> |
||||||
|
</span> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernameor2"> |
||||||
|
<img src="../../../../assets/images/icon/xuanchuan.png" alt=""> |
||||||
|
消防宣传 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">选择单位</button> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">0/0</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<!-- <button nz-button nzType="primary">提交审核</button> |
||||||
|
<span class="expand blue"> |
||||||
|
收起 |
||||||
|
<i nz-icon nzType="down" nzTheme="outline"></i> |
||||||
|
</span> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="panel"> |
||||||
|
<div class="panelheader"> |
||||||
|
<div class="panelheaderleft"> |
||||||
|
<div class="panelheadername panelheadernamered"> |
||||||
|
<img src="../../../../assets/images/icon/huozai.png" alt=""> |
||||||
|
火灾调查 |
||||||
|
</div> |
||||||
|
<button nz-button nzType="primary">选择单位</button> |
||||||
|
<span> |
||||||
|
已分配: <span class="blue">0/0</span> 家单位 |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
<div class="panelheaderright"> |
||||||
|
<!-- <button nz-button nzType="primary">提交审核</button> |
||||||
|
<span class="expand blue"> |
||||||
|
收起 |
||||||
|
<i nz-icon nzType="down" nzTheme="outline"></i> |
||||||
|
</span> --> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
@ -0,0 +1,144 @@ |
|||||||
|
.box { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
} |
||||||
|
|
||||||
|
.timebox { |
||||||
|
width: 100%; |
||||||
|
height: 68px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 0 20px; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
border-bottom: 1px dashed #C7CAD0; |
||||||
|
|
||||||
|
nz-select { |
||||||
|
margin-right: 16px; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
} |
||||||
|
|
||||||
|
.monthbtn { |
||||||
|
width: 80px; |
||||||
|
height: 32px; |
||||||
|
line-height: 32px; |
||||||
|
background: #FFFFFF; |
||||||
|
border-radius: 4px 4px 4px 4px; |
||||||
|
opacity: 1; |
||||||
|
border: 1px solid #E4E7EC; |
||||||
|
color: #303133; |
||||||
|
margin-right: 16px; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
.selectedMonth { |
||||||
|
|
||||||
|
background: #2C4DC0; |
||||||
|
color: #FFFFFF; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.content { |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 20px; |
||||||
|
flex: 1; |
||||||
|
overflow-y: auto; |
||||||
|
color: #606266; |
||||||
|
} |
||||||
|
|
||||||
|
.panel { |
||||||
|
margin-bottom: 16px; |
||||||
|
|
||||||
|
.panelheader { |
||||||
|
justify-content: space-between; |
||||||
|
|
||||||
|
.panelheaderleft { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
.panelheadername { |
||||||
|
width: 130px; |
||||||
|
height: 36px; |
||||||
|
box-sizing: border-box; |
||||||
|
padding: 8px 28px; |
||||||
|
border-radius: 6px 0px 6px 6px; |
||||||
|
color: #fff; |
||||||
|
margin-right: 36px; |
||||||
|
|
||||||
|
img { |
||||||
|
vertical-align: text-top; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
button { |
||||||
|
margin-right: 36px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.panelheaderright { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
.expand { |
||||||
|
margin-left: 36px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.panelcontent { |
||||||
|
nz-table { |
||||||
|
margin-top: 16px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.selectUnitPopover { |
||||||
|
width: 550px; |
||||||
|
height: 492px; |
||||||
|
|
||||||
|
nz-form-item { |
||||||
|
margin: 12px 0; |
||||||
|
} |
||||||
|
|
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
|
||||||
|
.popoverTitle { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
span { |
||||||
|
color: #C7CAD0; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
.selectedspan { |
||||||
|
color: #2C4DC0; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.popoverContent { |
||||||
|
flex: 1; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
overflow: hidden; |
||||||
|
.popoverContentitem{ |
||||||
|
flex: 1; |
||||||
|
overflow-y: auto; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.popoverBtn { |
||||||
|
display: flex; |
||||||
|
justify-content: flex-end; |
||||||
|
margin-top: 16px; |
||||||
|
button{ |
||||||
|
margin-left: 18px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
Before Width: | Height: | Size: 346 B |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 628 B |
Before Width: | Height: | Size: 359 B |
After Width: | Height: | Size: 384 B |
After Width: | Height: | Size: 355 B |
After Width: | Height: | Size: 482 B |
Before Width: | Height: | Size: 329 B |
Before Width: | Height: | Size: 484 B |
Before Width: | Height: | Size: 441 B |
After Width: | Height: | Size: 5.0 KiB |
Before Width: | Height: | Size: 438 B |
After Width: | Height: | Size: 340 B |
After Width: | Height: | Size: 279 B |
After Width: | Height: | Size: 391 B |
After Width: | Height: | Size: 446 B |
After Width: | Height: | Size: 235 B |
After Width: | Height: | Size: 345 B |
Before Width: | Height: | Size: 404 B |
After Width: | Height: | Size: 268 B |
After Width: | Height: | Size: 263 B |
After Width: | Height: | Size: 308 B |
After Width: | Height: | Size: 386 B |