|
@@ -1,266 +1,110 @@
|
|
|
<template>
|
|
|
<div class="app-container">
|
|
|
- <el-form
|
|
|
- :model="queryParams"
|
|
|
- ref="queryForm"
|
|
|
- :inline="true"
|
|
|
- v-show="showSearch"
|
|
|
- label-width="76px"
|
|
|
- >
|
|
|
+ <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="76px">
|
|
|
<el-form-item label="客户" prop="fCorpid">
|
|
|
- <el-select
|
|
|
- v-model="queryParams.fCorpid"
|
|
|
- filterable
|
|
|
- remote
|
|
|
- style="width: 200px"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- :remote-method="corpsRemoteMethod"
|
|
|
- placeholder="请选择客户"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(dict, index) in fMblnoOptions"
|
|
|
- :key="index.fId"
|
|
|
- :label="dict.fName"
|
|
|
- :value="dict.fId"
|
|
|
- ></el-option>
|
|
|
+ <el-select v-model="queryParams.fCorpid" filterable remote style="width: 200px" clearable size="small"
|
|
|
+ @keyup.enter.native="handleQuery" :remote-method="corpsRemoteMethod" placeholder="请选择客户">
|
|
|
+ <el-option v-for="(dict, index) in fMblnoOptions" :key="index.fId" :label="dict.fName" :value="dict.fId">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="提单号" prop="fMblno">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.fMblno"
|
|
|
- placeholder="请输入提单号"
|
|
|
- clearable
|
|
|
- style="width: 200px"
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
+ <el-input v-model="queryParams.fMblno" placeholder="请输入提单号" clearable style="width: 200px" size="small"
|
|
|
+ @keyup.enter.native="handleQuery" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="箱号" prop="fCntrno">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.fCntrno"
|
|
|
- placeholder="请输入箱号"
|
|
|
- clearable
|
|
|
- style="width: 200px"
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
+ <el-input v-model="queryParams.fCntrno" placeholder="请输入箱号" clearable style="width: 200px" size="small"
|
|
|
+ @keyup.enter.native="handleQuery" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="入库日期" prop="createTime">
|
|
|
- <el-date-picker
|
|
|
- v-model="queryParams.orgStorageDate"
|
|
|
- type="daterange"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- style="width: 240px"
|
|
|
- range-separator="至"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- :picker-options="pickerOptions"
|
|
|
- unlink-panels
|
|
|
- >
|
|
|
+ <el-date-picker v-model="queryParams.orgStorageDate" type="daterange" value-format="yyyy-MM-dd" clearable
|
|
|
+ size="small" style="width: 240px" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
|
|
|
+ @keyup.enter.native="handleQuery" :picker-options="pickerOptions" unlink-panels>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="仓库" prop="fwarehouseid">
|
|
|
- <treeselect
|
|
|
- style="width: 200px"
|
|
|
- v-model="queryParams.fWarehouseLocationid"
|
|
|
- :options="fWarehouseidOption"
|
|
|
- @select="treeseLect"
|
|
|
- :show-count="true"
|
|
|
- size="small"
|
|
|
- placeholder="请选择归属库区"
|
|
|
- />
|
|
|
+ <treeselect style="width: 200px" v-model="queryParams.fWarehouseLocationid" :options="fWarehouseidOption"
|
|
|
+ @select="treeseLect" :show-count="true" size="small" placeholder="请选择归属库区" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="货物名称" prop="fgoodsid">
|
|
|
- <el-select
|
|
|
- v-model="queryParams.fGoodsid"
|
|
|
- filterable
|
|
|
- remote
|
|
|
- style="width: 200px"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- :remote-method="goodsRemoteMethod"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- placeholder="请选择货物名称"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(dict, index) in goodsOptions"
|
|
|
- :key="index.fId"
|
|
|
- :label="dict.fName"
|
|
|
- :value="dict.fId"
|
|
|
- ></el-option>
|
|
|
+ <el-select v-model="queryParams.fGoodsid" filterable remote style="width: 200px" clearable size="small"
|
|
|
+ :remote-method="goodsRemoteMethod" @keyup.enter.native="handleQuery" placeholder="请选择货物名称">
|
|
|
+ <el-option v-for="(dict, index) in goodsOptions" :key="index.fId" :label="dict.fName" :value="dict.fId">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="贸易方式" prop="fTrademodeid">
|
|
|
- <el-select
|
|
|
- v-model="queryParams.fTrademodeid"
|
|
|
- placeholder="请选择贸易方式"
|
|
|
- clearable
|
|
|
- style="width: 200px"
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(dict, index) in fTrademodeidOptions"
|
|
|
- :key="index.dictValue"
|
|
|
- :label="dict.dictLabel"
|
|
|
- :value="dict.dictValue"
|
|
|
- />
|
|
|
+ <el-select v-model="queryParams.fTrademodeid" placeholder="请选择贸易方式" clearable style="width: 200px" size="small"
|
|
|
+ @keyup.enter.native="handleQuery">
|
|
|
+ <el-option v-for="(dict, index) in fTrademodeidOptions" :key="index.dictValue" :label="dict.dictLabel"
|
|
|
+ :value="dict.dictValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="分组条件">
|
|
|
- <el-select
|
|
|
- v-model="queryParams.isCntrno"
|
|
|
- filterable
|
|
|
- remote
|
|
|
- style="width: 200px"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- placeholder="请选择分组条件"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(dict, index) in isCntrnoOptions"
|
|
|
- :key="index.id"
|
|
|
- :label="dict.name"
|
|
|
- :value="dict.id"
|
|
|
- ></el-option>
|
|
|
+ <el-select v-model="queryParams.isCntrno" filterable remote style="width: 200px" clearable size="small"
|
|
|
+ placeholder="请选择分组条件">
|
|
|
+ <el-option v-for="(dict, index) in isCntrnoOptions" :key="index.id" :label="dict.name" :value="dict.id">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="库存箱号" prop="fLocalcntrno">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.fLocalcntrno"
|
|
|
- placeholder="库存箱号"
|
|
|
- clearable
|
|
|
- style="width: 200px"
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
+ <el-input v-model="queryParams.fLocalcntrno" placeholder="库存箱号" clearable style="width: 200px" size="small"
|
|
|
+ @keyup.enter.native="handleQuery" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="属性详情" prop="fMarks">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.fMarks"
|
|
|
- placeholder="属性详情"
|
|
|
- clearable
|
|
|
- style="width: 200px"
|
|
|
- size="small"
|
|
|
- />
|
|
|
+ <el-input v-model="queryParams.fMarks" placeholder="属性详情" clearable style="width: 200px" size="small" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="显示0库存" prop="isMblno">
|
|
|
- <el-select
|
|
|
- v-model="queryParams.isMblno"
|
|
|
- filterable
|
|
|
- remote
|
|
|
- style="width: 200px"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- label="是"
|
|
|
- :value="1"
|
|
|
- ></el-option>
|
|
|
- <el-option
|
|
|
- label="否"
|
|
|
- :value="0"
|
|
|
- ></el-option>
|
|
|
+ <el-select v-model="queryParams.isMblno" filterable remote style="width: 200px" clearable size="small">
|
|
|
+ <el-option label="是" :value="1"></el-option>
|
|
|
+ <el-option label="否" :value="0"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
-<!-- <el-form-item>-->
|
|
|
-<!-- -->
|
|
|
-<!-- </el-form-item>-->
|
|
|
+ <el-form-item label="核注清单" prop="checklists">
|
|
|
+ <el-input v-model="queryParams.checklists" placeholder="核注清单" clearable @keyup.enter.native="handleQuery"
|
|
|
+ style="width: 200px" />
|
|
|
+ </el-form-item>
|
|
|
+ <!-- <el-form-item>-->
|
|
|
+ <!-- -->
|
|
|
+ <!-- </el-form-item>-->
|
|
|
</el-form>
|
|
|
|
|
|
<el-row :gutter="10" class="mb8">
|
|
|
<div class="tabSetting">
|
|
|
<el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- icon="el-icon-download"
|
|
|
- size="mini"
|
|
|
- @click="warehouseSupervise"
|
|
|
- >分类监管仓库导出</el-button>
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- icon="el-icon-download"
|
|
|
- size="mini"
|
|
|
- @click="superviseExport"
|
|
|
- v-hasPermi="['warehouseBusiness:whgenleg:superviseExport']"
|
|
|
- >分类监管导出</el-button>
|
|
|
- <el-button
|
|
|
- type="warning"
|
|
|
- icon="el-icon-download"
|
|
|
- size="mini"
|
|
|
- @click="handleExport"
|
|
|
- v-hasPermi="['warehouseBusiness:whgenleg:export']"
|
|
|
- >导出</el-button
|
|
|
- >
|
|
|
- <el-button
|
|
|
- type="cyan"
|
|
|
- icon="el-icon-search"
|
|
|
- size="mini"
|
|
|
- @click="handleQuery"
|
|
|
- >搜索</el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-download" size="mini" @click="warehouseSupervise">分类监管仓库导出</el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-download" size="mini" @click="superviseExport"
|
|
|
+ v-hasPermi="['warehouseBusiness:whgenleg:superviseExport']">分类监管导出</el-button>
|
|
|
+ <el-button type="warning" icon="el-icon-download" size="mini" @click="handleExport"
|
|
|
+ v-hasPermi="['warehouseBusiness:whgenleg:export']">导出</el-button>
|
|
|
+ <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
|
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
|
|
</el-col>
|
|
|
- <right-toolbar
|
|
|
- :showSearch.sync="showSearch"
|
|
|
- @queryTable="getList"
|
|
|
- ></right-toolbar>
|
|
|
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
|
<div style="margin: 0 12px">
|
|
|
- <el-button
|
|
|
- icon="el-icon-setting"
|
|
|
- size="mini"
|
|
|
- circle
|
|
|
- @click="showSetting = !showSetting"
|
|
|
- ></el-button>
|
|
|
+ <el-button icon="el-icon-setting" size="mini" circle @click="showSetting = !showSetting"></el-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-row>
|
|
|
<el-dialog title="自定义列显示" :visible.sync="showSetting" width="700px">
|
|
|
<div>配置排序列数据(拖动调整顺序)</div>
|
|
|
<div style="margin-left: 17px">
|
|
|
- <el-checkbox
|
|
|
- v-model="allCheck"
|
|
|
- label="全选"
|
|
|
- @change="allChecked"
|
|
|
- ></el-checkbox>
|
|
|
+ <el-checkbox v-model="allCheck" label="全选" @change="allChecked"></el-checkbox>
|
|
|
</div>
|
|
|
<div style="padding: 4px; display: flex; justify-content: center">
|
|
|
- <draggable
|
|
|
- v-model="setRowList"
|
|
|
- group="site"
|
|
|
- animation="300"
|
|
|
- @start="onStart"
|
|
|
- @end="onEnd"
|
|
|
- handle=".indraggable"
|
|
|
- >
|
|
|
+ <draggable v-model="setRowList" group="site" animation="300" @start="onStart" @end="onEnd"
|
|
|
+ handle=".indraggable">
|
|
|
<transition-group>
|
|
|
- <div
|
|
|
- v-for="item in setRowList"
|
|
|
- :key="item.surface"
|
|
|
- class="listStyle"
|
|
|
- >
|
|
|
+ <div v-for="item in setRowList" :key="item.surface" class="listStyle">
|
|
|
<div style="width: 500px" class="indraggable">
|
|
|
<div class="progress" :style="{ width: item.width + 'px' }">
|
|
|
- <el-checkbox
|
|
|
- :label="item.name"
|
|
|
- v-model="item.checked"
|
|
|
- :true-label="0"
|
|
|
- :false-label="1"
|
|
|
- >{{ item.name }}
|
|
|
+ <el-checkbox :label="item.name" v-model="item.checked" :true-label="0" :false-label="1">{{ item.name
|
|
|
+ }}
|
|
|
</el-checkbox>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <el-input-number
|
|
|
- v-model.number="item.width"
|
|
|
- controls-position="right"
|
|
|
- :min="1"
|
|
|
- :max="500"
|
|
|
- size="mini"
|
|
|
- ></el-input-number>
|
|
|
+ <el-input-number v-model.number="item.width" controls-position="right" :min="1" :max="500" size="mini">
|
|
|
+ </el-input-number>
|
|
|
</div>
|
|
|
</transition-group>
|
|
|
</draggable>
|
|
@@ -271,81 +115,42 @@
|
|
|
<el-button type="primary" @click="save()">确 定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
- <el-table
|
|
|
- v-loading="loading"
|
|
|
- :data="whgenlegList"
|
|
|
- show-summary
|
|
|
- :summary-method="getSum"
|
|
|
- ref="table"
|
|
|
- :height="tableHeight"
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- type="index"
|
|
|
- label="行号"
|
|
|
- align="center"
|
|
|
- width="100"
|
|
|
- fixed
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- v-for="(item, index) in getRowList"
|
|
|
- :key="index"
|
|
|
- :label="item.name"
|
|
|
- :width="item.width"
|
|
|
- :prop="item.label"
|
|
|
- align="center"
|
|
|
- :show-overflow-tooltip="true"
|
|
|
- sortable
|
|
|
- :fixed="item.fixed"
|
|
|
- >
|
|
|
+ <el-table v-loading="loading" :data="whgenlegList" show-summary :summary-method="getSum" ref="table"
|
|
|
+ :height="tableHeight">
|
|
|
+ <el-table-column type="index" label="行号" align="center" width="100" fixed />
|
|
|
+ <el-table-column v-for="(item, index) in getRowList" :key="index" :label="item.name" :width="item.width"
|
|
|
+ :prop="item.label" align="center" :show-overflow-tooltip="true" sortable :fixed="item.fixed">
|
|
|
<template slot-scope="scope">
|
|
|
<span v-if="item.label == 'fMblno'">
|
|
|
<span v-if="queryParams.isCntrno == 2">{{ scope.row.fMblno }}</span>
|
|
|
- <el-link v-else :underline="false" type="primary"
|
|
|
- ><div @click="goDetail(scope.row)">
|
|
|
+ <el-link v-else :underline="false" type="primary">
|
|
|
+ <div @click="goDetail(scope.row)">
|
|
|
{{ scope.row.fMblno }}
|
|
|
- </div></el-link
|
|
|
- >
|
|
|
+ </div>
|
|
|
+ </el-link>
|
|
|
</span>
|
|
|
<span v-else>{{ scope.row[item.label] }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
|
|
|
- <pagination
|
|
|
- v-show="total > 0"
|
|
|
- :total="total"
|
|
|
- :page.sync="queryParams.pageNum"
|
|
|
- :limit.sync="queryParams.pageSize"
|
|
|
- :page-sizes="[50, 100, 200, 500, 1000]"
|
|
|
- @pagination="getList"
|
|
|
- />
|
|
|
+ <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
|
|
+ :page-sizes="[50, 100, 200, 500, 1000]" @pagination="getList" />
|
|
|
|
|
|
<!-- 添加或修改库存总账对话框 -->
|
|
|
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
|
<el-form-item label="原始入库业务编号" prop="fOriginalbillno">
|
|
|
- <el-input
|
|
|
- v-model="form.fOriginalbillno"
|
|
|
- placeholder="请输入原始入库业务编号"
|
|
|
- />
|
|
|
+ <el-input v-model="form.fOriginalbillno" placeholder="请输入原始入库业务编号" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="上期件数" prop="fPreqty">
|
|
|
<el-input v-model="form.fPreqty" placeholder="请输入上期件数" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="上期毛重,单位为吨,保留6位小数"
|
|
|
- prop="fPregrossweight"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="form.fPregrossweight"
|
|
|
- placeholder="请输入上期毛重,单位为吨,保留6位小数"
|
|
|
- />
|
|
|
+ <el-form-item label="上期毛重,单位为吨,保留6位小数" prop="fPregrossweight">
|
|
|
+ <el-input v-model="form.fPregrossweight" placeholder="请输入上期毛重,单位为吨,保留6位小数" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="上期净重," prop="fPrenetweight">
|
|
|
- <el-input
|
|
|
- v-model="form.fPrenetweight"
|
|
|
- placeholder="请输入上期净重,"
|
|
|
- />
|
|
|
+ <el-input v-model="form.fPrenetweight" placeholder="请输入上期净重," />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="入库件数" prop="fQtyd">
|
|
|
<el-input v-model="form.fQtyd" placeholder="请输入入库件数" />
|
|
@@ -369,19 +174,13 @@
|
|
|
<el-input v-model="form.fQtyblc" placeholder="请输入结余件数" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="出库毛重,单位为吨" prop="fGrossweightc">
|
|
|
- <el-input
|
|
|
- v-model="form.fGrossweightc"
|
|
|
- placeholder="请输入出库毛重,单位为吨"
|
|
|
- />
|
|
|
+ <el-input v-model="form.fGrossweightc" placeholder="请输入出库毛重,单位为吨" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="出库净重" prop="fNetweightc">
|
|
|
<el-input v-model="form.fNetweightc" placeholder="请输入出库净重" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="结余毛重" prop="fGrossweightblc">
|
|
|
- <el-input
|
|
|
- v-model="form.fGrossweightblc"
|
|
|
- placeholder="请输入结余毛重"
|
|
|
- />
|
|
|
+ <el-input v-model="form.fGrossweightblc" placeholder="请输入结余毛重" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="结余净重" prop="fNetweightblc">
|
|
|
<el-input v-model="form.fNetweightblc" placeholder="请输入结余净重" />
|
|
@@ -401,11 +200,7 @@
|
|
|
<el-input v-model="form.fMarks" placeholder="请输入唛头" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="备注" prop="remark">
|
|
|
- <el-input
|
|
|
- v-model="form.remark"
|
|
|
- type="textarea"
|
|
|
- placeholder="请输入内容"
|
|
|
- />
|
|
|
+ <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
@@ -1002,7 +797,7 @@ export default {
|
|
|
this.loading = true;
|
|
|
mapListWhgenleg(this.queryParams).then((response) => {
|
|
|
response.rows.map((e) => {
|
|
|
- e.fCntrno=this.queryParams.isCntrno == 1 ? null:e.fCntrno
|
|
|
+ e.fCntrno = this.queryParams.isCntrno == 1 ? null : e.fCntrno
|
|
|
})
|
|
|
this.whgenlegList = response.rows;
|
|
|
this.total = response.total;
|
|
@@ -1125,7 +920,7 @@ export default {
|
|
|
confirmButtonText: "确定",
|
|
|
cancelButtonText: "取消",
|
|
|
type: "warning",
|
|
|
- }).then(function() {
|
|
|
+ }).then(function () {
|
|
|
return superviseExportWhgenleg(queryParams);
|
|
|
}).then((response) => {
|
|
|
this.download(response.msg);
|
|
@@ -1137,7 +932,7 @@ export default {
|
|
|
confirmButtonText: "确定",
|
|
|
cancelButtonText: "取消",
|
|
|
type: "warning",
|
|
|
- }).then(function() {
|
|
|
+ }).then(function () {
|
|
|
return warehouseSupervise();
|
|
|
}).then((response) => {
|
|
|
this.download(response.msg);
|
|
@@ -1182,19 +977,23 @@ export default {
|
|
|
z-index: 2;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.tabSetting {
|
|
|
display: flex;
|
|
|
justify-content: flex-end;
|
|
|
}
|
|
|
+
|
|
|
.listStyle {
|
|
|
display: flex;
|
|
|
border-top: 1px solid #dcdfe6;
|
|
|
border-left: 1px solid #dcdfe6;
|
|
|
border-right: 1px solid #dcdfe6;
|
|
|
}
|
|
|
+
|
|
|
.listStyle:last-child {
|
|
|
border-bottom: 1px solid #dcdfe6;
|
|
|
}
|
|
|
+
|
|
|
.progress {
|
|
|
display: flex;
|
|
|
align-items: center;
|