提交代码

This commit is contained in:
2025-04-12 14:54:02 +08:00
parent f7761e99a1
commit a2e89f5ea1
599 changed files with 194300 additions and 0 deletions

View File

129
src/styles/base.scss Normal file
View File

@ -0,0 +1,129 @@
html,
body,
#app,
.el-container,
.el-menu {
height: 100%;
overflow: hidden;
}
.numbPop {
text-align: center;
color: #000000;
font-weight: bold;
pointer-events: none;
font-size: 16px;
font-weight: 600;
}
.numbMarker {
margin: 0 auto;
font-size: 16px;
border-radius: 100%;
width: 24px;
height: 24px;
line-height: 24px;
text-align: center;
color: #fff;
font-weight: normal;
background: rgba(243, 146, 0, 0.9);
pointer-events: none;
}
.numb-yello .numbMarker {
background: rgba(243, 146, 0, 0.9);
}
.numb-orang .numbMarker {
background: rgba(231, 93, 0, 0.9);
}
.numb-red .numbMarker {
background: rgba(162, 5, 0, 0.9);
}
.margin-bt-10 {
margin-bottom: 0.625rem;
}
.popName {
font-weight: bold;
font-size: 14px;
color: #fff;
}
.popbody {
background: rgba(12,21,45, 0.5);
/* width: 450px; */
/* height: 300px; */
overflow: hidden;
overflow-y: scroll;
color: #fff;
font-size: 12px;
line-height: 22px;
text-align: left;
padding: 10px 15px;
}
/* 地图弹框样式 */
.ez-popup {
display: none;
min-width: 200px;
max-width: 500px;
/* width: 490px; */
position: relative;
background: rgba(24, 32, 78, 0.7);
border: 1px solid #b6dcfd;
border-radius: 10px;
-webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
/* padding: 10px 15px; */
margin-bottom: 30px;
z-index: 9999;
}
.ez-popup:after,
.ez-popup:before {
top: 100%;
left: 48%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
.ez-popup:after {
border-color: rgba(255, 255, 255, 0);
border-top-color: #1693ff;
border-width: 10px;
margin-left: -10px;
}
.ez-popup:before {
border-color: rgba(255, 255, 255, 0);
border-top-color: #FFFFFF;
border-width: 10px;
margin-left: -10px;
}
.ez-popup-closer {
text-decoration: none;
position: absolute;
top: 2px;
right: 8px;
color: #fafafa;
}
.ez-popup-closer:after {
content: "";
}
.ez-popup-content {
text-align: center;
font-family: , ;
font-size: 15px;
line-height: 15px;
}

View File

@ -0,0 +1,548 @@
//专门用来 --修改组件库内部样式
//1.需要自定义一个类名空间
//2.先在浏览器里调试好样式
//3.把调试好的类名放在这个类名里面
//4.在App.vue里面引入这个文件
//5.在组件内需要改样式的元素的父元素加上这个类名
@import "./variables.scss";
.el-avatar {
--el-avatar-background-color: none !important;
}
$color-danger: #fa4c4e;
$test: rgba(0, 128, 0, 0.603);
.el-button--danger {
--el-button-bg-color: #fa4c4e !important;
--el-button-border-color: #fa4c4e !important;
--el-button-hover-bg-color: #fa4c4fa6 !important;
--el-button-hover-border-color: #fa4c4fa6 !important;
--el-button-active-bg-color: #fa4c4fa6 !important;
--el-button-active-border-color: #fa4c4fa6 !important;
}
.el-button--info {
span {
color: #c2c0c0 !important;
}
--el-button-bg-color: #f5f5f5 !important;
--el-button-border-color: #dedede !important;
--el-button-hover-bg-color: #f5f5f546 !important;
--el-button-hover-border-color: #dedede !important;
--el-button-active-bg-color: #f5f5f5 !important;
--el-button-active-border-color: #dedede !important;
}
.el-select {
.select-trigger {
.el-select__tags {
padding-left: 8px;
}
}
}
.el-popper {
.el-select-dropdown {
.el-scrollbar {
.el-select-dropdown__wrap {
.el-scrollbar__view {
.el-select-dropdown__item {
padding: 0 20px 0 20px;
}
.hover {
background-color: var(--el-color-primary-light-8);
}
.selected {
background-color: var(--el-color-primary-light-7);
}
}
}
}
}
}
.el-select__popper {
.selected {
display: flex;
align-items: center;
justify-content: space-between;
&::after {
content: "";
display: inline-block;
// background: url(img/face.png) no-repeat;
background-size: 20px;
vertical-align: top;
margin-left: 0px;
}
}
}
.mosty-from-wrap {
.el-form-item {
// margin-bottom: 12px;
.errorIcon {
display: none;
}
.checkIcon {
display: none;
}
}
.is-error {
.form-item-box {
position: relative;
.el-input {
background-color: #001238;
.el-input__inner {
background-color: #001238;
}
.el-input__count .el-input__count-inner {
background-color: #001238;
}
}
.el-cascader__tags {
.el-tag {
background: #001238;
}
.el-cascader__search-input {
background: #001238;
}
.el-cascader__search-input {
margin: 2px 0 2px 13px !important;
}
}
.errorIcon {
display: inline-block;
color: var(--el-color-danger);
margin-left: 8px;
position: absolute;
top: 8px;
right: -20px;
}
.checkIcon {
display: none;
}
}
}
.el-cascader__search-input {
margin: 2px 0 2px 13px;
}
.is-success {
.form-item-box {
position: relative;
.el-input {
border: #57d040;
.el-input__inner {
background-color: #001238;
// border: 1px solid #57d040;
}
.el-input__count .el-input__count-inner {
background-color: #001238;
}
}
.el-cascader__tags {
.el-tag {
background: #dcf0df;
}
.el-cascader__search-input {
background: #eafaec;
}
.el-cascader__search-input {
margin: 2px 0 2px 13px !important;
}
}
.checkIcon {
display: inline-block;
//color: var(--el-color-primary);
color: #57d040;
margin-left: 8px;
position: absolute;
top: 8px;
right: -18px;
}
.errorIcon {
display: none;
}
.el-select .el-select__tags .el-tag--info {
background: #d5f1cf;
}
}
}
}
.choose-icon-zj {
.el-autocomplete {
width: 100% !important;
.el-input {
.el-input__prefix {
.el-input__prefix-inner {
display: flex;
align-items: center;
.svg-icon {
font-size: 16px;
margin-right: 3px;
}
}
}
}
}
}
.choose-icon-zj-autocomplete {
width: 500px;
.el-scrollbar__view {
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
li {
text-align: center;
width: 100px;
display: flex;
flex-direction: column;
align-content: center;
align-items: center;
padding: 10px 0 10px 0;
.svg-icon {
font-size: 22px;
}
.value {
font-size: 12px;
padding: 0 6px;
width: 100px;
@include text-overflow;
}
}
}
}
.carnumber-box {
.item-label {
display: inline-block;
font-size: 14px;
color: var(--el-text-color-regular);
line-height: 32px;
padding: 0 12px 0 0;
box-sizing: border-box;
}
.item-label.required:before {
content: "*";
color: #f56c6c;
margin-right: 4px;
}
.el-select {
width: 80px;
.el-input {
width: 80px !important;
}
}
.el-input {
width: 160px !important;
}
input:-ms-input-placeholder {
font-size: 12px;
}
input::-webkit-input-placeholder {
font-size: 12px;
}
input::-moz-placeholder {
font-size: 12px;
}
input:-moz-placeholder {
font-size: 12px;
}
}
.form-item-box {
position: relative;
width: 240px;
}
.error-tips {
color: #f56c6c;
font-size: 12px;
line-height: 1;
padding-top: 2px;
position: absolute;
}
.error-input {
.el-input__inner {
border-color: #f56c6c;
}
}
.nation-select {
.el-scrollbar__wrap {
width: 400px;
max-height: 500px;
}
.el-select-dropdown__item {
float: left;
width: 100px;
padding: 0 14px !important;
font-size: 14px;
height: 28px;
line-height: 24px;
}
.el-select-dropdown__item.selected,
.el-select-dropdown__item.hover {
background-color: #fff !important;
color: var(--el-color-primary);
}
.el-select-dropdown__item.selected::after {
display: none;
}
}
.alphabet-select-wrap {
width: 180px !important;
height: 80px;
.alphabet {
width: 100%;
padding: 0;
height: 80px;
ul {
margin: 0;
padding: 0;
}
li {
list-style: none;
float: left;
padding: 0 5px !important;
font-size: 14px;
height: 20px;
text-align: center;
line-height: 20px;
cursor: pointer;
}
li.selected {
background-color: #fff !important;
color: var(--el-color-primary);
font-weight: 600;
}
li:hover {
background-color: #fff !important;
color: var(--el-color-primary);
}
}
}
.carnumber-select {
.el-scrollbar__wrap {
width: 280px;
padding: 5px;
max-height: 110px;
}
.el-select-dropdown__item {
float: left;
width: 27px;
padding: 0 5px !important;
font-size: 12px;
height: 21px;
text-align: center;
line-height: 21px;
}
.el-select-dropdown__item.selected,
.el-select-dropdown__item.hover {
background-color: #fff !important;
color: var(--el-color-primary);
}
.el-select-dropdown__item.selected::after {
display: none;
}
}
.frameWork-select {
.el-select-dropdown__item {
display: none !important;
}
.el-tree-node.is-checked {
background-color: var(--el-color-primary-light-7);
}
.el-tree-node.is-checked .el-tree-node__label::after {
content: "";
display: inline-block;
background-size: 20px;
vertical-align: top;
margin-left: 0px;
color: var(--el-color-primary);
position: absolute;
right: 20px;
}
.el-select-dropdown__wrap {
max-height: 500px !important;
}
.alllist {
height: 260px;
overflow-y: scroll;
}
}
.adderss-select {
.el-select-dropdown__item {
display: none !important;
}
.el-select-dropdown__wrap {
width: 460px;
padding: 0 5px 5px 5px;
}
.el-tabs__item {
height: 30px;
line-height: 30px;
}
.citylist {
width: 100%;
padding: 0;
height: auto;
li {
list-style: none;
float: left;
padding: 0 5px !important;
font-size: 14px;
height: 28px;
width: 25%;
text-align: left;
line-height: 28px;
cursor: pointer;
}
li.selected {
background-color: #fff !important;
color: var(--el-color-primary);
font-weight: 600;
}
li::after {
display: none;
}
li:hover {
background-color: #fff !important;
color: var(--el-color-primary);
}
}
}
.upload-all-box {
.avatar-uploader.finished {
.el-upload {
border: 1px solid #d9d9d9 !important;
}
}
.avatar-uploader {
width: 100px;
height: 100px;
.el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
padding: 5px;
}
.el-upload:hover {
border-color: #409eff;
}
.loaded {
position: relative;
.avatar {
width: 90px;
height: 90px;
display: block;
}
.model {
width: 90px;
height: 90px;
background: #333;
opacity: 0.5;
position: absolute;
top: 0;
}
.option {
height: 30px;
width: 90px;
position: absolute;
top: 35px;
}
}
.noload {
width: 90px;
height: 90px;
background: #f9f9f9;
.el-icon.avatar-uploader-icon {
font-size: 24px;
color: #333;
width: 90px;
margin-top: 30px;
text-align: center;
}
.el-icon.avatar-uploader-icon:hover {
color: #409eff;
}
.avatar-uploader-icon-text {
width: 90px;
font-size: 14px;
margin-top: -10px;
}
}
.loading {
width: 90px;
height: 90px;
background: #f9f9f9;
}
}
}
::-webkit-scrollbar {
width: 6px;
height: 8px;
background-color: #e9e9e9;
}
::-webkit-scrollbar-thumb {
background-color: #cccccc;
border-radius: 50px;
}
::-webkit-scrollbar-track {
background-color: #e9e9e9;
}
::-webkit-scrollbar-corner {
background-color: #142141;
}
//添加dialog效果
.dialog-fade-enter-active .el-dialog.way {
animation: anim-open 0.5s;
}
.dialog-fade-leave-active .el-dialog.way {
animation: anim-close 0.5s;
}
@keyframes anim-open {
0% {
transform: translate3d(100%, 0, 0);
opacity: 0;
}
100% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
}
@keyframes anim-close {
0% {
transform: translate3d(0, 0, 0);
opacity: 1;
}
100% {
transform: translate3d(100%, 0, 0);
opacity: 0;
}
}

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

