调整布局样式

main
chengyu 2 weeks ago
parent f2899f62a7
commit a3270b5ca0
  1. 2
      web/package.json
  2. BIN
      web/src/assets/logo/logo.png
  3. 14
      web/src/assets/styles/sidebar.scss
  4. 8
      web/src/assets/styles/variables.module.scss
  5. 19
      web/src/layout/components/AppMain.vue
  6. 3
      web/src/layout/components/LeftRight.vue
  7. 6
      web/src/layout/components/Navbar.vue
  8. 10
      web/src/layout/components/Sidebar/index.vue
  9. 20
      web/src/views/constructionScheduling/construction-report/index.vue
  10. 45
      web/src/views/constructionScheduling/construction-report/options.js
  11. 13
      web/src/views/constructionScheduling/engineering-log/index.vue
  12. 2
      web/src/views/constructionScheduling/engineering-log/options.js
  13. 2
      web/vite.config.js

@ -39,7 +39,7 @@
"quill-image-resize-module": "^3.0.0",
"quill-image-uploader": "^1.3.0",
"uuid": "^11.0.4",
"vue": "3.2.37",
"vue": "3.2.41",
"vue-cropper": "1.0.3",
"vue-router": "4.0.14",
"vuedraggable": "^4.1.0",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

@ -1,5 +1,5 @@
#app {
background: linear-gradient( 180deg, #DFEDFA 0%, #F5F6FA 100%);
.main-container {
min-height: 100%;
transition: margin-left .28s;
@ -25,7 +25,7 @@
z-index: 1001;
overflow: hidden;
-webkit-box-shadow: 2px 0 6px rgba(0,21,41,.35);
box-shadow: 2px 0 6px rgba(0,21,41,.35);
box-shadow: 2px 0 6px rgba(0,21,41,.05);
// reset element-ui css
.horizontal-collapse-transition {
@ -97,18 +97,24 @@
min-width: $base-sidebar-width !important;
&:hover {
background-color: rgba(0, 0, 0, 0.06) !important;
background-color: transparent !important;
}
}
& .theme-dark .nest-menu .el-sub-menu>.el-sub-menu__title,
& .theme-dark .el-sub-menu .el-menu-item {
background-color: $base-sub-menu-background !important;
background-color: $base-sub-menu-background;
&:hover {
background-color: $base-sub-menu-hover !important;
color: white;
}
}
.el-menu-item.is-active {
background-color: #027CFB !important;
color: white !important;
}
}
.hideSidebar {

@ -10,16 +10,16 @@ $panGreen: #30B08F;
// 默认菜单主题风格
$base-menu-color: #bfcbd9;
$base-menu-color-active: #f4f4f5;
$base-menu-background: #304156;
$base-menu-color-active: #333333;
$base-menu-background: transparent;
$base-logo-title-color: #ffffff;
$base-menu-light-color: rgba(0, 0, 0, 0.7);
$base-menu-light-background: #ffffff;
$base-logo-light-title-color: #001529;
$base-sub-menu-background: #1f2d3d;
$base-sub-menu-hover: #001528;
$base-sub-menu-background: transparent;
$base-sub-menu-hover: #027CFB;
// 自定义暗色菜单风格
/**

@ -1,5 +1,6 @@
<template>
<section class="app-main">
<div class="page-title">{{routeName}}</div>
<router-view v-slot="{ Component, route }">
<transition name="fade-transform" mode="out-in">
<keep-alive :include="tagsViewStore.cachedViews">
@ -12,9 +13,16 @@
</template>
<script setup>
const route = useRoute();
import iframeToggle from "./IframeToggle/index"
import useTagsViewStore from '@/store/modules/tagsView'
const routeName = ref(route.meta.title);
watch(() => route.meta.title, (newTitle) => {
routeName.value = newTitle;
});
defineProps({
height: {
type: String,
@ -25,6 +33,17 @@ const tagsViewStore = useTagsViewStore()
</script>
<style lang="scss" scoped>
.page-title {
font-weight: bold;
font-size: 2.25rem;
color: #333333;
text-align: left;
font-style: normal;
text-transform: none;
padding-top: 2.125rem;
padding-left: 1.5rem;
}
.app-main {
/* 50= navbar 50 */
min-height: calc(100vh - v-bind(height));

@ -7,7 +7,7 @@
<navbar @setLayout="setLayout" />
<tags-view v-if="needTagsView" />
</div>
<app-main />
<app-main :height="defaultHeight"/>
<settings ref="settingRef" />
</div>
</div>
@ -22,6 +22,7 @@ import defaultSettings from '@/settings'
import useAppStore from '@/store/modules/app'
import useSettingsStore from '@/store/modules/settings'
const defaultHeight = '4.625rem'
const settingsStore = useSettingsStore()
const theme = computed(() => settingsStore.theme);
const sideTheme = computed(() => settingsStore.sideTheme);

@ -7,7 +7,7 @@
<div class="right-menu">
<template v-if="appStore.device !== 'mobile'">
<header-search id="header-search" class="right-menu-item" />
<!-- <header-search id="header-search" class="right-menu-item" /> -->
<!-- <screenfull id="screenfull" class="right-menu-item hover-effect" /> -->
<!-- <el-tooltip content="布局大小" effect="dark" placement="bottom">
<size-select id="size-select" class="right-menu-item hover-effect" />
@ -46,7 +46,7 @@ import TopNav from '@/components/TopNav'
import Hamburger from '@/components/Hamburger'
import Screenfull from '@/components/Screenfull'
// import SizeSelect from '@/components/SizeSelect'
import HeaderSearch from '@/components/HeaderSearch'
// import HeaderSearch from '@/components/HeaderSearch'
// import RuoYiGit from '@/components/RuoYi/Git'
// import RuoYiDoc from '@/components/RuoYi/Doc'
import useAppStore from '@/store/modules/app'
@ -97,7 +97,7 @@ function setLayout() {
height: 50px;
overflow: hidden;
position: relative;
background: #fff;
// background: #fff;
box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
.hamburger-container {

@ -1,14 +1,14 @@
<template>
<div :class="{ 'has-logo': showLogo }" :style="{ backgroundColor: sideTheme === 'theme-dark' ? variables.menuBackground : variables.menuLightBackground }">
<logo v-if="showLogo" :collapse="isCollapse" />
<div :class="{ 'has-logo': showLogo }">
<!-- <logo v-if="showLogo" :collapse="isCollapse" /> -->
<img src="../../../assets/logo/logo.png" style="margin: 2.625rem 5.0625rem 1.8125rem 5.0625rem;width: 4.25rem;height: 4.25rem;" alt="">
<el-scrollbar :class="sideTheme" wrap-class="scrollbar-wrapper">
<el-menu
:default-active="activeMenu"
:collapse="isCollapse"
:background-color="sideTheme === 'theme-dark' ? variables.menuBackground : variables.menuLightBackground"
:text-color="sideTheme === 'theme-dark' ? variables.menuColor : variables.menuLightColor"
:unique-opened="true"
:active-text-color="theme"
active-text-color="#027CFB"
background-color="transparent"
:collapse-transition="false"
mode="vertical"
>

@ -85,9 +85,20 @@ function getPlanList(params) {
<el-table-column label="质量安全" align="center" prop="qs" />
<el-table-column label="机械设备运行" align="center" prop="equipmentOperation" /> -->
<el-table-column label="报告日期" align="center" prop="date" />
<el-table-column label="报告周期(日/周/月)" align="center" prop="cycle" />
<el-table-column label="项目名称" align="center" prop="planName" />
<el-table-column label="建议" align="center" prop="advises" />
<el-table-column label="报告类型(日/周/月)" align="center" prop="cycle" />
<el-table-column label="报告内容" align="center" prop="planId" width="400">
<template #default="scope">
<el-tooltip effect="dark" :content="scope.row.planId" placement="top">
<span style="display: inline-block; width: 400px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">{{ scope.row.planId }}</span>
<template #content>
<div style="width: 300px; ">
{{ scope.row.planId }}
</div>
</template>
</el-tooltip>
</template>
</el-table-column>
<el-table-column label="其他建议" align="center" prop="advises" />
<el-table-column label="总体施工进度" align="center" prop="totalProgress">
<template #default="scope">
<el-progress :stroke-width="6" :percentage="Number(scope.row.totalProgress)" />
@ -112,4 +123,5 @@ function getPlanList(params) {
</div>
</template>
<style scoped></style>
<style scoped>
</style>

@ -18,15 +18,15 @@ export const baseModelOptions = () => {
{
tag: 'BaseSelect',
label: '报告周期:',
label: '报告类型:',
key: 'cycle',
value: '',
default: '',
rules: [
{ required: true, message: '请选择报告周期', trigger: 'blur' },
{ required: true, message: '请选择报告类型', trigger: 'blur' },
],
attribute: { //属性
placeholder: '请选择报告周期',
placeholder: '请选择报告类型',
options: [{
value: "日",
label: "日"
@ -40,16 +40,17 @@ export const baseModelOptions = () => {
},
},
{
tag: 'BaseSelect',
label: '项目名称:',
tag: 'el-input',
label: '报告内容:',
key: 'planId',
value: '',
default: '',
rules: [
{ required: true, message: '请选择项目名称', trigger: 'blur' },
{ required: true, message: '请输入报告内容', trigger: 'blur' },
],
attribute: { //属性
placeholder: '请选择项目名称',
type: 'textarea',
placeholder: '请输入报告内容',
options: []
},
},
@ -111,7 +112,7 @@ export const baseModelOptions = () => {
// },
{
tag: 'el-input',
label: '建议:',
label: '其他建议:',
key: 'advises',
value: '',
default: '',
@ -143,20 +144,20 @@ export const baseModelOptions = () => {
export const baseFilterOptions = () => {
return [
{
tag: 'BaseSelect',
label: '项目名称:',
key: 'planId',
value: '',
default: '',
rules: [
{ required: true, message: '请选择项目名称', trigger: 'blur' },
],
attribute: { //属性
placeholder: '请选择项目名称',
options: []
},
},
// {
// tag: 'BaseSelect',
// label: '项目名称:',
// key: 'planId',
// value: '',
// default: '',
// rules: [
// { required: true, message: '请选择项目名称', trigger: 'blur' },
// ],
// attribute: { //属性
// placeholder: '请选择项目名称',
// options: []
// },
// },
// {
// tag: 'el-input',
// label: '材料使用:',

@ -51,7 +51,18 @@ onMounted(() => {
<el-table-column label="风力" align="center" prop="wind" />
<el-table-column label="现场负责人" align="center" prop="principalName" />
<el-table-column label="联系方式" align="center" prop="principalTel" />
<el-table-column label="施工情况" align="center" prop="constructionSituation" />
<el-table-column label="施工情况" align="center" prop="constructionSituation" width="400">
<template #default="scope">
<el-tooltip effect="dark" :content="scope.row.constructionSituation" placement="top">
<span style="display: inline-block; width: 400px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">{{ scope.row.constructionSituation }}</span>
<template #content>
<div style="width: 300px; ">
{{ scope.row.constructionSituation }}
</div>
</template>
</el-tooltip>
</template>
</el-table-column>
<el-table-column label="其他事项" align="center" prop="otherBusiness" />
<el-table-column label="创建人" align="center" prop="creator" />
<el-table-column label="创建时间" align="center" prop="createTime" />

@ -100,7 +100,7 @@ export const baseModelOptions = () => {
value: '',
default: '',
attribute: {//属性
type: 'text',
type: 'textarea',
placeholder: '请输入施工情况',
},
},

@ -43,7 +43,7 @@ export default defineConfig(({ mode, command }) => {
},
proxy: {
'/dev-api': {
target: 'http://192.168.2.39:8080',
target: 'http://192.168.2.223:8080',
// target: 'http://39.100.74.100:8080',
changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api/, '')

Loading…
Cancel
Save