15 changed files with 1222 additions and 518 deletions
-
1.env.development
-
1.env.production
-
2package.json
-
1public/static/config.js
-
58src/api/system/documentArchives.js
-
28src/views/archivesMIOD/miodLibrary/index.vue
-
157src/views/archivesMIOD/miodLibrary/module/detail.vue
-
2src/views/archivesMIOD/miodSearch/index.vue
-
212src/views/archivesMIOD/miodSearch/module/resultList.vue
-
117src/views/archivesMIOD/miodStatistics/index copy.vue
-
8src/views/archivesMIOD/miodStatistics/index.vue
-
412src/views/archivesMIOD/miodStatistics/miodTable copy.vue
-
356src/views/archivesMIOD/miodStatistics/miodTable.vue
-
154src/views/components/BindingTagDlg.vue
-
103src/views/system/borrowerManage/index.vue
@ -1,117 +0,0 @@ |
|||
<template> |
|||
<div class="app-container"> |
|||
<div style="height: calc(100vh - 140px); overflow-y: scroll; background: #fff; padding: 20px;"> |
|||
<!-- 第一个表格 --> |
|||
<el-table :data="tableData1" border> |
|||
<el-table-column prop="year" label="年份" width="60" align="center" /> |
|||
<el-table-column prop="jsdw" label="局属单位" width="80" align="center" /> |
|||
<el-table-column prop="wuqiTa" label="武其他" width="80" align="center" /> |
|||
<el-table-column prop="wuZhengBan" label="武政办" width="80" align="center" /> |
|||
<el-table-column prop="zhengFuJiLiao" label="政府纪要" width="80" align="center" /> |
|||
<el-table-column prop="zhongYangZhong" label="中央中央" width="80" align="center" /> |
|||
<el-table-column prop="total" label="合计" width="60" align="center" /> |
|||
</el-table> |
|||
|
|||
<!-- 第二个表格 --> |
|||
<el-table :data="tableData2" border class="mt-10"> |
|||
<el-table-column prop="year" label="年份" width="60" align="center" /> |
|||
<el-table-column prop="公开" label="公开" width="80" align="center" /> |
|||
<el-table-column prop="限制" label="限制" width="80" align="center" /> |
|||
<el-table-column prop="秘密" label="秘密" width="80" align="center" /> |
|||
<el-table-column prop="机密" label="机密" width="80" align="center" /> |
|||
<el-table-column prop="绝密" label="绝密" width="80" align="center" /> |
|||
<el-table-column prop="total" label="合计" width="60" align="center" /> |
|||
</el-table> |
|||
|
|||
<!-- 第三个表格 --> |
|||
<el-table :data="tableData3" border class="mt-10"> |
|||
<el-table-column prop="year" label="年份" width="60" align="center" /> |
|||
<el-table-column prop="pingJi" label="平急" width="80" align="center" /> |
|||
<el-table-column prop="jiaJi" label="加急" width="80" align="center" /> |
|||
<el-table-column prop="teJi" label="特急" width="80" align="center" /> |
|||
<el-table-column prop="teTi" label="特提" width="80" align="center" /> |
|||
<el-table-column prop="total" label="合计" width="60" align="center" /> |
|||
</el-table> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
|
|||
export default { |
|||
name: 'MiodStatistics', |
|||
components: { |
|||
}, |
|||
data() { |
|||
return { |
|||
tableData1: [ |
|||
{ year: '2020', jsdw: 1, wuqiTa: 1, wuZhengBan: 1, zhengFuJiLiao: 1, zhongYangZhong: 1, total: 5 }, |
|||
{ year: '2021', jsdw: 1, wuqiTa: 1, wuZhengBan: 1, zhengFuJiLiao: 1, zhongYangZhong: 1, total: 5 }, |
|||
{ year: '2022', jsdw: 1, wuqiTa: 1, wuZhengBan: 1, zhengFuJiLiao: 1, zhongYangZhong: 1, total: 5 }, |
|||
{ year: '2023', jsdw: 1, wuqiTa: 1, wuZhengBan: 1, zhengFuJiLiao: 1, zhongYangZhong: 1, total: 5 }, |
|||
{ year: '2024', jsdw: 1, wuqiTa: 1, wuZhengBan: 1, zhengFuJiLiao: 1, zhongYangZhong: 1, total: 5 }, |
|||
{ year: '2025', jsdw: 1, wuqiTa: 1, wuZhengBan: 1, zhengFuJiLiao: 1, zhongYangZhong: 1, total: 5 }, |
|||
{ year: '合计', jsdw: 6, wuqiTa: 6, wuZhengBan: 6, zhengFuJiLiao: 6, zhongYangZhong: 6, total: 30 } |
|||
], |
|||
tableData2: [ |
|||
{ year: '2020', 公开: 1, 限制: 1, 秘密: 1, 机密: 1, 绝密: 1, total: 5 }, |
|||
{ year: '2021', 公开: 1, 限制: 1, 秘密: 1, 机密: 1, 绝密: 1, total: 5 }, |
|||
{ year: '2022', 公开: 1, 限制: 1, 秘密: 1, 机密: 1, 绝密: 1, total: 5 }, |
|||
{ year: '2023', 公开: 1, 限制: 1, 秘密: 1, 机密: 1, 绝密: 1, total: 5 }, |
|||
{ year: '2024', 公开: 1, 限制: 1, 秘密: 1, 机密: 1, 绝密: 1, total: 5 }, |
|||
{ year: '2025', 公开: 1, 限制: 1, 秘密: 1, 机密: 1, 绝密: 1, total: 5 }, |
|||
{ year: '合计', 公开: 6, 限制: 6, 秘密: 6, 机密: 6, 绝密: 6, total: 30 } |
|||
], |
|||
tableData3: [ |
|||
{ year: '2020', pingJi: 1, jiaJi: 1, teJi: 1, teTi: 2, total: 5 }, |
|||
{ year: '2021', pingJi: 1, jiaJi: 1, teJi: 1, teTi: 2, total: 5 }, |
|||
{ year: '2022', pingJi: 1, jiaJi: 1, teJi: 1, teTi: 2, total: 5 }, |
|||
{ year: '2023', pingJi: 1, jiaJi: 1, teJi: 1, teTi: 2, total: 5 }, |
|||
{ year: '2024', pingJi: 1, jiaJi: 1, teJi: 1, teTi: 2, total: 5 }, |
|||
{ year: '2025', pingJi: 1, jiaJi: 1, teJi: 1, teTi: 2, total: 5 }, |
|||
{ year: '合计', pingJi: 6, jiaJi: 6, teJi: 6, teTi: 12, total: 30 } |
|||
] |
|||
} |
|||
}, |
|||
methods: { |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.mt-10 { |
|||
margin-top: 18px; |
|||
} |
|||
// ::v-deep .el-table{ |
|||
// width: auto !important; |
|||
// } |
|||
// ::v-deep .el-table .cell{ |
|||
// padding: 0 !important; |
|||
// margin-left: -2px !important; |
|||
// margin-top: -2px !important; |
|||
// } |
|||
// ::v-deep .el-table tr .el-table__cell{ |
|||
// height: 28px !important; |
|||
// } |
|||
::v-deep .el-table__header-wrapper { |
|||
background-color: transparent !important; |
|||
} |
|||
::v-deep .el-table::before, .el-table--group::after, |
|||
::v-deep .el-table--border::after{ |
|||
background-color: transparent !important; |
|||
} |
|||
// ::v-deep .el-table .el-table__body-wrapper td.el-table__cell, |
|||
// ::v-deep .el-table .el-table__fixed-right td.el-table__cell { |
|||
// padding: 0 !important; |
|||
// border-left: 1px solid #000; |
|||
// border-bottom: 1px solid #000; |
|||
// border-right: 1px solid #000; |
|||
// } |
|||
// ::v-deep.el-table .el-table__header-wrapper th.el-table__cell, |
|||
// ::v-deep.el-table .el-table__header th.el-table__cell{ |
|||
// border: 1px solid #000; |
|||
// } |
|||
::v-deep .el-table--group, .el-table--border{ |
|||
border: none !important; |
|||
} |
|||
</style> |
@ -0,0 +1,412 @@ |
|||
<template> |
|||
<div style="height: calc(100vh - 234px); margin-top: 20px; padding-bottom: 20px; overflow-y: scroll;"> |
|||
<el-button :loading="exportLoading" style="padding: 7px 10px; position: absolute; right: 6px; top: -6px;" @click="handleExport"> |
|||
<i class="iconfont icon-daochu" /> |
|||
导出 |
|||
</el-button> |
|||
<div> |
|||
<!-- 第一个表格 --> |
|||
<div v-if="activeIndex===0" class="table-content"> |
|||
<div class="table-right-date">截止到:{{ nowDate }}</div> |
|||
<el-table ref="table" :data="tableData1" border :cell-style="tableCellStyle"> |
|||
<el-table-column prop="year" label="年份" width="60" align="center" /> |
|||
<el-table-column prop="中共中央" label="中共中央" width="80" align="center" /> |
|||
<el-table-column prop="国务院" label="国务院" width="80" align="center" /> |
|||
<el-table-column prop="省交通厅" label="省交通厅" width="80" align="center" /> |
|||
<el-table-column prop="省委" label="省委" width="80" align="center" /> |
|||
<el-table-column prop="市委" label="市委" width="80" align="center" /> |
|||
<el-table-column prop="省政府" label="省政府" width="80" align="center" /> |
|||
<el-table-column prop="市政府" label="市政府" width="80" align="center" /> |
|||
<el-table-column prop="省市领导批示件" label="省市领导批示件" width="120" align="center" /> |
|||
<el-table-column prop="综合" label="综合" width="80" align="center" /> |
|||
<el-table-column prop="total" label="合计" width="60" align="center" /> |
|||
</el-table> |
|||
</div> |
|||
<!-- 第二个表格 --> |
|||
<!-- 默认显示当前年份 --> |
|||
<div v-if="activeIndex===1" class="table-content"> |
|||
<div class="table-right-date">选择年份: |
|||
<el-select v-model="yearValue" placeholder="请选择" style="width: 90px;"> |
|||
<el-option |
|||
v-for="item in yearsOptions" |
|||
:key="item.id" |
|||
:label="item.label" |
|||
:value="item.id" |
|||
/> |
|||
</el-select> |
|||
</div> |
|||
<el-table ref="table" :data="tableData2" border :cell-style="tableCellStyle"> |
|||
<el-table-column prop="month" label="月份" width="60" align="center" /> |
|||
<el-table-column prop="ZB" label="中共中央" width="80" align="center" /> |
|||
<el-table-column prop="GB" label="国务院" width="80" align="center" /> |
|||
<el-table-column prop="ST" label="省交通厅" width="80" align="center" /> |
|||
<el-table-column prop="EB" label="省委" width="80" align="center" /> |
|||
<el-table-column prop="SW" label="市委" width="80" align="center" /> |
|||
<el-table-column prop="EZ" label="省政府" width="80" align="center" /> |
|||
<el-table-column prop="WZ" label="市政府" width="80" align="center" /> |
|||
<el-table-column prop="PS" label="省市领导批示件" width="120" align="center" /> |
|||
<el-table-column prop="ZH" label="综合" width="80" align="center" /> |
|||
<el-table-column prop="total" label="合计" width="60" align="center" /> |
|||
</el-table> |
|||
</div> |
|||
|
|||
<!-- 第三个表格 --> |
|||
<!-- 默认是起止时间以当天时间为准给近1个月的数据 --> |
|||
<div v-if="activeIndex===2" class="table-content"> |
|||
<div class="table-right-date">自定义起止时间: |
|||
<el-date-picker |
|||
v-model="customYear" |
|||
type="datetimerange" |
|||
range-separator="至" |
|||
start-placeholder="开始日期" |
|||
end-placeholder="结束日期" |
|||
/> |
|||
</div> |
|||
<el-table ref="table" :data="tableData3" border :cell-style="tableCellStyle"> |
|||
<el-table-column prop="name" label="借阅者" width="100" align="center" /> |
|||
<el-table-column prop="ZB" label="中共中央" width="80" align="center" /> |
|||
<el-table-column prop="GB" label="国务院" width="80" align="center" /> |
|||
<el-table-column prop="ST" label="省交通厅" width="80" align="center" /> |
|||
<el-table-column prop="EB" label="省委" width="80" align="center" /> |
|||
<el-table-column prop="SW" label="市委" width="80" align="center" /> |
|||
<el-table-column prop="EZ" label="省政府" width="80" align="center" /> |
|||
<el-table-column prop="WZ" label="市政府" width="80" align="center" /> |
|||
<el-table-column prop="PS" label="省市领导批示件" width="120" align="center" /> |
|||
<el-table-column prop="ZH" label="综合" width="80" align="center" /> |
|||
<el-table-column prop="total" label="合计" width="60" align="center" /> |
|||
</el-table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import CRUD, { presenter, crud } from '@crud/crud' |
|||
import { getCurrentTime } from '@/utils/index' |
|||
import { FetchAnnualStatistics } from '@/api/system/documentArchives' |
|||
import * as XLSX from 'xlsx' |
|||
import { saveAs } from 'file-saver' // 简化文件保存 |
|||
|
|||
export default { |
|||
name: 'MiodTable', |
|||
components: { }, |
|||
mixins: [presenter(), crud()], |
|||
cruds() { |
|||
return CRUD({ |
|||
url: 'api/archivesUtilize/initborrowLog', |
|||
title: '公文统计', |
|||
optShow: { |
|||
add: false, |
|||
edit: false, |
|||
del: false, |
|||
download: false, |
|||
reset: false, |
|||
group: false |
|||
} |
|||
}) |
|||
}, |
|||
props: { |
|||
activeIndex: { |
|||
type: Number, |
|||
default: 0 |
|||
}, |
|||
isUserCenter: { |
|||
type: Boolean, |
|||
default: false |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
exportLoading: false, |
|||
nowDate: getCurrentTime(), |
|||
yearValue: 2025, |
|||
yearsOptions: [], |
|||
customYear: this.calculateDefaultRange(), |
|||
tableData1: [], |
|||
tableData2: [ |
|||
{ month: '1月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '2月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '3月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '4月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '5月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '6月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '7月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '8月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '9月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '10月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '11月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ month: '12月', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 } |
|||
], |
|||
tableData3: [ |
|||
{ name: '张三', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ name: '李四', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ name: '王五', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ name: '办公室', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 }, |
|||
{ name: '档案室', ZB: 1, GB: 1, ST: 1, EB: 1, SW: 1, EZ: 1, WZ: 1, PS: 1, ZH: 1, total: 9 } |
|||
], |
|||
originalData: [] |
|||
} |
|||
}, |
|||
watch: { |
|||
activeIndex: function(newValue, oldValue) { |
|||
this.crud.toQuery() |
|||
} |
|||
}, |
|||
created() { |
|||
this.generateYearsData() |
|||
}, |
|||
mounted() { |
|||
this.getAnnualStatistics() |
|||
}, |
|||
methods: { |
|||
getAnnualStatistics() { |
|||
FetchAnnualStatistics().then((res) => { |
|||
console.log('res', res) |
|||
this.originalData = res |
|||
this.formatTableData() |
|||
}).catch(err => { |
|||
console.log(err) |
|||
}) |
|||
}, |
|||
// 格式化表格数据 |
|||
formatTableData() { |
|||
const formattedData = [] |
|||
|
|||
// 提取年份并排序(转为数字后倒序) |
|||
const sortedYears = Object.keys(this.originalData) |
|||
.filter(year => year !== '合计') // 排除原始数据中的合计行 |
|||
.sort((a, b) => parseInt(b) - parseInt(a)) // 按年份倒序排列 |
|||
|
|||
// 按排序后的年份顺序处理数据 |
|||
sortedYears.forEach(year => { |
|||
const values = this.originalData[year] |
|||
formattedData.push({ |
|||
year, |
|||
中共中央: values['中共中央'], |
|||
国务院: values['国务院'], |
|||
省交通厅: values['省交通厅'], |
|||
省委: values['省委'], |
|||
市委: values['市委'], |
|||
省政府: values['省政府'], |
|||
市政府: values['市政府'], |
|||
省市领导批示件: values['省市领导批示件'], |
|||
综合: values['综合'], |
|||
total: values['合计'] |
|||
}) |
|||
}) |
|||
|
|||
// 直接使用原始数据中的合计行(如果存在) |
|||
if (this.originalData['合计']) { |
|||
const totalRow = this.originalData['合计'] |
|||
formattedData.push({ |
|||
year: '合计', |
|||
中共中央: totalRow['中共中央'], |
|||
国务院: totalRow['国务院'], |
|||
省交通厅: totalRow['省交通厅'], |
|||
省委: totalRow['省委'], |
|||
市委: totalRow['市委'], |
|||
省政府: totalRow['省政府'], |
|||
市政府: totalRow['市政府'], |
|||
省市领导批示件: totalRow['省市领导批示件'], |
|||
综合: totalRow['综合'], |
|||
total: totalRow['合计'] |
|||
}) |
|||
} |
|||
|
|||
this.tableData1 = formattedData |
|||
console.log('tableData1', this.tableData1) |
|||
}, |
|||
async handleExport() { |
|||
this.exportLoading = true |
|||
try { |
|||
let exportData = [] |
|||
let sheetName = '' |
|||
|
|||
// 根据 activeIndex 确定导出的数据和表名 |
|||
switch (this.activeIndex) { |
|||
case 0: |
|||
exportData = this.tableData1.map(item => ({ |
|||
年份: item.year, |
|||
中共中央: item['中共中央'], |
|||
国务院: item['国务院'], |
|||
省交通厅: item['省交通厅'], |
|||
省委: item['省委'], |
|||
市委: item['市委'], |
|||
省政府: item['省政府'], |
|||
市政府: item['市政府'], |
|||
省市领导批示件: item['省市领导批示件'], |
|||
综合: item['综合'], |
|||
合计: item.total |
|||
})) |
|||
sheetName = '馆藏年度统计' |
|||
break |
|||
case 1: |
|||
exportData = this.tableData2.map(item => ({ |
|||
月份: item.month, |
|||
中共中央: item.ZB, |
|||
国务院: item.GB, |
|||
省交通厅: item.ST, |
|||
省委: item.EB, |
|||
市委: item.SW, |
|||
省政府: item.EZ, |
|||
市政府: item.WZ, |
|||
省市领导批示件: item.PS, |
|||
综合: item.ZH, |
|||
合计: item.total |
|||
})) |
|||
sheetName = '馆藏月度统计' |
|||
break |
|||
case 2: |
|||
exportData = this.tableData3.map(item => ({ |
|||
借阅者: item.name, |
|||
中共中央: item.ZB, |
|||
国务院: item.GB, |
|||
省交通厅: item.ST, |
|||
省委: item.EB, |
|||
市委: item.SW, |
|||
省政府: item.EZ, |
|||
市政府: item.WZ, |
|||
省市领导批示件: item.PS, |
|||
综合: item.ZH, |
|||
合计: item.total |
|||
})) |
|||
sheetName = '传阅统计' |
|||
break |
|||
default: |
|||
break |
|||
} |
|||
|
|||
// 生成工作簿 |
|||
const workbook = XLSX.utils.book_new() |
|||
const sheet = XLSX.utils.json_to_sheet(exportData) |
|||
XLSX.utils.book_append_sheet(workbook, sheet, sheetName) |
|||
|
|||
// 关键:使用 buffer 格式 |
|||
const wbout = XLSX.write(workbook, { |
|||
bookType: 'xlsx', |
|||
type: 'array', |
|||
cellDates: true |
|||
}) |
|||
|
|||
// 创建 Blob |
|||
const blob = new Blob([wbout], { |
|||
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' |
|||
}) |
|||
saveAs(blob, `${sheetName}_${new Date().getTime()}.xlsx`) |
|||
} catch (error) { |
|||
console.error('导出错误:', error) |
|||
this.$message.error('导出失败,请检查数据格式!') |
|||
} finally { |
|||
this.exportLoading = false |
|||
} |
|||
}, |
|||
tableCellStyle({ row, column, rowIndex, columnIndex }) { |
|||
// 最后一列设置背景色为 lightblue |
|||
if (columnIndex === this.$refs.table.columns.length - 1) { |
|||
return 'background-color: #f5f7fa;border-top: 1px solid #dfe6ec;border-bottom: 1px solid #dfe6ec;' |
|||
} |
|||
return '' |
|||
}, |
|||
generateYearsData() { |
|||
const currentYear = new Date().getFullYear() // 获取当前年份 |
|||
const startYear = 2007 // 起始年份 |
|||
|
|||
const years = [] |
|||
for (let year = currentYear; year >= startYear; year--) { |
|||
years.push({ |
|||
id: year, |
|||
label: year |
|||
}) |
|||
} |
|||
|
|||
this.yearsOptions = years |
|||
}, |
|||
// 计算默认时间范围的方法 |
|||
calculateDefaultRange() { |
|||
const now = new Date() // 获取当前时间 |
|||
const oneMonthAgo = new Date() // 创建一个月前的时间对象 |
|||
oneMonthAgo.setMonth(now.getMonth() - 1) // 月份减 1(当前月的第一天向前推一个月) |
|||
|
|||
// 处理日期边界:若当前是月初,需取上个月的同一天(避免跨月错误) |
|||
if (now.getDate() < oneMonthAgo.getDate()) { |
|||
oneMonthAgo.setDate(1) // 若上月天数不足,设为上月第一天 |
|||
} |
|||
|
|||
// 转换为 ISO 格式字符串(需与组件的时间格式匹配,默认支持 'YYYY-MM-DD HH:mm:ss') |
|||
const start = this.formatDate(oneMonthAgo) |
|||
const end = this.formatDate(now) // 结束时间为当前日期 |
|||
|
|||
return [start, end] |
|||
}, |
|||
formatDate(date) { |
|||
const year = date.getFullYear() |
|||
const month = String(date.getMonth() + 1).padStart(2, '0') // 月份补零 |
|||
const day = String(date.getDate()).padStart(2, '0') // 日期补零 |
|||
const hours = String(date.getHours()).padStart(2, '0') // 小时补零(可选) |
|||
const minutes = String(date.getMinutes()).padStart(2, '0') // 分钟补零(可选) |
|||
const seconds = String(date.getSeconds()).padStart(2, '0') // 秒补零(可选) |
|||
// 若不需要时分秒,可省略后面部分,格式为 'YYYY-MM-DD' |
|||
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}` |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.table-content { |
|||
box-sizing: border-box; |
|||
display: inline-block; |
|||
border: 1px solid #dfe6ec; |
|||
border-bottom: none; |
|||
border-right: none; |
|||
font-size: 14px; |
|||
.table-right-date{ |
|||
line-height: 40px; |
|||
text-align: right; |
|||
padding: 5px 10px; |
|||
font-weight: bold; |
|||
color: #0c0e1e; |
|||
border-bottom: 1px solid #dfe6ec; |
|||
border-right: 1px solid #dfe6ec; |
|||
} |
|||
} |
|||
// ::v-deep .el-table{ |
|||
// width: auto !important; |
|||
// } |
|||
// ::v-deep .el-table .cell{ |
|||
// padding: 0 !important; |
|||
// margin-left: -2px !important; |
|||
// margin-top: -2px !important; |
|||
// } |
|||
// ::v-deep .el-table tr .el-table__cell{ |
|||
// height: 28px !important; |
|||
// } |
|||
::v-deep .el-table__header-wrapper { |
|||
background-color: transparent !important; |
|||
} |
|||
::v-deep .el-table::before, .el-table--group::after, |
|||
::v-deep .el-table--border::after{ |
|||
background-color: transparent !important; |
|||
} |
|||
// ::v-deep .el-table .el-table__body-wrapper td.el-table__cell, |
|||
// ::v-deep .el-table .el-table__fixed-right td.el-table__cell { |
|||
// padding: 0 !important; |
|||
// border-left: 1px solid #000; |
|||
// border-bottom: 1px solid #000; |
|||
// border-right: 1px solid #000; |
|||
// } |
|||
// ::v-deep.el-table .el-table__header-wrapper th.el-table__cell, |
|||
// ::v-deep.el-table .el-table__header th.el-table__cell{ |
|||
// border: 1px solid #000; |
|||
// } |
|||
::v-deep .el-table--group, .el-table--border{ |
|||
border: none !important; |
|||
} |
|||
|
|||
/* 在 style 中 */ |
|||
::v-deep .el-table .el-table__body tr:last-child td { |
|||
background-color: #f5f7fa !important; |
|||
border-top: 1px solid #dfe6ec !important; |
|||
border-bottom: 1px solid #dfe6ec !important; |
|||
} |
|||
</style> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue