Browse Source

[新增]月度任务总览

非煤矿山灾害智能感知和预警系统
邵佳豪 3 years ago
parent
commit
9c4d69fb71
  1. 399
      src/app/home/task/da-monthly-task-overview/da-monthly-task-overview.component.html
  2. 557
      src/app/home/task/da-monthly-task-overview/da-monthly-task-overview.component.scss
  3. 74
      src/app/home/task/da-monthly-task-overview/da-monthly-task-overview.component.ts
  4. 1
      src/app/home/task/da-oneself-plan/da-oneself-plan.component.scss
  5. BIN
      src/assets/images/icon/task.png
  6. BIN
      src/assets/images/icon/task0.png

399
src/app/home/task/da-monthly-task-overview/da-monthly-task-overview.component.html

@ -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>

557
src/app/home/task/da-monthly-task-overview/da-monthly-task-overview.component.scss

@ -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;
}

74
src/app/home/task/da-monthly-task-overview/da-monthly-task-overview.component.ts

@ -11,5 +11,79 @@ export class DaMonthlyTaskOverviewComponent implements OnInit {
ngOnInit(): void {
}
months = [
{ name: '1月', isable: true },
{ name: '2月', isable: true },
{ name: '3月', isable: true },
{ name: '4月', isable: true },
{ name: '5月', isable: true },
{ name: '6月', isable: true },
{ name: '7月', isable: true },
{ name: '8月', isable: true },
{ name: '9月', isable: true },
{ name: '10月', isable: true },
{ name: '11月', isable: true },
{ name: '12月', isable: true }
]
selectedMonth
selectMonth(item) {
this.selectedMonth = item.name
}
istaskauditExpanded = true
istaskauditexpand() {
this.istaskauditExpanded = !this.istaskauditExpanded
}
isdeployboxExpanded = true
isdeployboxexpand() {
this.isdeployboxExpanded = !this.isdeployboxExpanded
}
shuxiTaskData = {
isExpand: true
}
zhidaoTaskData = {
isExpand: true
}
expand(data) {
data.isExpand = !data.isExpand
}
formatOne = (percent: number): string => `${percent}%\n完成率`;
cardData = [
{ name: '重大活动', isDetails: false, background: '#FF9203', icon: 'huodong.png' },
{ name: '双随机', isDetails: false, background: '#1D9DFF', icon: 'suiji.png' },
{ name: '行政许可', isDetails: false, background: '#42B983', icon: 'xuke.png' },
{ name: '熟悉演练', isDetails: false, background: '#9D80FF', icon: 'yanlian.png' },
{ name: '联络指导', isDetails: false, background: '#5483EA', icon: 'zhidao.png' },
{ name: '消防宣传', isDetails: false, background: '#FF5D2A', icon: 'xuanchuan.png' },
{ name: '投诉举报', isDetails: false, background: '#5087FF', icon: 'tousu.png' },
{ name: '火灾调查', isDetails: false, background: '#FF404D', icon: 'huozai.png' }
]
openDetails(data, type) {
data.isDetails = type
}
xxx = false
radioChange(e) {
setTimeout(() => {
this.xxx = !this.xxx
}, 0);
}
stationData = [
{ name: '历下区A消防救援站', isExpand: true },
{ name: '历下区B消防救援站', isExpand: false },
{ name: '历下区C消防救援站', isExpand: false }
]
expandcarditem(item) {
item.isExpand = !item.isExpand
}
}

1
src/app/home/task/da-oneself-plan/da-oneself-plan.component.scss

@ -364,6 +364,7 @@
.btnbox {
display: flex;
justify-content: flex-end;
align-self: flex-start;
}
}

BIN
src/assets/images/icon/task.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 391 B

BIN
src/assets/images/icon/task0.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Loading…
Cancel
Save