9 changed files with 735 additions and 7 deletions
-
1src/api/eam/eamProject.js
-
13src/api/eam/eamProofing.js
-
1src/main.js
-
193src/views/modules/eam/dashBoard.vue
-
6src/views/modules/eam/eamBuDocumentListDefinition.vue
-
4src/views/modules/eam/eamDocumentTypeDefinition.vue
-
66src/views/modules/eam/eamProjectInfo.vue
-
152src/views/modules/eam/eamProjectInfoForConfirm.vue
-
306src/views/modules/eam/eamProjectInfoForUploads.vue
@ -0,0 +1,193 @@ |
|||
<template> |
|||
<div> |
|||
<el-row :gutter="20"> |
|||
<el-col :span="6"> |
|||
<el-card @click.native="navigateToMes('unfinishedProjects',counts)" class="card-item"> |
|||
<div class="card-title">我参与的未结项目</div> |
|||
<div class="card-count">{{ counts.unfinishedProjectsCount }}</div> |
|||
</el-card> |
|||
</el-col> |
|||
<el-col :span="6"> |
|||
<el-card @click.native="navigateToMes('pendingUploads',counts)" class="card-item"> |
|||
<div class="card-title">待上传文件</div> |
|||
<div class="card-count">{{ counts.pendingUploadsCount }}</div> |
|||
</el-card> |
|||
</el-col> |
|||
<el-col :span="6"> |
|||
<el-card @click.native="navigateToMes('pendingConfirmations',counts)" class="card-item"> |
|||
<div class="card-title">待生产确认的项目</div> |
|||
<div class="card-count">{{ counts.pendingConfirmationsCount }}</div> |
|||
</el-card> |
|||
</el-col> |
|||
</el-row> |
|||
<el-row :gutter="20" style="margin-top: 10px;"> |
|||
<el-col :span="6"> |
|||
<el-card @click.native="navigateToMes('allProjects',counts)" class="card-item"> |
|||
<div class="card-title">我参与的所有项目</div> |
|||
<div class="card-count">{{ counts.allProjectsCount }}</div> |
|||
</el-card> |
|||
</el-col> |
|||
<el-col :span="6"> |
|||
<el-card @click.native="navigateToMes('overdueUploads',counts)" class="card-item"> |
|||
<div class="card-title">逾期的待上传文件</div> |
|||
<div class="card-count">{{ counts.overdueUploadsCount }}</div> |
|||
</el-card> |
|||
</el-col> |
|||
<el-col :span="6"> |
|||
<el-card @click.native="navigateToMes('overdueConfirmations',counts)" class="card-item"> |
|||
<div class="card-title">逾期的待生产确认的项目</div> |
|||
<div class="card-count">{{ counts.overdueConfirmationsCount }}</div> |
|||
</el-card> |
|||
</el-col> |
|||
</el-row> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import { agencyMatter } from "../../../api/eam/eamProject"; |
|||
|
|||
export default { |
|||
data() { |
|||
return { |
|||
counts: { |
|||
unfinishedProjectsCount: 0, |
|||
allProjectsCount: 0, |
|||
pendingUploadsCount: 0, |
|||
overdueUploadsCount: 0, |
|||
pendingConfirmationsCount: 0, |
|||
overdueConfirmationsCount: 0, |
|||
unfinishedProjects: [], |
|||
allProjects: [], |
|||
pendingUploads: [], |
|||
overdueUploads: [], |
|||
pendingConfirmations: [], |
|||
overdueConfirmations: [], |
|||
}, |
|||
intervalId: null, |
|||
}; |
|||
}, |
|||
created() { |
|||
this.fetchCounts(); |
|||
this.startAutoRefresh(); |
|||
}, |
|||
beforeDestroy() { |
|||
this.stopAutoRefresh(); |
|||
}, |
|||
methods: { |
|||
fetchCounts() { |
|||
agencyMatter() |
|||
.then(({ data }) => { |
|||
this.counts = data; |
|||
this.counts.unfinishedProjectsCount = this.counts.unfinishedProjects.length; |
|||
this.counts.allProjectsCount = this.counts.allProjects.length; |
|||
this.counts.pendingUploadsCount = this.counts.pendingUploads.length; |
|||
this.counts.overdueUploadsCount = this.counts.overdueUploads.length; |
|||
this.counts.pendingConfirmationsCount = this.counts.pendingConfirmations.length; |
|||
this.counts.overdueConfirmationsCount = this.counts.overdueConfirmations.length; |
|||
}) |
|||
.catch((error) => { |
|||
console.error("Error fetching project counts:", error); |
|||
}); |
|||
}, |
|||
navigateToMes(path, row) { |
|||
let projectIds = ''; |
|||
if (path === 'unfinishedProjects') { |
|||
for (let i = 0; i < row.unfinishedProjects.length; i++) { |
|||
// 使用逗号拼接 unfinishedProjects.projectId,如果是最后一个则不加逗号 |
|||
projectIds += row.unfinishedProjects[i].projectId + (i === row.unfinishedProjects.length - 1 ? '' : ','); |
|||
} |
|||
this.$router.push({ path: 'eam-eamProjectInfo', query: { projectId: projectIds } }); |
|||
} |
|||
else if (path === 'allProjects') { |
|||
for (let i = 0; i < row.allProjects.length; i++) { |
|||
projectIds += row.allProjects[i].projectId + (i === row.allProjects.length - 1 ? '' : ','); |
|||
} |
|||
this.$router.push({ path: 'eam-eamProjectInfo', query: { projectId: projectIds } }); |
|||
} |
|||
else if (path === 'pendingUploads') { |
|||
for (let i = 0; i < row.pendingUploads.length; i++) { |
|||
projectIds += row.pendingUploads[i].projectId + (i === row.pendingUploads.length - 1 ? '' : ','); |
|||
} |
|||
this.$router.push({ name: 'eam-eamProjectInfoForUploads', query: { projectId: projectIds,flag:'1' } }); |
|||
} |
|||
else if (path === 'overdueUploads') { |
|||
for (let i = 0; i < row.overdueUploads.length; i++) { |
|||
projectIds += row.overdueUploads[i].projectId + (i === row.overdueUploads.length - 1 ? '' : ','); |
|||
} |
|||
this.$router.push({ path: 'eam-eamProjectInfoForUploads', query: { projectId: projectIds,flag:'2' } }); |
|||
} |
|||
else if (path === 'pendingConfirmations') { |
|||
for (let i = 0; i < row.pendingConfirmations.length; i++) { |
|||
projectIds += row.pendingConfirmations[i].projectId + (i === row.pendingConfirmations.length - 1 ? '' : ','); |
|||
} |
|||
this.$router.push({ path: 'eam-eamProjectInfoForConfirm', query: { projectId: projectIds,flag:'3' } }); |
|||
} |
|||
else if (path === 'overdueConfirmations') { |
|||
for (let i = 0; i < row.overdueConfirmations.length; i++) { |
|||
projectIds += row.overdueConfirmations[i].projectId + (i === row.overdueConfirmations.length - 1 ? '' : ','); |
|||
} |
|||
this.$router.push({ path: 'eam-eamProjectInfoForConfirm', query: { projectId: projectIds,flag:'4' } }); |
|||
} |
|||
}, |
|||
startAutoRefresh() { |
|||
this.intervalId = setInterval(() => { |
|||
this.fetchCounts(); |
|||
}, 20000); // 每20秒刷新一次 |
|||
}, |
|||
stopAutoRefresh() { |
|||
if (this.intervalId) { |
|||
clearInterval(this.intervalId); |
|||
} |
|||
}, |
|||
}, |
|||
}; |
|||
</script> |
|||
|
|||
<style scoped> |
|||
.card-item { |
|||
cursor: pointer; |
|||
margin-bottom: 20px; |
|||
transition: transform 0.3s, box-shadow 0.3s; |
|||
overflow: hidden; |
|||
//padding: 10px; |
|||
display: flex; |
|||
flex-direction: column; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
height: 208px; |
|||
width: 230px; |
|||
margin-left: 40px; |
|||
margin-top: 10px; |
|||
} |
|||
|
|||
.card-item:hover { |
|||
transform: translateY(-5px); |
|||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); |
|||
} |
|||
|
|||
.card-title { |
|||
font-size: 18px; |
|||
font-weight: bold; |
|||
margin-bottom: 10px; |
|||
margin-top: 20px; |
|||
} |
|||
|
|||
.card-count { |
|||
font-size: 55px; |
|||
color: #17B3A3; |
|||
text-align: center; |
|||
font-weight: bold; |
|||
margin-top: 50px; |
|||
} |
|||
|
|||
.project-list { |
|||
font-size: 12px; |
|||
color: #333; |
|||
line-height: 1.5; |
|||
margin-bottom: 5px; |
|||
} |
|||
|
|||
.el-divider { |
|||
margin: 10px 0; |
|||
} |
|||
</style> |
|||
@ -0,0 +1,152 @@ |
|||
<template> |
|||
<div> |
|||
<el-table :data="dataList" |
|||
border |
|||
style="height: 100%;width: 100%;margin-top: 0px;"> |
|||
<el-table-column label="序号" type="index" align="center" :index="indexMethod"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="projectId" label="项目编码"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="documentType" label="文档类型"></el-table-column> |
|||
<el-table-column header-align="center" align="center" width="70" prop="userDisplay" label="指定确认人"></el-table-column> |
|||
<el-table-column header-align="center" align="center" :formatter="formatDate" prop="wantedConfirmDate" label="要求确认日期"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="confirmFlag" label="是否确认"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="confirmedBy" label="实际确认人"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="remark" label="备注"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="confirmedDate" label="实际确认时间"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="createDate" label="推送时间"></el-table-column> |
|||
<el-table-column header-align="center" align="center" prop="createBy" label="推送人"></el-table-column> |
|||
<el-table-column |
|||
header-align="center" |
|||
align="center" |
|||
width="90" |
|||
fixed="right" |
|||
label="操作"> |
|||
<template slot-scope="scope"> |
|||
<a type="text" size="small" @click="viewDocumentFile(scope.row)">查看附件</a> |
|||
<a type="text" size="small" @click="confirmDocument(scope.row)">确认</a> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
|
|||
import { |
|||
searchProjectUploadsDocumentList, |
|||
searchProjectOverUploadsDocumentList, |
|||
searchConfirmProgressList, searchOverConfirmProgressList |
|||
} from "../../../api/eam/eamProofing"; |
|||
import {searchConfirmProgressPusherList} from "../../../api/eam/eamProject"; |
|||
|
|||
export default { |
|||
data() { |
|||
return { |
|||
dataList: [], |
|||
confirmProgressList: [], |
|||
height: 200, |
|||
dataListLoading: false, |
|||
searchData: { |
|||
site: this.$store.state.user.site, |
|||
userId: this.$store.state.user.id, |
|||
}, |
|||
}; |
|||
}, |
|||
created() { |
|||
this.getDataList() |
|||
}, |
|||
methods: { |
|||
// 获取数据列表 |
|||
getDataList () { |
|||
if (this.$route.query.flag === '3') { |
|||
searchConfirmProgressList(this.searchData).then(({data}) => { |
|||
if (data.code === 0) { |
|||
this.dataList = data.list |
|||
// 判断是否全部存在数据 |
|||
} |
|||
}) |
|||
} else { |
|||
searchOverConfirmProgressList(this.searchData).then(({data}) => { |
|||
if (data.code === 0) { |
|||
this.dataList = data.list |
|||
// 判断是否全部存在数据 |
|||
} |
|||
}) |
|||
} |
|||
}, |
|||
|
|||
formatDate(row, column) { |
|||
// row 是当前行的数据对象 |
|||
// column 是当前列的属性信息对象 |
|||
const date = row[column.property]; |
|||
if (date) { |
|||
const s = new Date(date).toLocaleDateString('zh-CN', { year: 'numeric', month: '2-digit', day: '2-digit' }); |
|||
return s.replace(/\//g, '-') |
|||
} else { |
|||
return ''; |
|||
} |
|||
}, |
|||
rowStyle ({row}) { |
|||
}, |
|||
indexMethod(index) { |
|||
return index + 1; |
|||
}, |
|||
getCombinedDocumentType(row) { |
|||
// 根据您的需求,组合或拼接需要显示的字段 |
|||
if (row.documentType === null || row.documentType === undefined) { |
|||
return row.documentDesc |
|||
}else { |
|||
return row.documentType |
|||
} |
|||
}, |
|||
}, |
|||
}; |
|||
</script> |
|||
|
|||
<style scoped> |
|||
.card-item { |
|||
cursor: pointer; |
|||
margin-bottom: 20px; |
|||
transition: transform 0.3s, box-shadow 0.3s; |
|||
overflow: hidden; |
|||
//padding: 10px; |
|||
display: flex; |
|||
flex-direction: column; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
height: 208px; |
|||
width: 230px; |
|||
margin-left: 40px; |
|||
margin-top: 10px; |
|||
} |
|||
|
|||
.card-item:hover { |
|||
transform: translateY(-5px); |
|||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); |
|||
} |
|||
|
|||
.card-title { |
|||
font-size: 18px; |
|||
font-weight: bold; |
|||
margin-bottom: 10px; |
|||
margin-top: 20px; |
|||
} |
|||
|
|||
.card-count { |
|||
font-size: 55px; |
|||
color: #17B3A3; |
|||
text-align: center; |
|||
font-weight: bold; |
|||
margin-top: 50px; |
|||
} |
|||
|
|||
.project-list { |
|||
font-size: 12px; |
|||
color: #333; |
|||
line-height: 1.5; |
|||
margin-bottom: 5px; |
|||
} |
|||
|
|||
.el-divider { |
|||
margin: 10px 0; |
|||
} |
|||
</style> |
|||
@ -0,0 +1,306 @@ |
|||
<template> |
|||
<div> |
|||
<el-table |
|||
:data="dataList" |
|||
border |
|||
style="height: 100%;width: 100%;margin-top: 0px;" |
|||
ref="projectAllDocumentDocumentTable" |
|||
@row-click="projectAllDocumentClickRow" |
|||
:row-style="rowStyle" |
|||
v-loading="dataListLoading"> |
|||
<el-table-column label="序号" type="index" align="center" :index="indexMethod"></el-table-column> |
|||
<el-table-column |
|||
v-for="(item,index) in columnProjectAllDocumentList" :key="index" |
|||
:sortable="item.columnSortable" |
|||
:prop="item.columnProp" |
|||
:header-align="item.headerAlign" |
|||
:show-overflow-tooltip="item.showOverflowTooltip" |
|||
:align="item.align" |
|||
:fixed="item.fixed==''?false:item.fixed" |
|||
:min-width="item.columnWidth" |
|||
:label="item.columnLabel"> |
|||
<template slot-scope="scope"> |
|||
<span v-if="!item.columnHidden"> {{scope.row[item.columnProp]}}</span> |
|||
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" |
|||
style="width: 100px; height: 80px"/></span> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
|
|||
import { |
|||
searchProjectUploadsDocumentList, |
|||
searchProjectOverUploadsDocumentList, |
|||
searchConfirmProgressList, searchOverConfirmProgressList |
|||
} from "../../../api/eam/eamProofing"; |
|||
import {searchConfirmProgressPusherList} from "../../../api/eam/eamProject"; |
|||
|
|||
export default { |
|||
data() { |
|||
return { |
|||
dataList: [], |
|||
confirmProgressList: [], |
|||
height: 200, |
|||
dataListLoading: false, |
|||
searchData: { |
|||
site: this.$store.state.user.site, |
|||
userId: this.$store.state.user.id, |
|||
}, |
|||
columnProjectAllDocumentList: [ |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 101001013, |
|||
serialNumber: '101001013Table1ProjectId', |
|||
tableId: "101001013Table1", |
|||
tableName: "BU文档清单表", |
|||
columnProp: 'projectId', |
|||
headerAlign: "center", |
|||
align: "center", |
|||
columnLabel: '项目编码', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 80, |
|||
}, |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 101001013, |
|||
serialNumber: '101001013Table1ProofingId', |
|||
tableId: "101001013Table1", |
|||
tableName: "BU文档清单表", |
|||
columnProp: 'proofingId', |
|||
headerAlign: "center", |
|||
align: "center", |
|||
columnLabel: '打样单号', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 80, |
|||
}, |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 101001013, |
|||
serialNumber: '101001013Table1DocumentType', |
|||
tableId: "101001013Table1", |
|||
tableName: "BU文档清单表", |
|||
columnProp: 'documentType', |
|||
headerAlign: "center", |
|||
align: "center", |
|||
columnLabel: '文档类型', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 120, |
|||
}, |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 101001014, |
|||
serialNumber: '101001014Table1FileName', |
|||
tableId: "101001014Table1", |
|||
tableName: "打样文档表", |
|||
columnProp: 'fileName', |
|||
headerAlign: "center", |
|||
align: "left", |
|||
columnLabel: '文件名', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 180, |
|||
}, |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 101001014, |
|||
serialNumber: '101001014Table1ProjectPhase', |
|||
tableId: "101001014Table1", |
|||
tableName: "打样文档表", |
|||
columnProp: 'projectPhase', |
|||
headerAlign: "center", |
|||
align: "center", |
|||
columnLabel: '项目阶段', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 70, |
|||
}, |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 101001014, |
|||
serialNumber: '101001014Table1DocumentGroupDesc', |
|||
tableId: "101001014Table1", |
|||
tableName: "打样文档表", |
|||
columnProp: 'documentGroupDesc', |
|||
headerAlign: "center", |
|||
align: "center", |
|||
columnLabel: '文档种类', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 70, |
|||
}, |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 103001, |
|||
serialNumber: '103001Table1CreateDate', |
|||
tableId: '103001Table1', |
|||
tableName: '打样文档表', |
|||
columnProp: 'createDate', |
|||
headerAlign: 'center', |
|||
align: 'center', |
|||
columnLabel: '创建时间', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 130 |
|||
}, |
|||
{ |
|||
userId: this.$store.state.user.name, |
|||
functionId: 103001, |
|||
serialNumber: '103001Table1CreateBy', |
|||
tableId: '103001Table1', |
|||
tableName: '打样文档表', |
|||
columnProp: 'createdBy', |
|||
headerAlign: 'center', |
|||
align: 'center', |
|||
columnLabel: '创建人', |
|||
columnHidden: false, |
|||
columnImage: false, |
|||
columnSortable: false, |
|||
sortLv: 0, |
|||
status: true, |
|||
fixed: '', |
|||
columnWidth: 80 |
|||
} |
|||
], |
|||
}; |
|||
}, |
|||
created() { |
|||
this.getDataList() |
|||
}, |
|||
methods: { |
|||
// 获取数据列表 |
|||
getDataList () { |
|||
if (this.$route.query.flag === '1') { |
|||
searchProjectUploadsDocumentList(this.searchData).then(({data}) => { |
|||
if (data.code === 0) { |
|||
this.dataList = data.list |
|||
// 判断是否全部存在数据 |
|||
} |
|||
}) |
|||
}else { |
|||
searchProjectOverUploadsDocumentList(this.searchData).then(({data}) => { |
|||
if (data.code === 0) { |
|||
this.dataList = data.list |
|||
// 判断是否全部存在数据 |
|||
} |
|||
}) |
|||
} |
|||
}, |
|||
filteredProjectAllDocumentList() { |
|||
this.dataList.map(item => { |
|||
item.id = item.documentDefinitionListId |
|||
}) |
|||
return this.dataList.filter(item => item.uploadedFlag !== 'Y') |
|||
}, |
|||
projectAllDocumentClickRow (row) { |
|||
this.projectAllDocumentCurrentRow = JSON.parse(JSON.stringify(row)) |
|||
}, |
|||
formatDate(row, column) { |
|||
// row 是当前行的数据对象 |
|||
// column 是当前列的属性信息对象 |
|||
const date = row[column.property]; |
|||
if (date) { |
|||
const s = new Date(date).toLocaleDateString('zh-CN', { year: 'numeric', month: '2-digit', day: '2-digit' }); |
|||
return s.replace(/\//g, '-') |
|||
} else { |
|||
return ''; |
|||
} |
|||
}, |
|||
rowStyle ({row}) { |
|||
}, |
|||
indexMethod(index) { |
|||
return index + 1; |
|||
}, |
|||
getCombinedDocumentType(row) { |
|||
// 根据您的需求,组合或拼接需要显示的字段 |
|||
if (row.documentType === null || row.documentType === undefined) { |
|||
return row.documentDesc |
|||
}else { |
|||
return row.documentType |
|||
} |
|||
}, |
|||
}, |
|||
}; |
|||
</script> |
|||
|
|||
<style scoped> |
|||
.card-item { |
|||
cursor: pointer; |
|||
margin-bottom: 20px; |
|||
transition: transform 0.3s, box-shadow 0.3s; |
|||
overflow: hidden; |
|||
//padding: 10px; |
|||
display: flex; |
|||
flex-direction: column; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
height: 208px; |
|||
width: 230px; |
|||
margin-left: 40px; |
|||
margin-top: 10px; |
|||
} |
|||
|
|||
.card-item:hover { |
|||
transform: translateY(-5px); |
|||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); |
|||
} |
|||
|
|||
.card-title { |
|||
font-size: 18px; |
|||
font-weight: bold; |
|||
margin-bottom: 10px; |
|||
margin-top: 20px; |
|||
} |
|||
|
|||
.card-count { |
|||
font-size: 55px; |
|||
color: #17B3A3; |
|||
text-align: center; |
|||
font-weight: bold; |
|||
margin-top: 50px; |
|||
} |
|||
|
|||
.project-list { |
|||
font-size: 12px; |
|||
color: #333; |
|||
line-height: 1.5; |
|||
margin-bottom: 5px; |
|||
} |
|||
|
|||
.el-divider { |
|||
margin: 10px 0; |
|||
} |
|||
</style> |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue