This commit is contained in:
2025-10-17 10:31:13 +08:00
commit e6e86f2ce0
1043 changed files with 1031839 additions and 0 deletions

375
src/styles/avueForm.scss Normal file
View File

@@ -0,0 +1,375 @@
.el-form-item .el-form-item {
margin-bottom: 18px;
}
.el-input-number .el-input__inner {
text-align: left !important;
}
.avue-dialog .avue-dialog__footer {
z-index: 99;
}
.avue-group .el-collapse-item__header {
border-bottom: 1px solid #eee !important;
}
.avue-form {
& > .el-row > .icon-select-box {
padding-top: 0.75px;
padding-bottom: 0.75px;
}
.el-form-item.is-error {
.user-input,
.dept-input,
.table-input {
border-color: var(--el-color-danger);
}
}
}
.avue-form.avue--detail {
.avue-select {
.el-select-tags-wrapper {
margin-left: 0 !important;
}
.el-select__wrapper {
box-shadow: none;
}
}
.el-select-v2 {
.el-select-v2__wrapper.is-disabled {
background-color: #fff;
border-color: #fff;
.el-select-v2__suffix {
display: none;
}
.el-select-v2__placeholder.is-transparent {
display: none;
}
}
}
.icon-select-box {
.el-input__wrapper {
padding-top: 1px;
padding-bottom: 1px;
}
.el-input-group__append {
box-shadow: none;
}
}
.avue-input {
.el-input__wrapper {
box-shadow: none;
}
}
.avue-ueditor {
border: none;
.avue-ueditor__toolbar {
position: absolute;
right: 0;
top: 0;
width: 40px;
z-index: 2;
}
.w-e-text-container .w-e-scroll > div {
padding: 0;
}
.w-e-toolbar > div {
position: initial;
padding: 0;
& > button {
display: none;
}
&.w-e-bar-divider {
display: none;
}
}
.w-e-bar-item > button[data-menu-key='fullScreen'] {
height: 30px;
line-height: 30px;
display: flex;
}
}
.avue-input,
.avue-input-number,
.avue-select,
.avue-cascader,
.avue-input-tree,
.avue-time,
.avue-date,
.avue-input-map,
.avue-array__input {
.el-input__wrapper,
.el-select__wrapper {
padding-left: 0;
padding-right: 0;
}
}
}
.avue-ueditor.w-e-full-screen-container {
z-index: 100;
}
.el-select-dropdown {
.avue-select__desc {
margin-left: 20px;
}
}
.avue-upload.avue-upload--picture-card {
text-align: left;
}
//处理详情模式高度超出1.5px
.avue-form.avue--detail {
.control-password,
.control-array,
.control-select,
.control-tree,
.control-cascader,
.control-switch,
.control-regionSelect,
.control-dicTableSelect,
.control-map,
.control-color,
.control-date,
.control-daterange,
.control-dateTime,
.control-datetimerange,
.control-time,
.control-timerange,
.control-week,
.control-month,
.control-monthrange,
.control-year,
.control-dates,
.control-monacoEditor {
.el-form-item__content > div > div > div {
display: flex;
flex-direction: column;
}
}
.control-radio .avue-radio {
display: flex;
}
.control-rate {
.el-form-item__content > div > div > div {
display: flex;
}
}
.control-number {
.el-form-item__content > div > div {
display: flex;
}
}
.control-slider {
.el-form-item__content {
padding-left: 30px;
}
}
.control-customControl {
.el-form-item__content > div > div > div {
display: inline;
}
}
.control-file {
.el-form-item__content .avue-upload {
.el-upload-list__item-info {
margin-left: 0;
}
.el-upload-list__item-name {
padding-left: 0;
}
}
}
}
.el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {
color: var(--el-color-primary);
}
//优化分组样式
.avue-form {
.avue-group {
.avue-group__title {
padding-left: 10px;
}
&.avue-group--header {
.el-collapse {
border: none;
.el-collapse-item__wrap {
border: none;
}
}
}
&:not(.avue-group--header) {
.el-collapse {
border: none !important;
}
.el-collapse-item__wrap {
border: none !important;
}
.el-collapse-item__header {
margin-bottom: 1px !important;
transition: margin 0.3s ease-in-out;
&.is-active {
margin-bottom: 20px !important;
}
}
&:nth-last-child(1) {
.el-collapse-item__header {
margin-bottom: 20px !important;
}
}
}
}
&.avue--detail {
.avue-group {
&:not(.avue-group--header) {
.el-collapse-item__header {
margin-bottom: 0 !important;
&:not(.is-active) {
margin-bottom: 1px !important;
}
}
}
}
}
}
//处理暗色模式表单颜色
.dark {
--w-e-toolbar-bg-color: var(--el-bg-color);
--w-e-toolbar-color: var(--el-text-color-regular);
--w-e-toolbar-border-color: var(--el-border-color-dark);
--w-e-toolbar-active-bg-color: var(--el-fill-color-light);
--w-e-toolbar-active-color: var(--el-text-color-regular);
--w-e-textarea-bg-color: var(--el-bg-color);
--w-e-textarea-color: var(--el-border-color-regular);
--w-e-textarea-border-color: var(--el-border-color-dark);
.avue-ueditor {
border-color: var(--el-border-color-dark) !important;
.button-container {
button {
background-color: var(--el-fill-color-light);
border-color: var(--el-border-color-dark);
color: var(--el-border-color-regular);
}
}
}
.v-md-editor {
background-color: var(--el-bg-color);
.v-md-editor__toolbar {
background-color: var(--el-bg-color);
border-color: var(--el-border-color-dark);
}
.v-md-editor__main {
background-color: var(--el-bg-color);
}
.v-md-editor__editor-wrapper {
border-color: var(--el-border-color-dark);
.CodeMirror {
background-color: var(--el-bg-color);
}
.CodeMirror-gutters {
background-color: var(--el-bg-color);
border-color: var(--el-border-color-dark);
}
.CodeMirror-line {
background-color: var(--el-fill-color-light);
color: var(--el-text-color-regular);
}
}
.v-md-editor__toolbar-item {
color: var(--el-text-color-regular);
background-color: var(--el-bg-color);
&:hover {
background-color: var(--el-fill-color-light);
}
}
.v-md-editor__toolbar-divider::before {
border-color: var(--el-border-color-dark);
}
.v-md-editor__menu {
background-color: var(--el-bg-color);
border: 1px solid var(--el-border-color-dark);
.v-md-editor__menu-item {
color: var(--el-border-color-regular);
&:hover {
background-color: var(--el-fill-color-light);
}
}
}
.github-markdown-body img {
background-color: var(--el-bg-color);
}
.github-markdown-body div[class*='v-md-pre-wrapper-'] {
background-color: var(--el-fill-color-light);
}
.codemirror-wrapper.codemirror-reset .cm-comment,
.codemirror-wrapper.codemirror-reset .cm-link,
.codemirror-wrapper.codemirror-reset .cm-quote,
.codemirror-wrapper.codemirror-reset .cm-variable-2:not(.cm-url) {
color: var(--el-text-color-regular);
}
}
.avue-form {
.el-collapse {
border-color: var(--el-border-color);
}
.el-collapse-item__wrap {
border-color: var(--el-border-color);
}
.el-collapse-item__header {
border-color: var(--el-border-color) !important;
.avue-group__title {
color: var(--el-text-color-regular);
}
}
}
.avue-form.avue--detail {
.el-row {
border-color: var(--el-border-color);
.el-col {
border-color: var(--el-border-color);
}
.el-form-item__content {
border-color: var(--el-border-color);
}
}
.el-form-item__content {
background-color: var(--el-bg-color);
.el-input__wrapper {
background-color: var(--el-bg-color);
.el-input__inner {
background-color: var(--el-bg-color);
}
}
.el-textarea__inner {
background-color: var(--el-bg-color);
}
}
.el-form-item,
.el-form-item__label {
background-color: var(--el-fill-color-light);
}
.control-layoutTabs {
}
}
}