@ -0,0 +1,112 @@
@import "./base.scss";
@import "./variables.scss";
@import "./mixin.scss";
@import "./element-override.scss";
@import "./sidebar.scss";
@import "./transition.scss";
html,
body {
height: 100%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB,
Microsoft YaHei, Arial, sans-serif;
}
#app {
height: 100%;
}
*,
*:before,
*:after {
box-sizing: border-box;
}
a:focus,
a:active {
outline: none;
}
a,
a:focus,
a:hover {
cursor: pointer;
color: inherit;
text-decoration: none;
}
div:focus {
outline: none;
}
.clearfix {
&:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
}
.detail_box{
width: 80%;
margin: 30px auto;
}
::v-deep .el-calendar-day{
display: flex;
flex-direction: column;
justify-content: space-between;
background: rgba(rgb(6,42,72), 1);
height: 100px;
}
::v-deep .el-calendar{
background: rgba(rgb(6,42,72), 0.1);
border: 1px solid rgb(8, 85, 170);
color: #fff;
}
::v-deep .el-calendar-table td.is-selected{
background-color: rgb(17,66,96);
}
::v-deep .el-calendar-table .el-calendar-day:hover {
background-color: rgb(17,66,96);
}
::v-deep .el-calendar-table td{
background-color: rgba(rgb(6,42,72), 0.1);
border-color: rgb(8, 85, 170);
}
::v-deep .el-calendar-table thead th{
border-color: rgb(8, 85, 170);
color: #fff;
}
::v-deep .el-table td.el-table__cell{
color: #6f6f74;
}
::v-deep .el-calendar-day{
border-color: rgb(8, 85, 170);
}
::v-deep .el-calendar-table tr td:first-child{
border-color: rgb(8, 85, 170);
}
::v-deep .el-calendar-table tr:first-child td{
border-color: rgb(8, 85, 170);
}
.new-btn-class-bj {
color: #409eff;
margin-right: 10px;
}
.new-btn-class-bj:hover {
border-bottom: 1px solid #409eff;
}
.new-btn-class-sc {
color: #f56c6c;
}
.new-btn-class-sc:hover {
border-bottom: 1px solid #f56c6c;
}

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

