|
@@ -0,0 +1,170 @@
|
|
|
+<template>
|
|
|
+ <a-card :bordered="false" class="u-dialog-card">
|
|
|
+
|
|
|
+ <div class="table-operator">
|
|
|
+ <a-button type="primary" icon="download" @click="handleExportXls('当月完成额明细')">导出</a-button>
|
|
|
+ </div>
|
|
|
+ <!-- table区域-begin -->
|
|
|
+ <div>
|
|
|
+ <!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
|
|
|
+ <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
|
|
|
+ <a style="margin-left: 24px" @click="onClearSelected">清空</a>
|
|
|
+ </div> -->
|
|
|
+
|
|
|
+ <a-table
|
|
|
+ ref="table"
|
|
|
+ size="middle"
|
|
|
+ :scroll="{x:true}"
|
|
|
+ bordered
|
|
|
+ :rowKey="(record,index)=>{return index}"
|
|
|
+ :columns="columns"
|
|
|
+ :dataSource="dataSource"
|
|
|
+ :pagination="ipagination"
|
|
|
+ :loading="loading"
|
|
|
+ class="j-table-force-nowrap"
|
|
|
+ @change="handleTableChange">
|
|
|
+ </a-table>
|
|
|
+ </div>
|
|
|
+ </a-card>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+
|
|
|
+ import '@/assets/less/TableExpand.less'
|
|
|
+ import { mixinDevice } from '@/utils/mixin'
|
|
|
+ import { JeecgListMixin } from '@/mixins/JeecgListMixin'
|
|
|
+ import { getAction } from '@/api/manage'
|
|
|
+
|
|
|
+ export default {
|
|
|
+ name: 'ListModalList',
|
|
|
+ mixins:[JeecgListMixin, mixinDevice],
|
|
|
+ components: {
|
|
|
+ },
|
|
|
+ // 因为涉及到导出得用jeecg的组件,所以还是用默认的queryParam
|
|
|
+ // props: {
|
|
|
+ // detailParams: {
|
|
|
+ // type: Object,
|
|
|
+ // default: () => {}
|
|
|
+ // },
|
|
|
+ // },
|
|
|
+ data () {
|
|
|
+ return {
|
|
|
+ // 表头
|
|
|
+ columns: [
|
|
|
+ {
|
|
|
+ title: '序号',
|
|
|
+ dataIndex: '',
|
|
|
+ key:'rowIndex',
|
|
|
+ width:60,
|
|
|
+ align:"center",
|
|
|
+ customRender:function (t,r,index) {
|
|
|
+ return parseInt(index)+1;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'部门名称',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'depart'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'任务号',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'taskno'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'任务名称',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'taskname'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'合同额',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'hte'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'已收款',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'ysk'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'预估价',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'ygj'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'上个月进度',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'lastjd'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'当月进度',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'nowjd'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title:'进度差',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'newjd'
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ url: {
|
|
|
+ list: "/index/getZrbmDepartKpiDetail",
|
|
|
+ exportXlsUrl: "/index/exportZrbmDepartKpiXls",
|
|
|
+ },
|
|
|
+ dictOptions:{},
|
|
|
+ superFieldList:[],
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ loadData(arg) {
|
|
|
+ if(!this.url.list){
|
|
|
+ this.$message.error("请设置url.list属性!")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //加载数据 若传入参数1则加载第一页的内容
|
|
|
+ if (arg === 1) {
|
|
|
+ this.ipagination.current = 1;
|
|
|
+ }
|
|
|
+ // var params = this.getQueryParams();//查询条件
|
|
|
+ var params = this.queryParam
|
|
|
+ params.field = this.getQueryField();
|
|
|
+ params.pageNo = this.ipagination.current;
|
|
|
+ params.pageSize = this.ipagination.pageSize;
|
|
|
+ this.loading = true;
|
|
|
+ getAction(this.url.list, params).then((res) => {
|
|
|
+ if (res.success) {
|
|
|
+ //update-begin---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------
|
|
|
+ this.dataSource = res.result.records||res.result;
|
|
|
+ if(res.result.total)
|
|
|
+ {
|
|
|
+ this.ipagination.total = res.result.total;
|
|
|
+ }else{
|
|
|
+ this.ipagination.total = 0;
|
|
|
+ }
|
|
|
+ //update-end---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------
|
|
|
+ }else{
|
|
|
+ this.$message.warning(res.message)
|
|
|
+ }
|
|
|
+ }).finally(() => {
|
|
|
+ this.loading = false
|
|
|
+ })
|
|
|
+ },
|
|
|
+ initDictConfig(){
|
|
|
+ },
|
|
|
+ }
|
|
|
+ }
|
|
|
+</script>
|
|
|
+<style scoped>
|
|
|
+ @import '~@assets/less/common.less';
|
|
|
+</style>
|
|
|
+<style lang="less" scoped>
|
|
|
+ .u-dialog-card{
|
|
|
+ /deep/.ant-card-body{
|
|
|
+ padding: 0 !important;
|
|
|
+ }
|
|
|
+ }
|
|
|
+</style>
|