172
src/styles/avueTable.scss Normal file
View File

@@ -0,0 +1,172 @@
// 优化一些默认的表格样式 通用
.avue-crud__search {
.avue-form__menu--left {
padding-left: 20px !important;
box-sizing: border-box;
}
.el-form-item > .el-form-item__content > div > div > div:not(.avue-input-tag) {
display: flex;
flex-direction: column;
}
}
.low-select-radio {
padding: 0 5px;
.el-radio__label {
display: none;
}
}
//优化暗色模式下表格样式
.dark {
.avue-crud {
.avue-crud__header {
background-color: transparent;
}
.el-table__header-wrapper {
.el-table__cell {
background-color: var(--el-table-header-bg-color);
color: var(--el-table-header-text-color);
}
}
.avue-crud__tip {
background-color: var(--el-fill-color-lighter);
border-color: var(--el-border-color);
box-sizing: border-box;
}
.avue-crud__pagination {
background-color: transparent;
}
}
.avue-dialog {
.el-dialog__title,
.el-drawer__title {
color: var(--el-text-color-primary);
}
.el-dialog__header,
.el-drawer__header {
border-color: var(--el-border-color-dark);
.el-dialog__close,
.el-drawer__close {
color: var(--el-text-color-regular);
}
}
.avue-dialog__footer,
.avue-drawer__footer {
background-color: var(--el-bg-color);
border-color: var(--el-border-color-dark);
}
}
}
//修改默认的卡片模式样式
.avue-crud__grid {
.title .avue-crud__grid__value {
font-size: 14px;
font-weight: 500;
line-height: 24px;
}
.title .avue-crud__grid__label {
display: initial;
}
.avue-crud__grid__label {
font-size: 14px;
}
.avue-crud__grid__value {
font-size: 14px;
}
.avue-crud__grid__content {
padding: 16px 16px 0 16px;
background: var(--el-card-bg-color) !important;
border: 1px solid var(--el-card-border-color);
border-radius: 4px;
.avue-crud__grid__item {
line-height: 24px;
&.title {
width: 50%;
margin-bottom: 3px;
&.row {
width: 100%;
}
}
&.menu {
// border-top: 1px solid var(--el-card-border-color);
margin: 16px 0 0 0;
padding: 4px 0px;
}
}
&::before {
content: '';
position: absolute;
left: 0;
bottom: 40px;
width: 100%;
height: 1px;
background: var(--el-card-border-color);
}
}
.menu .el-button {
font-size: 14px;
}
}
.low-table-grid {
@for $i from 1 through 12 {
&__#{$i} {
.el-checkbox-group > .el-row > .el-col {
&:nth-child(#{$i}n) {
padding-right: 0;
}
&:nth-child(-n + #{$i}) {
padding-top: 0;
}
}
}
}
&.no-menu {
.avue-crud__grid__content {
padding-bottom: 10px;
&::before {
display: none;
}
}
}
//表格 单选
.lowSelectRadio {
width: inherit;
position: absolute;
right: -5px;
top: -4px;
.avue-crud__grid__label {
display: none;
}
}
}
//处理弹窗表单部分样式
.low-table__dialog {
.avue-form.avue--detail {
.el-form-item__content {
div[labelclassname='low-header__text_input'],
div[labelclassname='low-header__text_password'] {
display: flex;
flex-direction: column;
}
}
}
}
.avue-crud__left {
flex: 1;
min-width: 0;
display: flex;
flex-wrap: nowrap;
overflow-x: auto;
}
.avue-crud__right {
padding-left: 20px;
flex: 0 0 auto;
width: auto !important;
}

