结算审批页面,导出,直转审核导出
This commit is contained in:
parent
2c18753063
commit
1cf9136589
|
|
@ -2,11 +2,11 @@
|
|||
<div class="app-container">
|
||||
<el-row style="width: 100%">
|
||||
<el-col :span="18">
|
||||
<el-button type="primary" size="mini" @click="handleExport1">租赁明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport3">维修明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport4">报废明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport2">丢失明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport5">减免明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport1" :disabled="leaseList && leaseList.length == 0 " >租赁明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport3" :disabled="repairList && repairList.length == 0 ">维修明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport4" :disabled="scrapList && scrapList.length == 0 ">报废明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport2" :disabled="loseList && loseList.length == 0 ">丢失明细导出</el-button>
|
||||
<el-button type="primary" size="mini" @click="handleExport5" :disabled="reducList && reducList.length == 0 ">减免明细导出</el-button>
|
||||
<el-button type="warning" size="mini" @click="handleExportAll">全部明细导出</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
|
@ -27,32 +27,34 @@
|
|||
{{ projectName }}
|
||||
</div>
|
||||
</div>
|
||||
<el-table :data="leaseList">
|
||||
<el-table-column label="租赁费用明细" align="center">
|
||||
<div class="tabelAllTopUnit">
|
||||
<div class="costTopUnit">出场日期</div>
|
||||
<div class="costRightUnit">
|
||||
{{ actualTimeAndName }}
|
||||
</div>
|
||||
</div>
|
||||
<el-table :data="leaseList" max-height="500px">
|
||||
<el-table-column label="租赁(超期)费用明细" align="center" >
|
||||
<el-table-column label="序号" align="center" type="index" width="60" />
|
||||
<el-table-column label="单位名称" align="center" prop="unitName" :show-overflow-tooltip="true" width="150" />
|
||||
<el-table-column label="设备名称" align="center" prop="typeName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="规格型号" align="center" prop="modelName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="计量单位" align="center" prop="mtUnitName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="租赁单价" align="center" prop="leasePrice" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.leasePrice || 0).toFixed(2) }}
|
||||
<template slot-scope="scope" v-show="scope.row.leasePrice">
|
||||
{{ scope.row.leasePrice.toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="租赁数量" align="center" prop="num" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.num || 0).toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="租赁日期" align="center" prop="startTime" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="租赁数量" align="center" prop="num" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="领料日期" align="center" prop="startTime" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="归还日期 " align="center" prop="endTime" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="租赁天数" align="center" prop="leaseDays" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.leaseDays || 0).toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="租赁费用(元)" align="center" prop="costs" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.costs || 0).toFixed(2) }}
|
||||
<el-table-column label="租赁天数" align="center" prop="leaseDays" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="出场日期" align="center" prop="actualExitTime" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="超期日期" align="center" prop="overTime" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="超期天数" align="center" prop="overDay" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="超期费用(元)" align="center" prop="costs" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope" v-show="scope.row.costs">
|
||||
{{ scope.row.costs.toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
|
|
@ -67,21 +69,18 @@
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<el-table :data="repairList">
|
||||
<el-table-column label="维修费用明细" align="center">
|
||||
<el-table :data="repairList" max-height="500px">
|
||||
<el-table-column label="维修费用明细" align="center" >
|
||||
<el-table-column label="序号" align="center" type="index" width="60" />
|
||||
<el-table-column label="单位名称" align="center" prop="unitName" :show-overflow-tooltip="true" width="150" />
|
||||
<el-table-column label="设备名称" align="center" prop="typeName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="规格型号" align="center" prop="modelName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="计量单位" align="center" prop="mtUnitName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="维修数量" align="center" prop="num" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.num || 0).toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="维修数量" align="center" prop="num" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="是否收费" align="center" prop="partType" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="维修费用(元)" align="center" prop="costs" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.costs || 0).toFixed(2) }}
|
||||
<template slot-scope="scope" v-show="scope.row.costs">
|
||||
{{ scope.row.costs.toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
|
|
@ -95,21 +94,18 @@
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<el-table :data="scrapList">
|
||||
<el-table :data="scrapList" max-height="500px">
|
||||
<el-table-column label="报废费用明细" align="center">
|
||||
<el-table-column label="序号" align="center" type="index" width="60" />
|
||||
<el-table-column label="单位名称" align="center" prop="unitName" :show-overflow-tooltip="true" width="150" />
|
||||
<el-table-column label="设备名称" align="center" prop="typeName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="规格型号" align="center" prop="modelName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="计量单位" align="center" prop="mtUnitName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="报废数量" align="center" prop="num" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.num || 0).toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="报废数量" align="center" prop="num" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="是否收费" align="center" prop="partType" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="报废费用(元)" align="center" prop="costs" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.costs || 0).toFixed(2) }}
|
||||
<template slot-scope="scope" v-show="scope.row.costs">
|
||||
{{ scope.row.costs.toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
|
|
@ -123,20 +119,22 @@
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<el-table :data="loseList">
|
||||
<el-table-column label="丢失费用明细" align="center">
|
||||
<el-table :data="loseList" max-height="500px">
|
||||
<el-table-column label="未归还费用明细" align="center">
|
||||
<el-table-column label="序号" align="center" type="index" width="60" />
|
||||
<el-table-column label="单位名称" align="center" prop="unitName" :show-overflow-tooltip="true" width="150" />
|
||||
<el-table-column label="设备名称" align="center" prop="typeName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="规格型号" align="center" prop="modelName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="计量单位" align="center" prop="mtUnitName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="丢失数量" align="center" prop="num" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.num || 0).toFixed(2) }}
|
||||
<el-table-column label="丢失数量" align="center" prop="num" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="原值(元)" align="center" prop="buyPrice" :show-overflow-tooltip="true" >
|
||||
<template slot-scope="scope" v-show="scope.row.buyPrice">
|
||||
{{ scope.row.buyPrice.toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="丢失费用(元)" align="center" prop="costs" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.costs || 0).toFixed(2) }}
|
||||
<el-table-column label="未归还费用(元)" align="center" prop="costs" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope" v-show="scope.row.costs">
|
||||
{{ scope.row.costs.toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
|
|
@ -150,12 +148,13 @@
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<el-table :data="reducList">
|
||||
<el-table :data="reducList" max-height="500px">
|
||||
<el-table-column label="减免费用明细" align="center">
|
||||
<el-table-column label="序号" align="center" type="index" width="60" />
|
||||
<el-table-column label="单位名称" align="center" prop="unitName" :show-overflow-tooltip="true" width="150" />
|
||||
<el-table-column label="设备名称" align="center" prop="typeName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="规格型号" align="center" prop="modeName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="计量单位" align="center" prop="unitName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="计量单位" align="center" prop="mtUnitName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="租赁单价" align="center" prop="leasePrice" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="减免数量" align="center" prop="reduceNum" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="减免开始日期" align="center" prop="startTime" :show-overflow-tooltip="true" />
|
||||
|
|
@ -163,8 +162,8 @@
|
|||
<el-table-column label="减免天数" align="center" prop="days" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="减免原因" align="center" prop="remark" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="减免费用(元)" align="center" prop="leaseMoney" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
{{ Number(scope.row.leaseMoney || 0).toFixed(2) }}
|
||||
<template slot-scope="scope" v-show="scope.row.leaseMoney">
|
||||
{{ scope.row.leaseMoney.toFixed(2) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
|
|
@ -216,7 +215,8 @@ export default {
|
|||
deptName: undefined,
|
||||
applyList: [],
|
||||
projectName: undefined, //结算工程
|
||||
unitName: undefined //结算单位
|
||||
unitName: undefined, //结算单位
|
||||
actualTimeAndName: '', //实际时间和对应的班组名称
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
|
@ -257,6 +257,7 @@ export default {
|
|||
|
||||
const projectNames = []
|
||||
const unitNames = []
|
||||
const actualTimeAndNames = [] // 用于存储实际时间和对应的班组名称
|
||||
|
||||
// 合并各项列表,同时为明细补充单位名称以便显示
|
||||
dataArray.forEach(item => {
|
||||
|
|
@ -286,13 +287,26 @@ export default {
|
|||
const listWithUnit = item.reductionList.map(x => ({ ...x, unitName: x.unitName || currentUnitName }))
|
||||
this.reducList = [...this.reducList, ...listWithUnit]
|
||||
}
|
||||
if(item.unitName && item.actualExitTime){
|
||||
const timeAndName = `${item.unitName} ( ${item.actualExitTime} )`;
|
||||
// 检查是否已存在该元素,不存在才添加
|
||||
if(!actualTimeAndNames.includes(timeAndName)) {
|
||||
actualTimeAndNames.push(timeAndName);
|
||||
}
|
||||
}else if(item.unitName && !item.actualExitTime){
|
||||
const timeAndName = `${item.unitName} ( 暂无 )`;
|
||||
// 检查是否已存在该元素,不存在才添加
|
||||
if(!actualTimeAndNames.includes(timeAndName)) {
|
||||
actualTimeAndNames.push(timeAndName);
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
// 单位/工程名展示:去重后拼接
|
||||
const unique = arr => Array.from(new Set(arr)).filter(Boolean)
|
||||
this.unitName = unique(unitNames).join(',')
|
||||
this.projectName = unique(projectNames).join(',')
|
||||
|
||||
this.actualTimeAndName = unique(actualTimeAndNames).join(', ')
|
||||
// 费用汇总
|
||||
const sumCosts = list => list.reduce((s, x) => s + (Number(x.costs) || 0), 0)
|
||||
this.leaseCost = this.countCost(this.leaseList)
|
||||
|
|
@ -399,9 +413,9 @@ export default {
|
|||
}
|
||||
|
||||
const currentTime = formatTime(new Date())
|
||||
let data = _.cloneDeep(this.rowData)
|
||||
let data = {unitId:this.rowData[0].unitId,projectId:this.rowData[0].projectId,sltApplyCode:this.rowData[0].sltApplyCode}
|
||||
const params = { params: JSON.stringify(data) }
|
||||
this.download('material/slt_agreement_info/exportLease', { ...params }, `租赁费用明细_${currentTime}.xlsx`)
|
||||
this.download('material/material_sltAgreementInfo/exportLeaseReview', { ...params }, `租赁费用明细_${currentTime}.xlsx`)
|
||||
},
|
||||
//丢失
|
||||
handleExport2() {
|
||||
|
|
@ -416,9 +430,9 @@ export default {
|
|||
}
|
||||
|
||||
const currentTime = formatTime(new Date())
|
||||
let data = _.cloneDeep(this.rowData)
|
||||
let data = {unitId:this.rowData[0].unitId,projectId:this.rowData[0].projectId,sltApplyCode:this.rowData[0].sltApplyCode}
|
||||
const params = { params: JSON.stringify(data) }
|
||||
this.download('material/slt_agreement_info/exportLose', { ...params }, `丢失费用明细_${currentTime}.xlsx`)
|
||||
this.download('material/material_sltAgreementInfo/exportLoseReview', { ...params }, `丢失费用明细_${currentTime}.xlsx`)
|
||||
},
|
||||
// 维修
|
||||
handleExport3() {
|
||||
|
|
@ -483,9 +497,9 @@ export default {
|
|||
}
|
||||
|
||||
const currentTime = formatTime(new Date())
|
||||
let data = _.cloneDeep(this.rowData)
|
||||
let data = {unitId:this.rowData[0].unitId,projectId:this.rowData[0].projectId,sltApplyCode:this.rowData[0].sltApplyCode}
|
||||
const params = { params: JSON.stringify(data) }
|
||||
this.download('material/slt_agreement_info/exportAll', { ...params }, `全部费用明细_${currentTime}.xlsx`)
|
||||
this.download('material/material_sltAgreementInfo/exportAllReview', { ...params }, `全部费用明细_${currentTime}.xlsx`)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -84,7 +84,7 @@
|
|||
>
|
||||
审批
|
||||
</el-button>
|
||||
<el-button type="primary" plain size="mini" @click="openPrintDialog(scope.row)">协议书</el-button>
|
||||
<!-- <el-button type="primary" plain size="mini" @click="openPrintDialog(scope.row)">协议书</el-button> -->
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
|
|
|||
|
|
@ -267,20 +267,22 @@ export default {
|
|||
},
|
||||
// 导出数据
|
||||
handleExport() {
|
||||
// 提示
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '导出功能开发中,敬请期待!'
|
||||
})
|
||||
try {
|
||||
let fileName = `导出_${formatTime(new Date())}.xLsx`
|
||||
let url = '/material/material_direct/export'
|
||||
const params = { ...this.queryParams }
|
||||
console.log('🚀 ~ 导出 ~ params:', params)
|
||||
this.download(url, params, fileName)
|
||||
} catch (error) {
|
||||
console.log('导出数据失败', error)
|
||||
}
|
||||
const formatTime = (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');
|
||||
return `${year}${month}${day}_${hours}${minutes}${seconds}`;
|
||||
};
|
||||
|
||||
const currentTime = formatTime(new Date());
|
||||
this.download(
|
||||
"/material/material_direct/export",
|
||||
{ ...this.queryParams },
|
||||
`导出_${currentTime}.xlsx`
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue