:summary-method="summaryMethod"


 summaryMethod({ columns, data }) {
      const sums = [];
      if (columns.length > 0) {
        columns.forEach((column, index) => {
          if ([6].includes(index)) {
            sums[index] = "合计";
          } else if (
            [
              "shopCode",
              "mainContractCode",
              "instrumentNo",
              "category",
              "type",
              "ratio",
            ].includes(column.property)
          ) {
            //过滤某些字段不参与计算
            sums[index] = "-";
          } else {
            let values = data.map((item) => Number(item[column.property]));
            if (!values.every((value) => isNaN(value))) {
              sums[index] = values.reduce((prev, curr) => {
                const value = Number(curr);
                if (!isNaN(value)) {
                  let num = Number(prev) + Number(curr);
                  return num.toFixed(2);
                } else {
                  return Number(prev).toFixed(2);
                }
              }, 0.0);
            }
          }
        });
      }
      return sums;
    },

Logo

前往低代码交流专区

更多推荐