View File

@@ -0,0 +1,6 @@
@import './variables.scss';
// 导出变量
:export {
namespace: $namespace;
elNamespace: $elNamespace;
}

295
src/styles/index.scss Normal file
View File

@@ -0,0 +1,295 @@
@import './var.css';
@import 'element-plus/theme-chalk/dark/css-vars.css';
@import './mixin.scss';
.reset-margin [class*='el-icon'] + span {
margin-left: 2px !important;
}
.in-app {
.el-loading-mask > .el-loading-spinner {
@media screen and (orientation: portrait) {
transform: rotate(90deg);
}
}
#app {
@media screen and (orientation: portrait) {
position: absolute;
width: 100vh !important;
height: 100vw !important;
top: 0;
left: 100vw;
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
transform-origin: 0% 0%;
}
@media screen and (orientation: landscape) {
position: absolute;
top: 0;
left: 0;
width: 100vw !important;
height: 100vh !important;
}
}
.el-message {
@media screen and (orientation: portrait) {
top: 50% !important;
width: max-content;
transform: translateY(-50%) rotate(90deg) translateY(50%);
}
}
.el-notification {
@media screen and (orientation: portrait) {
top: 50% !important;
left: 40vw !important;
transform: translateY(-50%) rotate(90deg);
}
}
// 解决抽屉弹出时body宽度变化的问题
.el-popup-parent--hidden {
width: 100% !important;
#app,
& > .el-overlay {
@media screen and (orientation: portrait) {
position: absolute;
width: 100vh !important;
height: 100vw !important;
top: 0;
left: 100vw;
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
transform-origin: 0% 0%;
}
@media screen and (orientation: landscape) {
position: absolute;
top: 0;
left: 0;
width: 100vw !important;
height: 100vh !important;
}
}
}
.el-popper {
@media screen and (orientation: portrait) {
.el-dropdown-menu {
transform: rotate(90deg) translateY(-100%);
transform-origin: top left;
}
}
}
}
// 解决表格内容超过表格总宽度后,横向滚动条前端顶不到表格边缘的问题
.el-scrollbar__bar {
display: flex;
justify-content: flex-start;
}
/* nprogress 适配 element-plus 的主题色 */
#nprogress {
& .bar {
background-color: var(--el-color-primary) !important;
}
& .peg {
box-shadow:
0 0 10px var(--el-color-primary),
0 0 5px var(--el-color-primary) !important;
}
& .spinner-icon {
border-top-color: var(--el-color-primary);
border-left-color: var(--el-color-primary);
}
}
// 解决tabs样式第二标签左边距为0的问题
.el-tabs {
.el-tabs__item.is-top:nth-child(2) {
padding-left: 20px;
}
}
// 处理menu top hover样式问题
.el-menu--horizontal .el-menu-item:not(.is-disabled):focus,
.el-menu--horizontal .el-menu-item:not(.is-disabled):hover {
background-color: var(--left-menu-text-active-color) !important;
color: var(--left-menu-bg-color) !important;
}
.el-dialog {
padding: 0 !important;
}
.avue-text-ellipsis__text {
word-break: break-all;
}
.avue-tree {
.el-tree-node__content {
min-height: var(--el-tree-node-content-height);
height: auto;
}
.el-tree-node__label {
white-space: normal;
word-break: break-word;
}
}
//优化el-tree内容显示不全问题
.el-tree-node__content {
height: auto !important;
min-height: var(--el-tree-node-content-height);
}
.el-tree-node__label {
white-space: normal;
word-break: break-all;
}
@include scrollBar;
.low-form {
// height: 100%;
}
.avue--detail {
// height: 100%;
// background-color: #f4f4f4;
.avue-group {
// margin-top: 15px;
padding: 0 15px;
}
.avue-group__title {
left: unset !important;
}
}
.avue-form {
.avue-group__title {
position: relative;
display: flex;
align-items: center;
position: relative;
left: 15px;
&::before {
position: absolute;
content: '';
width: 5px;
height: 40%;
left: -2px;
background-color: rgb(64 158 255 / 1);
}
}
}
.avue--detail .el-form-item__label {
color: #17233d;
background: white !important;
}
.avue--detail .el-form-item {
background: white !important;
}
.avue-form__group .el-form-item__content {
> div {
padding: 0 11px;
.el-card__body {
width: 100%;
}
}
.px-11px {
padding: 0 0;
}
}
.avue-crud__search {
.el-form-item__label {
width: fit-content !important;
}
.el-input-number__decrease,
.el-input-number__increase{
display: none;
}
.el-col {
max-width: fit-content !important;
min-width: 300px;
}
.avue-form__group--flex {
display: flex;
column-gap: 20px;
.avue-form__menu {
min-width: fit-content !important;
max-width: fit-content !important;
}
}
}
.dash_class {
height: 0 !important;
}
.control-approveStatusName {
min-width: calc(100% - 431px) !important;
}
.avue-form.avue--detail .control-billNo {
left: 7px !important;
top: -6px !important;
}
.control-create_time {
left: -46px !important;
}
.avue-form.avue--detail .control-create_time {
left: -41px !important;
top: -6px !important;
}
.avue-form.avue--detail .head_title {
}
@media print {
.avue-group--header {
// display: none;
.ce_class {
display: none;
}
.head_title {
position: relative;
// left: -90px;
}
.head_status_value {
flex: 0 0 1%;
max-width: 1%;
}
.head_number_label, .head_number_value {
position: relative !important;
left: -90px !important;
}
.head_created_time_label, .head_created_time_value {
display: none;
}
}
}

