dootask/resources/assets/sass/pages/page-approve.scss
2025-08-08 22:00:54 +08:00

520 lines
12 KiB
SCSS
Vendored

.page-approve {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
.approve-wrapper {
flex: 1;
height: 0;
display: flex;
flex-direction: column;
position: relative;
.approve-head {
display: flex;
align-items: center;
padding-bottom: 16px;
margin: 20px 60px 5px 20px;
border-bottom: 1px solid #F4F4F5;
gap: 16px;
.approve-nav {
flex: 1;
width: 0;
display: flex;
align-items: center;
> h1 {
color: $primary-title-color;
font-size: 28px;
font-weight: 600;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
}
.approve-main-search {
display: flex;
justify-content: space-between;
margin: 0 5px;
margin-bottom: 10px;
> div {
display: flex;
gap: 10px;
overflow: hidden;
.ivu-select {
width: 150px;
}
.ivu-dropdown {
margin-right: 8px;
}
.load{
font-size: 12px;
width: 20px;
height: 32px;
overflow: hidden;
}
}
.ivu-input-wrapper{
max-width: 200px;
}
@media (width <= 515px) {
.ivu-btn{
min-width: 45px;
}
}
}
.approve-load {
text-align: center;
padding-top: 20px;
}
.noData {
text-align: center;
line-height: 150px;
}
.page-approve-tabs{
margin: 0 20px;
height: 100%;
}
.approve-mains {
display: flex;
flex: 1 1 auto;
height: calc(100vh - 190px - var(--status-bar-height) - var(--navigation-bar-height));
position: relative;
.approve-main-left {
display: flex;
flex-direction: column;
flex: 0 0 auto;
position: absolute;
left: 0;
top: 0;
bottom: 12px;
max-width: 360px;
width: 100%;
@media (width <= 1010px) {
max-width: 100%;
}
.load{
text-align: center;
}
.approve-main-list {
display: flex;
flex-direction: column;
flex: 1 1 auto;
overflow: scroll;
.approve-list {
margin-bottom: 8px;
padding: 12px;
border-radius: 8px;
border: 1px solid #eeeeee;
transition: box-shadow 0.3s;
cursor: pointer;
&:hover {
box-shadow: 0 0 10px #e6ecfa;
}
> h2 {
display: flex;
align-items: center;
justify-content: space-between;
> .list-name {
font-size: 14px;
font-weight: bold;
}
}
> p {
font-size: 14px;
margin-top: 5px;
> span {
color: #303133;
}
}
.list-member {
display: flex;
align-items: center;
justify-content: space-between;
margin-top: 10px;
> span {
display: flex;
align-items: center;
font-size: 12px;
.ivu-avatar {
margin-right: 8px;
}
}
}
}
.approve-list-active {
border: 1px solid #8bcf70;
@media (width <= 1010px) {
border: 1px solid #eeeeee;
}
}
}
.approve-main-list::-webkit-scrollbar {
display: none;
}
}
.approve-main-right {
position: absolute;
left: 360px;
top: 0;
right: 0;
bottom: 0;
flex: 1 1 auto;
display: flex;
margin: 0 0 12px 12px;
@media (width <= 1010px) {
display: none;
}
}
}
}
}
.overlay-content {
.page-approve {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
.approve-wrapper {
.approve-head {
.approve-nav {
.common-nav-back {
display: none;
}
}
}
}
}
}
.approve-details {
flex: 1 1 auto;
display: flex;
flex-direction: column;
border: 1px solid #eeeeee;
height: 100%;
border-radius: 10px;
background: #fff;
.approve-details-box {
flex: 1 1 auto;
padding: 24px;
overflow-y: scroll;
.approve-details-title {
display: flex;
align-items: center;
.ivu-tag {
margin-left: 8px;
}
}
.approve-details-subtitle {
margin-top: 8px;
display: flex;
align-items: center;
.ivu-avatar {
margin-right: 8px;
}
> span {
font-size: 14px;
}
}
.timeline-title {
font-weight: bold;
padding-bottom: 10px;
}
.approve-details-text {
margin-bottom: 12px;
> h4 {
color: #999;
}
> p {
font-size: 14px;
margin-top: 2px;
font-weight: 500;
}
.img-body {
display: flex;
gap: 10px;
margin-top: 3px;
}
.time-text {
> span + span {
padding-left: 4px;
}
}
}
.approve-record-timeline {
margin-top: 20px;
.timeline-body {
display: flex;
}
.approve-process-state {
font-size: 12px;
color: #19be6b;
height: 21px;
}
.approve-process-avatar {
display: flex;
justify-content: flex-start;
align-items: flex-start;
}
.approve-process-left {
margin-left: 10px;
flex: 1;
width: 0;
.approve-process-desc{
font-size: 12px;
max-width: 100%;
overflow: auto;
word-break:break-all;
}
}
.approve-process-right {
text-align: right;
}
> li:last-child {
padding-bottom: 0;
}
.finish{
.ivu-timeline-item-content{
padding-bottom: 0;
}
}
}
.approve-record-comment {
padding: 10px;
padding-bottom: 0;
.ivu-list-item>div:first-child{
width: 100%;
}
.top {
display: flex;
gap: 8px;
width: 100%;
>div{
flex:1;
}
}
.time {
font-size: 12px;
color: #a2a2a2;
}
.content {
margin-top: 3px;
padding-left: 45px;
}
.ivu-list-items>li:last-child{
padding-bottom: 0;
}
}
.approve-details-text:nth-last-child(1) {
margin-bottom: 0;
}
.img-view {
display: flex;
max-width: 60px;
border-radius: 5px;
}
.approve-copy {
margin-top: 8px;
display: flex;
.approve-copy-member {
display: flex;
align-items: center;
background: #F4F4F5;
padding: 2px 8px;
border-radius: 20px;
.ivu-avatar {
margin-right: 4px;
}
}
}
}
.approve-details-box::-webkit-scrollbar {
display: none;
}
.approve-operation {
flex: 0 0 auto;
padding: 0 24px;
border-top: 1px solid #F4F4F5;
display: flex;
align-items: center;
justify-content: flex-end;
button {
margin: 10px 0;
margin-left: 10px;
}
}
.approve-load {
position: absolute;
top: 1px;
left: 1px;
right: 1px;
bottom: 1px;
display: flex;
z-index: 9;
background: #00000005;
}
.comment {
margin-top: 5px;
margin-left: 45px;
font-size: 12px;
span {
background-color: #eaeaea;
border-radius: 5px;
padding: 3px 10px;
display: inline-block;
}
}
}
.page-approve-setting{
.approve-row {
padding: 24px;
overflow: auto;
margin: 0 !important;
.ivu-col {
margin-bottom: 16px;
.approve-col-box {
border-radius: 8px;
border: 1px solid #eeeeee;
transition: box-shadow 0.3s;
cursor: pointer;
&:hover {
box-shadow: 0 0 10px #e6ecfa;
}
}
.approve-col-add {
height: 100%;
font-size: 48px;
display: flex;
justify-content: center;
align-items: center;
color: #ededed;
min-height: 95px;
}
.approve-col-for {
padding: 16px;
padding-bottom: 13px;
display: flex;
flex-direction: column;
.approve-name{
font-weight: 500;
color: #135de6;
}
.divider{
margin: 12px 0;
margin-bottom: 9px;
}
.icon-warp{
position: relative;
}
> p {
display: flex;
align-items: center;
}
.approve-button-box {
display: flex;
justify-content: space-between;
align-items: center;
> p {
display: flex;
align-items: center;
> i {
font-size: 16px;
margin-left: 8px;
color: rgb(96, 98, 102);
}
}
}
}
}
}
}
.ivu-modal {
.approve-details {
border-width: 0;
}
}