chenlu
2024-04-18 c3e3920e4e7fcda3dd986c00bb80188381e93015
north-glass-erp/northglass-erp/src/views/sd/order/OrderReport.vue
@@ -1,13 +1,10 @@
<script setup>
import BasicTable from "@/components/BasicTable.vue"
import { ref} from "vue"
import request from "@/utils/request"
import {onMounted, reactive, ref} from "vue"
const selectData = ref(["",""])
let filterData = ref({})
const childrenData = ref({
  columns:[
    {type:'expand',fixed:"left",width: 80},
    {type:'expand',fixed:"left",width: 80,slots: { content:'content' }},
    {type: 'seq',fixed:"left", title: '自序', width: 80 },
    {field: 'order.orderType',width:120, title: '订单类型',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
    {field: 'order.customerName',width:120, title: '客户名称',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
@@ -47,40 +44,31 @@
    {field: 'order.customerBatch',width:120, title: '客户批次',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}
  ],//表格表头字段
  data:[],//表格数据
  pageTotal : 0,//总页数
  dataTotal : 0,//数据总条数
  pageSize : 100,//页面显示数量
  pageNum:1,//当前页
  selectDate:['',''],//查询的日期
  url :'/order/getOrderReport',
  footList:['quantity','grossArea','computeGrossArea','perimeter','price','grossAmount']
})
//页面第一次加载
onMounted(() => {
  getReportData()
})
//封装获取数据方法方法
const  getReportData = () => {
  request.post(`/order/getOrderReport/${childrenData.value.pageNum}/${childrenData.value.pageSize}/${childrenData.value.selectDate}`,filterData.value).then(res => {
    if(res.code === '200'){
      childrenData.value.data = res.data.data
      childrenData.value.pageTotal = res.data.total.pageTotal
      childrenData.value.dataTotal = res.data.total.total
      childrenData.value.selectDate = res.data.selectDate
    }
request.post('/order/exportOrderReport',null,{responseType :'blob'}).then(res => {
  const blob = new Blob([res])
  // console.log(blob)
  // if ('download' in document.createElement('a')) { // 非IE下载
  //   const elink = document.createElement('a')
  //   elink.download = 'a.xlsx'
  //   elink.style.display = 'none'
  //   elink.href = URL.createObjectURL(blob)
  //   document.body.appendChild(elink)
  //   elink.click()
  //   URL.revokeObjectURL(elink.href) // 释放URL 对象
  //   document.body.removeChild(elink)
  // } else { // IE10+下载
  //   navigator.msSaveBlob(blob, fileName)
  // }
  })
}
const getData = (filter) => {
  filterData.value = filter
  getReportData()
}
</script>
<template>
  <basic-table
      @getData="getData"
      :childrenData="childrenData"/>
</template>