|
@@ -0,0 +1,146 @@
|
|
|
|
+<template>
|
|
|
|
+ <j-modal
|
|
|
|
+ :title="title"
|
|
|
|
+ :width="width"
|
|
|
|
+ :visible="visible"
|
|
|
|
+ switchFullscreen
|
|
|
|
+ :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
|
|
|
|
+ cancelText="关闭"
|
|
|
|
+ @cancel="handleCancel">
|
|
|
|
+ <a-card :bordered="false" class="u-dialog-card">
|
|
|
|
+ <div class="table-operator">
|
|
|
|
+ <a-button type="primary" icon="download" @click="handleExportXls('总成本明细')">导出</a-button>
|
|
|
|
+ </div>
|
|
|
|
+ <a-tabs default-active-key="clf" @change="changeTab">
|
|
|
|
+ <a-tab-pane key="clf" tab="材料费">
|
|
|
|
+ <!-- 材料费 -->
|
|
|
|
+ <material-detail-list :taskno="taskno" :cengji="cengji" :showBtn="false"></material-detail-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="zyf" tab="专用费">
|
|
|
|
+ <!-- 专用费 -->
|
|
|
|
+ <project-chb-zyf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-zyf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="swf" tab="事务费">
|
|
|
|
+ <!-- 事务费 -->
|
|
|
|
+ <project-chb-swf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-swf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="wxf" tab="外协费">
|
|
|
|
+ <!-- 外协费 -->
|
|
|
|
+ <project-chb-wxf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-wxf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="rldlf" tab="燃动费">
|
|
|
|
+ <!-- 燃动费 -->
|
|
|
|
+ <project-chb-rdf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-rdf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="gdzczj" tab="固资费">
|
|
|
|
+ <!-- 固资费 -->
|
|
|
|
+ <project-chb-gzf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-gzf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="gzjlwf" tab="人工费">
|
|
|
|
+ <!-- 人工费 -->
|
|
|
|
+ <project-chb-rgf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-rgf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="glf" tab="管理费">
|
|
|
|
+ <!-- 管理费 -->
|
|
|
|
+ <project-chb-glf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-glf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ <a-tab-pane key="sxf" tab="筛选费">
|
|
|
|
+ <!-- 筛选费 -->
|
|
|
|
+ <project-chb-sxf-list :taskno="taskno" :cengji="cengji" :showBtn="false"></project-chb-sxf-list>
|
|
|
|
+ </a-tab-pane>
|
|
|
|
+ </a-tabs>
|
|
|
|
+ </a-card>
|
|
|
|
+
|
|
|
|
+ <template slot="footer">
|
|
|
|
+ <a-button @click="handleCancel">关闭</a-button>
|
|
|
|
+ </template>
|
|
|
|
+ </j-modal>
|
|
|
|
+</template>
|
|
|
|
+
|
|
|
|
+<script>
|
|
|
|
+import MaterialDetailList from './MaterialDetailList.vue'
|
|
|
|
+import ProjectChbSwfList from './ProjectChbSwfList.vue'
|
|
|
|
+import ProjectChbWxfList from './ProjectChbWxfList.vue'
|
|
|
|
+import ProjectChbZyfList from './ProjectChbZyfList.vue'
|
|
|
|
+import ProjectChbSxfList from './ProjectChbSxfList.vue'
|
|
|
|
+import ProjectChbRdfList from './ProjectChbRdfList.vue'
|
|
|
|
+import ProjectChbRgfList from './ProjectChbRgfList.vue'
|
|
|
|
+import ProjectChbGzfList from './ProjectChbGzfList.vue'
|
|
|
|
+import ProjectChbGlfList from './ProjectChbGlfList.vue'
|
|
|
|
+import { downFile } from '@/api/manage'
|
|
|
|
+
|
|
|
|
+ export default {
|
|
|
|
+ name: 'ProjectCostZcbModal',
|
|
|
|
+ components: {
|
|
|
|
+ MaterialDetailList,
|
|
|
|
+ ProjectChbZyfList,
|
|
|
|
+ ProjectChbSwfList,
|
|
|
|
+ ProjectChbWxfList,
|
|
|
|
+ ProjectChbSxfList,
|
|
|
|
+ ProjectChbRdfList,
|
|
|
|
+ ProjectChbRgfList,
|
|
|
|
+ ProjectChbGzfList,
|
|
|
|
+ ProjectChbGlfList,
|
|
|
|
+ },
|
|
|
|
+ data () {
|
|
|
|
+ return {
|
|
|
|
+ taskno: '',
|
|
|
|
+ cengji: 1,
|
|
|
|
+ title:'',
|
|
|
|
+ width: 1200,
|
|
|
|
+ visible: false,
|
|
|
|
+ disableSubmit: false
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ methods: {
|
|
|
|
+ show() {
|
|
|
|
+ this.visible = true
|
|
|
|
+ },
|
|
|
|
+ close () {
|
|
|
|
+ this.$emit('close');
|
|
|
|
+ this.visible = false;
|
|
|
|
+ },
|
|
|
|
+ handleCancel () {
|
|
|
|
+ this.close()
|
|
|
|
+ },
|
|
|
|
+ changeTab(){
|
|
|
|
+ },
|
|
|
|
+ handleExportXls(fileName){
|
|
|
|
+ // if(!fileName || typeof fileName != "string"){
|
|
|
|
+ // fileName = "导出文件"
|
|
|
|
+ // }
|
|
|
|
+ // let param = this.getQueryParams();
|
|
|
|
+ // if(this.selectedRowKeys && this.selectedRowKeys.length>0){
|
|
|
|
+ // param['selections'] = this.selectedRowKeys.join(",")
|
|
|
|
+ // }
|
|
|
|
+ // console.log("导出参数",param)
|
|
|
|
+ downFile('/projectCostHuiji/projectCostHuiji/exportZcbXls',{taskno: this.taskno}).then((data)=>{
|
|
|
|
+ if (!data) {
|
|
|
|
+ this.$message.warning("文件下载失败")
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ if (typeof window.navigator.msSaveBlob !== 'undefined') {
|
|
|
|
+ window.navigator.msSaveBlob(new Blob([data],{type: 'application/vnd.ms-excel'}), fileName+'.xls')
|
|
|
|
+ }else{
|
|
|
|
+ let url = window.URL.createObjectURL(new Blob([data],{type: 'application/vnd.ms-excel'}))
|
|
|
|
+ let link = document.createElement('a')
|
|
|
|
+ link.style.display = 'none'
|
|
|
|
+ link.href = url
|
|
|
|
+ link.setAttribute('download', fileName+'.xls')
|
|
|
|
+ document.body.appendChild(link)
|
|
|
|
+ link.click()
|
|
|
|
+ document.body.removeChild(link); //下载完成移除元素
|
|
|
|
+ window.URL.revokeObjectURL(url); //释放掉blob对象
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+</script>
|
|
|
|
+<style lang="less" scoped>
|
|
|
|
+.u-dialog-card{
|
|
|
|
+ /deep/.ant-card-body{
|
|
|
|
+ padding: 0 !important;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+</style>
|