zuozhengqing
2024-03-22 50538b42c86e69ba7d0de5fde2ad3d68779d9f77
src/components/makepager/CommonFormTableView.vue
@@ -3,6 +3,7 @@
    <el-form ref="form" :model="tableList" :show-message="false" label-position="right">
      <el-table
        ref="fromTable"
        :border="isBoder"
        :data="tableList.tableData"
        :show-summary="showSummary.show"
        :summary-method="getSummaries"
@@ -11,7 +12,8 @@
        @selection-change="handleSelectionChange"
        :row-key="(row) => row.productId"
      >
        <el-table-column v-if="selectBox" type="selection" :reserve-selection="true" width="40" align="center">
        <el-table-column v-if="selectBox"  type="selection" :reserve-selection="true" width="40" align="center">
        </el-table-column>
        <el-table-column v-if="tableList.isReturn" type="index" label="#" width="50" align="center"></el-table-column>
        <el-table-column
@@ -27,10 +29,14 @@
          <template slot="header">
            <span v-if="item.isRequird" style="color: #f56c6c">*</span>
            <span>{{ item.label }}</span>
            <FilterPopover @toFiltering="toFiltering" class="margin_left_3px" v-if="item.isFilter"
            :layout="item.prop" :isFilterList="item.isFilterList"
            :selectedListDefault="item.selectedListDefault"></FilterPopover>
          </template>
          <!-- column样式 -->
          <template slot-scope="scope">
            <template v-if="!detailEnter || isOperate">
              <el-form-item
                v-if="item.input"
                label=" "
@@ -49,6 +55,8 @@
                  "
                ></el-input>
              </el-form-item>
              <span v-else-if="item.compute">{{ calculateDifference(scope.row) }}</span>
              <el-form-item
                v-else-if="item.productName"
                label=" "
@@ -173,9 +181,14 @@
                "
              ></el-input-number>
            </el-form-item>
            <span v-else style="text-align: right">{{ scope.row[item.prop] }}</span>
            <span v-else style="text-align: right">{{ scope.row[item.prop] }}</span>
          </template>
          <!-- <template slot-scope="scope" v-if="item.compute">
          </template>  -->
        </el-table-column>
        <!-- <el-table-column label="剩余收货数量">
        </el-table-column> -->
        <el-table-column label="操作" width="40" v-if="!detailEnter" align="center">
          <template slot-scope="scope">
            <el-button type="text" size="small" :disabled="!isOperate" @click="deleteClick(scope)">删除</el-button>
@@ -217,11 +230,16 @@
<script>
import { getProductListFromGrpc, getProductList } from "@/api/productManage/product"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
import FilterPopover from "@/components/makepager/FilterPopover";
export default {
  name: "CommmonFormTableView",
  components: { SelectCommonDialog },
  components: { SelectCommonDialog ,FilterPopover},
  props: {
    detailEnter: {
      type: Boolean,
      default: false
    },
    isBoder:{
      type: Boolean,
      default: false
    },
@@ -309,6 +327,17 @@
  },
  computed: {},
  methods: {
    calculateDifference(row) {
      if (row.notReceiveAmount !== null && row.nowReceiveAmount !== null) {
        row.surplusReceiveAmount=row.notReceiveAmount - row.nowReceiveAmount;
        return  row.surplusReceiveAmount
      } else {
        return 0;
      }
    },
    toFiltering(event){
      this.$emit("toFiltering", event);
    },
    getTableInfo() {
      this.tableList = this.productTableList
    },