14
src/styles/mixin.scss Normal file
View File

@@ -0,0 +1,14 @@
@mixin scrollBar {
::-webkit-scrollbar-track-piece {
background-color: transparent;
}
::-webkit-scrollbar {
width: 7px;
height: 7px;
background-color: transparent;
}
::-webkit-scrollbar-thumb {
border-radius: 5px;
background-color: hsla(220, 4%, 58%, .3);
}
}

6
src/styles/theme.scss Normal file
View File

@@ -0,0 +1,6 @@
// .text-color {
// color: var(--el-text-color-regular);
// }
// .dark .dark\:text-color {
// color: rgba(255, 255, 255, var(--dark-text-color));
// }

66
src/styles/var.css Normal file
View File

@@ -0,0 +1,66 @@
:root {
--login-bg-color: #293146;
--left-menu-max-width: 200px;
--left-menu-min-width: 64px;
--left-menu-bg-color: #001529;
--left-menu-bg-light-color: #0f2438;
--left-menu-bg-active-color: var(--el-color-primary);
--left-menu-text-color: #bfcbd9;
--left-menu-text-active-color: #fff;
--left-menu-collapse-bg-active-color: var(--el-color-primary);
/* left menu end */
/* logo start */
--logo-height: 50px;
--logo-title-text-color: #fff;
/* logo end */
/* header start */
--top-header-bg-color: '#fff';
--top-header-text-color: 'inherit';
--top-header-hover-color: #f6f6f6;
--top-tool-height: var(--logo-height);
--top-tool-p-x: 0;
--tags-view-height: 35px;
/* header start */
/* tab menu start */
--tab-menu-max-width: 80px;
--tab-menu-min-width: 30px;
--tab-menu-collapse-height: 36px;
/* tab menu end */
--app-content-padding: 20px;
--app-content-bg-color: #f5f7f9;
--app-footer-height: 50px;
--transition-time-02: 0.2s;
}
.dark {
--app-content-bg-color: var(--el-bg-color);
}
html,
body {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

View File

@@ -0,0 +1,4 @@
// 命名空间
$namespace: v;
// el命名空间
$elNamespace: el;