wujianwei
2025-08-07 b62f5881e2d0976738c38fd373ede43d92c32cbf
ui/admin-ui3/src/views/cwgl/dispatchOrder/index.vue
@@ -3,14 +3,14 @@
    <avue-crud :option="option" :table-loading="pageF.loading" :data="tableData" :page="page"
      :permission="permissionList" :before-open="beforeOpen" v-model="form" ref="crudRef" @row-update="rowUpdate"
      @row-save="rowSave" @refresh-change="refreshChange" @row-del="rowDel" @search-change="searchChange"
      @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
      @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"   v-model:search="queryParams"
      @size-change="sizeChange" @on-load="onLoad">
      <template #menu-left>
        <el-button type="warning" plain icon="Download" @click="handleExport"
          v-hasPermi="['cwgl:dispatchOrder:export']">导出
        </el-button>
        <el-button type="success" plain icon="Download" @click="handleExport"
        <el-button type="success" plain icon="Download" @click="handleExport2"
          v-hasPermi="['cwgl:dispatchOrder:export']">生成台账报表
        </el-button>
      </template>
@@ -39,6 +39,11 @@
            class="attachment-image" />
        </template>
      </avue-crud>
      <template #footer>
        <div class="dialog-footer">
          <el-button type="primary" v-if="itemTableData2.length>0" @click="downPZ">下载附件</el-button>
        </div>
      </template>
    </el-dialog>
  </basicContainer>
@@ -52,13 +57,15 @@
  exportDispatchOrder,
  getDispatchOrder,
  listDispatchOrder,
  updateDispatchOrder, cwglDispatchOrderItem, cwglDispatchOrderattAchment
  updateDispatchOrder, cwglDispatchOrderItem, cwglDispatchOrderattAchment, exportDispatchOrder2, downloadFJ
} from "@/api/cwgl/dispatchOrder";
import useCurrentInstance from "@/utils/useCurrentInstance";
import { computed, reactive, ref, toRefs } from "vue";
import { PagesInterface, PageQueryInterface } from "@/utils/globalInterface";
import { usePagePlus } from "@/hooks/usePagePlus";
import { hasPermission } from "@/utils/permissionUtils";
import {blobValidate} from "@/utils/ruoyi";
import {saveAs} from "file-saver";
const { proxy } = useCurrentInstance();
const crudRef = ref();
@@ -120,6 +127,9 @@
    },
    productName: {
      label: '服务产品名称', width: 120, showOverflowTooltip: true
    },
    customerName: {
      label: '客户名称', search: true, width: 200, showOverflowTooltip: true
    },
    carrierName: {
      label: '承运商', search: true, width: 200, showOverflowTooltip: true
@@ -243,11 +253,10 @@
  handleUpdateFunc: () => {
    crudRef.value.rowEdit(selectionList.value[0]);
  },
  getBeginListFunc(params: any = {}) {
    params = proxy.addDateRangeNew(params, params?.actualDepartureTimeRange, 'actualDepartureTime') || {};
    params = proxy.addDateRangeNew(params, params?.requiredArrivalTimeRange, 'requiredArrivalTime') || {};
    params = proxy.addDateRangeNew(params, params?.actualArrivalTimeRange, 'actualArrivalTime') || {};
    return params;
  getBeginListFunc() {
    queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualDepartureTimeRange, 'actualDepartureTime') || {};
    queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.requiredArrivalTimeRange, 'requiredArrivalTime') || {};
    queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualArrivalTimeRange, 'actualArrivalTime') || {};
  },
  handleSelectionChangeFunc: (selection: any) => {
    selectionList.value = selection;
@@ -370,6 +379,23 @@
const attachmentChange = () => {
  // loadAttachmentData();
}
const handleExport2 =()=>{
  queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualDepartureTimeRange, 'actualDepartureTime') || {};
  queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.requiredArrivalTimeRange, 'requiredArrivalTime') || {};
  queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualArrivalTimeRange, 'actualArrivalTime') || {};
  exportDispatchOrder2(queryParams.value);
}
const downPZ =()=>{
  downloadFJ({no:pageAttachment.value.no}).then(res=>{
    console.log(res)
      const blob = new Blob([res])
    console.log(blob)
      saveAs(blob, decodeURI(pageAttachment.value.no+"附件.pdf"))
  })
}
</script>
<style lang="scss" scoped>