14 changed files with 595 additions and 39 deletions
@ -1 +1,66 @@
|
||||
<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 class="instrumentpanel"> |
||||
<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="instrumentpanelopen"> |
||||
<div class="instrumentpanelopenitem" *ngFor="let item of cardData"> |
||||
<div class="itemone" *ngIf="!item.isDetails"> |
||||
<div class="instrumentpanelopenitemleft"> |
||||
<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 nz-button class="btn">快速派发</button> |
||||
</div> |
||||
<div class="instrumentpanelopenitemright"> |
||||
<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>济南历下森豪室内娱乐场</span> |
||||
<span> |
||||
<span class="blue">派发</span> |
||||
</span> |
||||
</p> |
||||
<p>A消防救援站</p> |
||||
</div> |
||||
|
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
@ -0,0 +1,186 @@
|
||||
.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; |
||||
} |
||||
} |
||||
|
||||
.instrumentpanel { |
||||
box-sizing: border-box; |
||||
padding: 15px 20px; |
||||
color: #303133; |
||||
|
||||
.instrumentpanelheader { |
||||
display: flex; |
||||
justify-content: space-between; |
||||
align-items: center; |
||||
margin-bottom: 15px; |
||||
} |
||||
|
||||
.instrumentpanelopen { |
||||
display: flex; |
||||
flex-wrap: wrap; |
||||
justify-content: space-between; |
||||
} |
||||
|
||||
.instrumentpanelopenitem { |
||||
width: 24.3%; |
||||
height: 260px; |
||||
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; |
||||
margin-bottom: 18px; |
||||
|
||||
.itemone { |
||||
width: 100%; |
||||
height: 100%; |
||||
display: flex; |
||||
|
||||
.instrumentpanelopenitemleft { |
||||
display: flex; |
||||
flex-direction: column; |
||||
justify-content: space-around; |
||||
align-items: flex-start; |
||||
flex: 1; |
||||
box-sizing: border-box; |
||||
padding: 26px 0 26px 10%; |
||||
|
||||
.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; |
||||
} |
||||
} |
||||
|
||||
.instrumentpanelopenitemright { |
||||
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; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
} |
||||
|
||||
} |
@ -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); |
||||
} |
||||
} |
||||
} |
After Width: | Height: | Size: 628 B |
After Width: | Height: | Size: 482 B |
After Width: | Height: | Size: 345 B |
After Width: | Height: | Size: 386 B |
Loading…
Reference in new issue