feat(finance): 实现发票管理页面与子页面

This commit is contained in:
2026-03-04 15:58:08 +08:00
parent e0bef7259a
commit 0c7adc149b
28 changed files with 3323 additions and 158 deletions

View File

@@ -0,0 +1,166 @@
/**
* 文件职责:发票管理页面布局样式。
*/
.fi-seg-wrap {
margin-bottom: 2px;
}
.fi-stats {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
}
.fi-stat-card {
padding: 18px 20px;
background: #fff;
border: 1px solid #f0f0f0;
border-radius: 10px;
box-shadow: 0 2px 8px rgb(15 23 42 / 6%);
transition: all 0.2s ease;
&:hover {
box-shadow: 0 6px 14px rgb(15 23 42 / 10%);
transform: translateY(-1px);
}
&.warn .fi-stat-val {
color: #fa8c16;
}
&.danger .fi-stat-val {
color: #ff4d4f;
}
}
.fi-stat-label {
display: flex;
gap: 6px;
align-items: center;
margin-bottom: 8px;
font-size: 13px;
color: rgb(0 0 0 / 45%);
}
.fi-stat-icon {
width: 16px;
height: 16px;
}
.fi-stat-val {
font-size: 24px;
font-weight: 700;
line-height: 1.2;
color: rgb(0 0 0 / 88%);
}
.fi-stat-sub {
margin-top: 4px;
font-size: 12px;
color: rgb(0 0 0 / 45%);
}
.fi-toolbar {
display: flex;
flex-wrap: wrap;
gap: 10px;
align-items: center;
padding: 14px 16px;
background: #fff;
border: 1px solid #f0f0f0;
border-radius: 10px;
box-shadow: 0 2px 8px rgb(15 23 42 / 6%);
.fi-date-input {
width: 146px;
}
.fi-status-select,
.fi-type-select {
width: 124px;
}
.fi-date-sep {
font-size: 13px;
line-height: 32px;
color: rgb(0 0 0 / 45%);
}
.fi-toolbar-spacer {
flex: 1;
}
.fi-search {
width: 220px;
}
.fi-search-icon {
width: 14px;
height: 14px;
color: rgb(0 0 0 / 45%);
}
.ant-select-selector,
.ant-input,
.ant-input-affix-wrapper {
height: 32px;
font-size: 13px;
}
.ant-input-affix-wrapper .ant-input {
height: 100%;
}
}
.fi-settings {
display: flex;
flex-direction: column;
gap: 12px;
}
.fi-section-hd {
padding-left: 10px;
margin-bottom: 16px;
font-size: 15px;
font-weight: 600;
color: rgb(0 0 0 / 88%);
border-left: 3px solid #1677ff;
}
.fi-form-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px 24px;
}
.fi-toggle-row {
display: flex;
gap: 10px;
align-items: center;
margin-bottom: 14px;
}
.fi-toggle-label {
font-size: 13px;
font-weight: 500;
color: rgb(0 0 0 / 88%);
}
.fi-toggle-hint {
font-size: 12px;
color: rgb(0 0 0 / 45%);
}
.fi-auto-form {
max-width: 340px;
}
.fi-max-amount-input {
width: 100%;
}
.fi-save-bar {
display: flex;
gap: 8px;
justify-content: flex-end;
}