|
@@ -87,7 +87,7 @@
|
|
|
collapseButtons
|
|
|
:request-auto="false"
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
|
<el-space wrap>
|
|
@@ -131,7 +131,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
|
<el-space wrap>
|
|
@@ -175,7 +175,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
|
<el-space wrap>
|
|
@@ -237,7 +237,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
|
<el-space wrap>
|
|
@@ -299,7 +299,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
|
<el-space wrap>
|
|
@@ -338,7 +338,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
|
<el-space wrap>
|
|
@@ -377,7 +377,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
@cell-dblclick="handleCellDblClick_bednet"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
@@ -420,7 +420,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
|
<el-space wrap>
|
|
@@ -463,7 +463,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<!-- <template #tableHeader>
|
|
|
<el-space wrap>
|
|
@@ -500,7 +500,7 @@
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
:extra-loading="mxLoading"
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
>
|
|
|
<template #tableHeader>
|
|
|
<el-space wrap>
|
|
@@ -566,7 +566,7 @@
|
|
|
:tool-button="[]"
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
@after-mounted="resetMergeCellsInner"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
@@ -605,7 +605,7 @@
|
|
|
:tool-button="[]"
|
|
|
:auto-load-layout="false"
|
|
|
collapseButtons
|
|
|
- :footer-sum-attrs="['costamt']"
|
|
|
+ :footer-method="footerMethod"
|
|
|
@after-mounted="resetMergeCellsTopCotton"
|
|
|
>
|
|
|
<template #tableHeader v-if="orderStatus">
|
|
@@ -802,7 +802,7 @@ import BednetDialog from "@/views/system/selector/bednet/index.vue";
|
|
|
import LjDrawerQuoteList from "./components/QuoteList.vue";
|
|
|
import mittBus from "@/utils/mittBus";
|
|
|
import { MittEnum } from "@/enums/mittEnum";
|
|
|
-import { getCurrentRecords } from "@/utils/index";
|
|
|
+import { getCurrentRecords, floatAdd, floatMul } from "@/utils/index";
|
|
|
import { useUserStore } from "@/stores/modules/user";
|
|
|
import AllFormula from "./components/AllFormula.vue";
|
|
|
import LjDrawer from "@/components/LjDrawer/index.vue";
|
|
@@ -953,6 +953,34 @@ const bednetDrawerProps = reactive({
|
|
|
onlyView: false
|
|
|
});
|
|
|
|
|
|
+const footerMethod = ({ columns, data }: any) => {
|
|
|
+ // 返回一个二维数组的表尾合计
|
|
|
+ return [
|
|
|
+ columns.map((column: any, columnIndex: number) => {
|
|
|
+ if (columnIndex === 0) {
|
|
|
+ return "合计";
|
|
|
+ }
|
|
|
+ if (columnIndex === 1) {
|
|
|
+ return data.length;
|
|
|
+ }
|
|
|
+ // if ((column.field && column.field.indexOf("qty") > -1) || props.footerSumAttrs?.includes(column.field)) {
|
|
|
+ if ((column.field && column.field.indexOf("qty") > -1) || (column.field && column.field.indexOf("amt") > -1)) {
|
|
|
+ let count = 0;
|
|
|
+ data.forEach((item: any) => {
|
|
|
+ count = floatAdd(count, isNaN(Number(item[column.field])) ? 0 : Number(item[column.field]));
|
|
|
+ });
|
|
|
+ return count;
|
|
|
+ } else if (column.field && column.field.indexOf("dannum") > -1) {
|
|
|
+ let count = 0;
|
|
|
+ data.forEach((item: any) => {
|
|
|
+ count = floatAdd(count, floatMul(Number(item.costamt), 1 + mattresstypeEnum.value[column.field]));
|
|
|
+ });
|
|
|
+ return count;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ ];
|
|
|
+};
|
|
|
+
|
|
|
/**
|
|
|
* @description 明细表格组件基础配置
|
|
|
*/
|