@ -0,0 +1,74 @@
//处理通用css文件
@mixin clearfix {
&:after {
content: '';
display: table;
clear: both;
}
}
@mixin scrollBar {
&::-webkit-scrollbar-track-piece {
background: #d3dce6;
}
&::-webkit-scrollbar {
width: 6px;
}
&::-webkit-scrollbar-thumb {
background: #99a9bf;
border-radius: 20px;
}
}
@mixin relative {
position: relative;
width: 100%;
height: 100%;
}
@mixin ShowToolTips{
display: block;
transition: all 0.1s ease 0.5s;
visibility: visible;
}
@mixin flex($justify: center, $align: center, $direction: false) {
display: flex;
justify-content: $justify;
align-items: $align;
@if ($direction !=false) {
flex-direction: $direction;
}
}
@mixin set-img($size,$isPercent:false) {
@if $isPercent==true{
width: #{$size};
}@else{
width: #{$size}px;
}
img {
width: 100%;
}
}
@mixin text-overflow {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
@mixin multi-line($line) {
overflow: hidden;
/*将对象作为弹性伸缩盒子模型显示*/
display: -webkit-box;
/*设置子元素排列方式*/
-webkit-box-orient: vertical;
/*设置显示的行数,多出的部分会显示为...*/
-webkit-line-clamp: $line;
}

169
src/styles/sidebar.scss Normal file
View File

@ -0,0 +1,169 @@
#app {
.main-container {
min-height: 100%;
position: relative;
width: 100%;
}
.sidebar-container {
height: 100%;
overflow: hidden;
flex-shrink: 0;
// 重置 element-plus 的css
.horizontal-collapse-transition {
transition: 0s width ease-in-out, 0s padding-left ease-in-out,
0s padding-right ease-in-out;
}
.scrollbar-wrapper {
overflow-x: hidden !important;
}
.el-scrollbar__bar.is-vertical {
right: 0px;
}
.el-scrollbar {
height: 100%;
}
&.has-logo {
.el-scrollbar {
height: calc(100% - 50px);
}
}
.is-horizontal {
display: none;
}
a {
display: inline-block;
width: 100%;
overflow: hidden;
}
.svg-icon {
margin-right: 0px;
}
.sub-el-icon {
margin-right: 12px;
margin-left: -2px;
}
.el-menu {
border: none;
}
.is-active > .el-submenu__title {
color: $subMenuActiveText !important;
}
& .nest-menu .el-submenu > .el-submenu__title,
& .el-submenu .el-menu-item {
min-width: $sideBarWidth !important;
}
}
.hideSidebar {
.sidebar-container {
width: 54px !important;
}
.main-container {
margin-left: 0px;
}
.submenu-title-noDropdown {
padding: 0 !important;
position: relative;
.el-tooltip {
padding: 0 !important;
.svg-icon {
margin-left: 20px;
}
.sub-el-icon {
margin-left: 19px;
}
}
}
.el-submenu {
overflow: hidden;
& > .el-submenu__title {
padding: 0 !important;
.svg-icon {
margin-left: 20px;
}
.sub-el-icon {
margin-left: 19px;
}
.el-submenu__icon-arrow {
display: none;
}
}
}
.el-menu--collapse {
.el-submenu {
& > .el-submenu__title {
& > span {
height: 0;
width: 0;
overflow: hidden;
visibility: hidden;
display: inline-block;
}
}
}
}
}
.el-menu--collapse .el-menu .el-submenu {
min-width: $sideBarWidth !important;
}
.withoutAnimation {
.main-container,
.sidebar-container {
transition: none;
}
}
}
.el-menu--vertical {
& > .el-menu {
.svg-icon {
margin-right: 16px;
}
.sub-el-icon {
margin-right: 12px;
margin-left: -2px;
}
}
// 菜单项过长时
> .el-menu--popup {
max-height: 100vh;
overflow-y: auto;
&::-webkit-scrollbar-track-piece {
background: #d3dce6;
}
&::-webkit-scrollbar {
width: 6px;
}
&::-webkit-scrollbar-thumb {
background: #99a9bf;
border-radius: 20px;
}
}
}

