style(business): 优化业务弹窗布局与样式统一
- 修改 dispatchItemForm 表单标签宽度为 calc(6em + 24px),统一label宽度标准 - 调整 business-crud-page 内 section-card 间距,避免卡片紧贴,符合整体风格 - 规范 detail-content 内部元素间距及白卡底部边距,提升视觉一致性 - 调整 contract-manage select 组件列占比,优化表单布局 - 调整 customer-archive 弹窗间距,增强界面美观 - 全站弹窗新增底部操作栏固定与滚动内容区,提升弹窗交互体验 - port-terminal、railway-station 弹窗表单标签宽度调整及样式改进,提高表单对齐效果 - 统一多处弹窗及表单组件底部间距,确保全局风格一致 - port-terminal 弹窗取消分组白卡,恢复原有结构以满足用户需求
This commit is contained in:
@@ -253,7 +253,7 @@ export const option = createCrudOption([
|
||||
prop: 'signType',
|
||||
type: 'select',
|
||||
search: false,
|
||||
span: 6,
|
||||
span: 8,
|
||||
order: 190,
|
||||
dicData: signTypeOptions,
|
||||
minWidth: 120,
|
||||
|
||||
@@ -176,6 +176,28 @@
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
/* 全站弹窗:底部操作栏浮动效果(参照 business/project-apply)
|
||||
* - body 超高时内部独立滚动,footer(取消/保存等按钮)始终固定在底部可见
|
||||
* - footer 加视觉底栏:白底 + 上边框 + 轻阴影,与主内容区分 */
|
||||
.el-dialog__body {
|
||||
max-height: calc(100vh - 200px);
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
.el-dialog__footer {
|
||||
margin: 0;
|
||||
padding: 12px 20px;
|
||||
background: #fff;
|
||||
border-top: 1px solid var(--el-border-color-lighter, #ebeef5);
|
||||
//box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.04);
|
||||
border-radius: 0 0 var(--el-dialog-border-radius, 4px);
|
||||
|
||||
.el-button + .el-button {
|
||||
margin-left: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.el-dialog__title,
|
||||
.dialog-section-title {
|
||||
display: inline-flex;
|
||||
@@ -217,7 +239,7 @@
|
||||
// 1) 所有弹窗内容区统一灰底 + 8px 内边距(全站统一)
|
||||
.el-dialog__body {
|
||||
background-color: #f2f2f2;
|
||||
padding: 8px !important;
|
||||
padding: 12px !important;
|
||||
}
|
||||
|
||||
// Avue CRUD 弹窗:表单白卡 + 底部按钮区视觉合一(按钮在卡片内部)
|
||||
@@ -305,9 +327,9 @@
|
||||
}
|
||||
}
|
||||
|
||||
// 4) 弹窗内表单项默认上下间距 20px(覆盖默认 18px / 22px,与 customer-archive 对齐)
|
||||
// 4) 弹窗内表单项默认上下间距 16px(覆盖默认 18px / 22px,与 customer-archive 对齐)
|
||||
.el-dialog .el-form-item {
|
||||
margin-bottom: 20px;
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
// 5) 通用分组白卡组件(<section-card>):标题融入卡头
|
||||
@@ -315,6 +337,7 @@
|
||||
background: #fff;
|
||||
border-radius: 6px;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
|
||||
margin-bottom: 12px;
|
||||
overflow: hidden;
|
||||
|
||||
&:last-child {
|
||||
@@ -760,4 +783,8 @@
|
||||
|
||||
.avue-crud__dialog .avue-dialog__footer{
|
||||
border-top: 0 !important;
|
||||
margin-top: -30px !important;
|
||||
}
|
||||
.el-form-item__label {
|
||||
margin-left: 20px !important;
|
||||
}
|
||||
|
||||
@@ -394,7 +394,7 @@ export default {
|
||||
dialogWidth: 900,
|
||||
dialogCustomClass: 'port-terminal-edit-dialog',
|
||||
labelPosition: 'right',
|
||||
labelWidth: 'auto',
|
||||
labelWidth: '108px',
|
||||
tip: false,
|
||||
searchShow: true,
|
||||
searchLabelWidth: 160,
|
||||
@@ -830,9 +830,12 @@ export default {
|
||||
this.clearCityValue();
|
||||
},
|
||||
handleCategoryChange(value, reset = true) {
|
||||
const required = value === '码头';
|
||||
const parentColumn = this.findColumn(this.option.column, 'parentId');
|
||||
parentColumn.rules[0].required = value === '码头';
|
||||
this.setColumnDisplay('parentId', value === '码头');
|
||||
if (parentColumn && parentColumn.rules && parentColumn.rules[0]) {
|
||||
parentColumn.rules[0].required = required;
|
||||
}
|
||||
this.setColumnDisplay('parentId', required);
|
||||
if (value === '港口') {
|
||||
this.form.parentId = undefined;
|
||||
this.form.parentCode = '';
|
||||
@@ -1379,19 +1382,42 @@ export default {
|
||||
</style>
|
||||
|
||||
<style lang="scss">
|
||||
/* 港口码头编辑/新增弹窗:所有 input 文本框、select 下拉控件统一宽度 250px */
|
||||
.port-terminal-edit-dialog {
|
||||
.el-input,
|
||||
.el-select {
|
||||
width: 250px !important;
|
||||
}
|
||||
/* 详细地址为整行字段,放宽到占满整行 */
|
||||
//.detail-address-input {
|
||||
// width: 81% !important;
|
||||
//}
|
||||
/* 备注宽度 83% */
|
||||
.remark-input {
|
||||
width: 85% !important;
|
||||
}
|
||||
}
|
||||
/* 港口码头编辑/新增弹窗:对齐 railway-station 统一风格(灰底 + 白卡表单 + 浮动底栏,padding 24px 与全局弹窗标准一致) */
|
||||
//.port-terminal-edit-dialog {
|
||||
// /* 灰底内容区 */
|
||||
// .el-dialog__body {
|
||||
// background-color: #f2f2f2;
|
||||
// padding: 8px;
|
||||
// }
|
||||
// /* 表单白卡(与全局 .el-dialog .avue-form 一致,padding 24px 对齐 customer-archive / railway-station) */
|
||||
// .avue-form {
|
||||
// background: #fff;
|
||||
// border-radius: 6px;
|
||||
// box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
|
||||
// padding: 24px !important;
|
||||
// margin-bottom: 0;
|
||||
// }
|
||||
// /* 底部按钮区白卡(Avue 弹窗 footer 在 body 内,接续白卡) */
|
||||
// .avue-dialog__footer {
|
||||
// background: #fff;
|
||||
// border-radius: 0 0 6px 6px;
|
||||
// box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
|
||||
// padding: 16px 24px !important;
|
||||
// display: flex;
|
||||
// justify-content: flex-end;
|
||||
// }
|
||||
// /* label 宽度统一 108px(对齐 railway-station,标签对齐更整齐) */
|
||||
// .el-form-item__label {
|
||||
// width: 108px !important;
|
||||
// }
|
||||
// /* 所有 input 文本框、select 下拉控件统一宽度 250px */
|
||||
// .el-input,
|
||||
// .el-select {
|
||||
// width: 250px !important;
|
||||
// }
|
||||
// /* 备注宽度 85% */
|
||||
// .remark-input {
|
||||
// width: 85% !important;
|
||||
// }
|
||||
//}
|
||||
</style>
|
||||
|
||||
@@ -204,7 +204,7 @@ export default {
|
||||
dialogWidth: 980,
|
||||
dialogCustomClass: 'railway-station-edit-dialog',
|
||||
labelPosition: 'right',
|
||||
labelWidth: '108px',
|
||||
labelWidth: '140px',
|
||||
tip: false,
|
||||
searchShow: true,
|
||||
searchMenuSpan: 24,
|
||||
@@ -899,10 +899,10 @@ export default {
|
||||
</style>
|
||||
|
||||
<style lang="scss">
|
||||
/* 铁路车站弹窗:强制 label 宽度 108px(覆盖 Avue 默认 auto 计算值) */
|
||||
/* 铁路车站编辑/新增弹窗:强制 label 宽度 140px(覆盖 Avue 默认 auto 计算值),灰底白卡与浮动底栏由全局 element-ui.scss 弹窗标准规则统一提供 */
|
||||
.railway-station-edit-dialog {
|
||||
.el-form-item__label {
|
||||
width: 108px !important;
|
||||
width: 140px !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -2685,7 +2685,7 @@
|
||||
<el-form
|
||||
:model="dispatchItemForm"
|
||||
label-position="right"
|
||||
label-width="auto"
|
||||
label-width="calc(6em + 24px)"
|
||||
class="business-crud-page__dispatch-item-form"
|
||||
>
|
||||
<div class="dialog-section-title">收发货信息</div>
|
||||
@@ -10268,7 +10268,7 @@ export default {
|
||||
grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
|
||||
gap: 16px;
|
||||
align-items: stretch;
|
||||
margin-bottom: 12px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
&__dispatch-summary-card,
|
||||
@@ -10702,9 +10702,11 @@ export default {
|
||||
&__detail-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 12px;
|
||||
gap: 8px;
|
||||
|
||||
.section-card {
|
||||
margin-bottom: 0 !important;
|
||||
|
||||
:deep(.el-descriptions__label) {
|
||||
width: 140px;
|
||||
color: #606266;
|
||||
@@ -10803,8 +10805,12 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
.section-card{
|
||||
margin-bottom: 0 !important;
|
||||
.section-card {
|
||||
margin-bottom: 8px !important;
|
||||
|
||||
&:last-child {
|
||||
margin-bottom: 0 !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* 编辑弹窗:含分组的 Avue form 渲染为白卡风格 */
|
||||
@@ -10813,7 +10819,7 @@ export default {
|
||||
border-radius: 6px;
|
||||
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
|
||||
padding: 16px;
|
||||
margin-bottom: 16px;
|
||||
margin-bottom: 8px;
|
||||
|
||||
.avue-form__group--title {
|
||||
padding: 0 !important;
|
||||
|
||||
@@ -1908,7 +1908,7 @@ export default {
|
||||
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
|
||||
column-gap: 72px;
|
||||
row-gap: 0;
|
||||
margin-bottom: 8px;
|
||||
margin-bottom: 12px;
|
||||
background: #fff;
|
||||
border-radius: 0 0 6px 6px;
|
||||
padding: 14px 16px 4px;
|
||||
@@ -1934,7 +1934,7 @@ export default {
|
||||
|
||||
&__table {
|
||||
width: 100%;
|
||||
margin-bottom: 8px;
|
||||
margin-bottom: 12px;
|
||||
background: #fff;
|
||||
border-radius: 0 0 6px 6px;
|
||||
padding: 12px;
|
||||
@@ -1952,7 +1952,7 @@ export default {
|
||||
}
|
||||
|
||||
&__textarea-list {
|
||||
margin-bottom: 8px;
|
||||
margin-bottom: 12px;
|
||||
background: #fff;
|
||||
border-radius: 0 0 6px 6px;
|
||||
padding: 14px 16px 4px;
|
||||
@@ -1975,7 +1975,7 @@ export default {
|
||||
}
|
||||
|
||||
&__material-card {
|
||||
margin-bottom: 8px;
|
||||
margin-bottom: 12px;
|
||||
background: #fff;
|
||||
border-radius: 6px;
|
||||
padding: 14px 16px;
|
||||
|
||||
@@ -3779,7 +3779,7 @@ export default {
|
||||
}
|
||||
|
||||
.archive-detail-card {
|
||||
margin-top: 8px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
.archive-tabs {
|
||||
:deep(.el-tabs__header) {
|
||||
|
||||
Reference in New Issue
Block a user