提交 5f33bbc9 authored 作者: lidongxu's avatar lidongxu

Merge branch 'ap' into dev

......@@ -42,7 +42,8 @@
class="auto-fit-header-table"
v-loading="isLoading"
show-overflow-tooltip
:class="{ 'cell-no-padding': operation === '填报模式' }">
:class="{ 'cell-no-padding': operation === '填报模式' }"
:row-style="tableRowStyle">
<template v-for="col in tableColumns">
<el-table-column v-if="col.visible"
:label="col.label"
......@@ -72,7 +73,7 @@
<!-- 自定义渲染内容单元格 -->
<div v-if="col.render"
class="cell-style">
<component :is="col.render(h, row, col)" />
<component :is="col.render(h, row, col, !isCurrentMonth(row.salesMonth))" />
</div>
<!-- 公式计算 -->
<div v-else-if="col.type === 'formula'">
......@@ -270,6 +271,28 @@ const handleDialogClose = () => {
// 然后关闭弹窗
showTableInDialog.value = false
}
/*************** 非当月置灰行 ***************/
// 获取当前月份的函数
const getCurrentMonth = () => {
const now = new Date();
const year = now.getFullYear();
const month = String(now.getMonth() + 1).padStart(2, '0');
return `${year}-${month}`;
};
// 检查是否为当前月的函数
const isCurrentMonth = (salesMonth) => {
return salesMonth === getCurrentMonth();
};
// 行样式函数
const tableRowStyle = ({ row }) => {
if (!isCurrentMonth(row.salesMonth)) {
return { backgroundColor: '#f5f7fa' }; // 灰色背景
}
return {};
};
</script>
<style scoped
......
......@@ -3791,7 +3791,8 @@ export const getSixLittleDiamondsConfig = (submitChange) => {
)
},
fill: true,
width: 210
width: 210,
requestKey: ['gwExecuted6']
},
{
label: '六小金刚批发挂网陈列费',
......@@ -3803,15 +3804,13 @@ export const getSixLittleDiamondsConfig = (submitChange) => {
},
{
label: '六小金刚批发挂网是否',
subLabel: '按实际执行',
subLabel: '按计划执行',
prop: 'gwExecuted6',
visible: true,
type: 'formula',
func: (row) => {
// 判断区间,未执行,部分执行,执行
if (!row.actualGw6 || row.actualGw6 == 0) {
row.gwExecuted6 = '未执行'
} else if (row.actualGw6 !== row.plannedGw6) {
// 实际不等于计划的都是未执行
if (row.actualGw6 !== row.plannedGw6) {
row.gwExecuted6 = '未执行'
} else {
row.gwExecuted6 = '执行'
......
......@@ -101,206 +101,157 @@ const getTableList = () => {
display: flex;
flex-direction: column;
overflow: hidden;
}
/* 因为表格会被挪走,所以必须独立样式无法嵌套在别人内 */
/* 表格样式 */
.table-container {
flex: 1;
/* 这是关键,让表格容器自动占据剩余空间 */
display: flex;
flex-direction: column;
min-height: 0;
/* 解决flex子项内容溢出问题 */
.auto-fit-header-table {
/* 表格样式 */
.table-container {
flex: 1;
/* 这是关键,让表格容器自动占据剩余空间 */
display: flex;
flex-direction: column;
min-height: 0;
/* 列样式 */
.column-style {
/* 解决flex子项内容溢出问题 */
.auto-fit-header-table {
flex: 1;
/* 列头样式 */
.formula-column {
display: flex;
justify-content: center;
align-items: center;
/* 列样式 */
.column-style {
.column {
/* 列头样式 */
.formula-column {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
p {
margin: 0;
font-size: 12px;
color: #606266;
.column {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
p {
margin: 0;
font-size: 12px;
color: #606266;
}
}
}
.el-icon {
margin-left: 2px;
.el-icon {
margin-left: 2px;
}
}
}
/* 单元格样式 */
/* 展示模式单元格(仅展示模式生效) */
.show-cell-style {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* 自定义单元格样式(仅填充模式生效) */
.cell-style {
>div {
display: flex;
flex-direction: column;
align-items: center;
/* 单元格样式 */
/* 展示模式单元格(仅展示模式生效) */
.show-cell-style {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
>span {
text-align: left;
text-indent: 5px;
display: inline-block;
width: 80%;
background-color: #e1e2e6;
border-bottom: 1px solid #ebeef5;
/* 自定义单元格样式(仅填充模式生效) */
.cell-style {
>div {
display: flex;
flex-direction: column;
align-items: center;
>span {
text-align: left;
text-indent: 5px;
display: inline-block;
width: 80%;
background-color: #e1e2e6;
border-bottom: 1px solid #ebeef5;
}
}
}
/* 表格内下拉框 */
.el-select {
width: 100% !important;
padding: 10px;
/* 表格内下拉框 */
.el-select {
width: 100% !important;
padding: 10px;
/* 非 disabled 状态下的背景颜色 */
&.no-disabled ::v-deep(.el-select__wrapper) {
border: 4px solid var(--el-background-editor-cell) !important;
/* 非 disabled 状态下的背景颜色 */
&.no-disabled ::v-deep(.el-select__wrapper) {
border: 4px solid var(--el-background-editor-cell) !important;
}
}
}
.el-input {
height: 32px !important;
/* box-sizing: content-box; */
padding: 0 10px;
width: 100%;
.el-input {
height: 32px !important;
/* box-sizing: content-box; */
padding: 0 10px;
width: 100%;
/* 非 disabled 状态下的背景颜色 */
&.no-disabled ::v-deep(.el-input__wrapper) {
border: 4px solid var(--el-background-editor-cell) !important;
}
/* 非 disabled 状态下的背景颜色 */
&.no-disabled ::v-deep(.el-input__wrapper) {
border: 4px solid var(--el-background-editor-cell) !important;
}
}
.date-picker {
width: 100%;
padding: 10px;
.date-picker {
width: 100%;
padding: 10px;
/* 非 disabled 状态下的背景颜色 */
&.no-disabled ::v-deep(.el-input__wrapper) {
border: 4px solid var(--el-background-editor-cell) !important;
}
/* 非 disabled 状态下的背景颜色 */
&.no-disabled ::v-deep(.el-input__wrapper) {
border: 4px solid var(--el-background-editor-cell) !important;
::v-deep(.el-input) {
width: 100%;
padding: 0;
}
}
}
::v-deep(.el-input) {
width: 100%;
padding: 0;
}
/* 普通文字单元格(仅填充模式生效) */
.fill-span-wrap {
/* 超出省略号 */
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
padding: 0 10px;
}
}
/* 普通文字单元格(仅填充模式生效) */
.fill-span-wrap {
/* 超出省略号 */
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
padding: 0 10px;
}
}
/* 填报模式-单元格 */
&.cell-no-padding {
/* 填报模式-单元格 */
&.cell-no-padding {
/* 无上下内边距 */
::v-deep(.el-table__row) {
.el-table__cell {
padding-top: 0;
padding-bottom: 0;
/* 无上下内边距 */
::v-deep(.el-table__row) {
.el-table__cell {
padding-top: 0;
padding-bottom: 0;
.cell {
padding: 0 !important;
.cell {
padding: 0 !important;
}
}
}
}
}
}
/* 分页器 */
.pagination-container {
margin: 10px;
/* 分页器 */
.pagination-container {
margin: 10px;
}
}
}
</style>
<style lang="scss">
/* 表格弹窗 */
.table-dialog-modal {
padding: 0;
/* 关键:覆盖Element Plus对话框的默认最大宽度 */
.el-dialog {
width: 100% !important;
max-width: none !important;
margin: 0 !important;
height: 100vh;
display: flex;
flex-direction: column;
.el-dialog__body {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden !important;
padding-bottom: 5px;
.dialog-table-container {
flex: 1;
height: 100%;
.table-container {
flex: 1;
display: flex;
flex-direction: column;
height: 100%;
.pagination-container {
margin-left: auto;
}
}
/* 加深表头背景颜色 */
::v-deep(.el-table__header-wrapper) {
.el-table__header {
th {
background-color: #dcdfe6 !important;
color: #303133 !important;
font-weight: bold;
}
}
}
}
// 不显示数字输入框的 spinner
.no-spinner input::-webkit-inner-spin-button,
.no-spinner input::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}
.no-spinner {
-moz-appearance: textfield;
}
// 填入数字超过计划值时,红色文字提示
.red-text {
input {
color: red !important;
}
}
</style>
\ No newline at end of file
</style>
......@@ -46,6 +46,7 @@ const handleClickTabs = (tab) => {
}
</script>
<style scoped
lang="scss">
.app-container {
......@@ -53,6 +54,24 @@ const handleClickTabs = (tab) => {
.container {
padding: 10px;
.el-tabs {
height: 100%;
display: flex;
flex-direction: column-reverse;
.el-tabs__content {
display: flex;
flex-direction: column;
height: 100%;
.el-tab-pane {
height: 100%;
display: flex;
flex-direction: column;
}
}
}
}
}
</style>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论