View File

@ -0,0 +1,30 @@
.breadcrumb-enter-active,
.breadcrumb-leave-active {
transition: all 0.5s;
}
.breadcrumb-enter-from,
.breadcrumb-leave-active {
opacity: 0;
transform: translateX(20px);
}
.breadcrumb-leave-active {
position: absolute;
}
/* 路由切换动画 fade-transform */
.fade-transform-leave-active,
.fade-transform-enter-active {
transition: all 0.5s;
}
.fade-transform-enter-from {
opacity: 0;
transform: translateX(-30px);
}
.fade-transform-leave-to {
opacity: 0;
transform: translateX(30px);
}

39
src/styles/variables.scss Normal file
View File

@ -0,0 +1,39 @@
// 定义常量
$color-text: #111;
$color-title: #333;
$color-disabled: #999;
$color-error:#fa4c4e;
$color-danger:#FA4C4E;
$color-white:#fff;
$primary:#409eff;
$text:$color-text;
$selected-bg: transparentize($primary, 0.9);
// sidebar
$menuText: #bfcbd9;
$menuActiveText: #ffffff;
$subMenuActiveText: #f4f4f5;
$menuBg: #304156; //
$menuHover: #263445;
$subMenuBg: #1f2d3d;
$subMenuHover: #001528;
$sideBarWidth: 210px;
$hideSideBarWidth: 54px;
$sideBarDuration: 0.28s;
// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
// JS 与 scss 共享变量,在 scss 中通过 :export 进行导出,在 js 中可通过 ESM 进行导入
:export {
menuText: $menuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
sideBarWidth: $sideBarWidth;
}