haoxuan
2023-12-22 f86d07ccc55c800eaefc6b1cff0f242d71f6841b
src/components/makepager/CommonFormTableView.vue
@@ -44,7 +44,7 @@
                  :disabled="!isOperate"
                  @change="
                    (val) => {
                      commonInputChange(val, item.prop, scope.row)
                      commonInputChange(val, item.prop, scope.row,scope)
                    }
                  "
                ></el-input>
@@ -105,7 +105,7 @@
                  style="width: 100%; margin-right: 5px"
                  @change="
                    (val) => {
                      commonInputChange(val, item.prop, scope.row)
                      commonInputChange(val, item.prop, scope.row,scope)
                    }
                  "
                ></el-input-number>
@@ -127,19 +127,13 @@
                  style="width: 100%; margin-right: 5px"
                  @change="
                    (val) => {
                      commonInputChange(val, item.prop, scope.row)
                      commonInputChange(val, item.prop, scope.row,scope)
                    }
                  "
                ></el-input-number>
              </el-form-item>
              <span v-else>
                <template v-if="pageName=='quotation'&&item.prop=='profit'">
                  {{ (scope.row.price&&scope.row.cost)?Number(scope.row.price)-Number(scope.row.cost):'' }}
                </template>
                <template v-if="pageName=='quotation'&&item.prop=='margin'">
                  {{ (scope.row.price&&scope.row.cost)?((Number(scope.row.price)-Number(scope.row.cost))*100/Number(scope.row.cost)).toFixed(2)+'%':'' }}
                </template>
                <template v-else>
                <template>
                  {{ scope.row[item.prop] }}
                </template>
              </span>
@@ -160,7 +154,7 @@
                style="width: 100%; margin-right: 5px"
                @change="
                  (val) => {
                    commonInputChange(val, item.prop, scope.row)
                    commonInputChange(val, item.prop, scope.row,scope)
                  }
                "
              ></el-input-number>
@@ -168,7 +162,7 @@
            <span v-else style="text-align: right">{{ scope.row[item.prop] }}</span>
          </template>
        </el-table-column>
        <el-table-column  label="操作" width="40" align="center">
        <el-table-column  label="操作" width="40" v-if="!detailEnter" align="center">
          <template slot-scope="scope">
            <el-button
              type="text"
@@ -407,9 +401,7 @@
    add() {
      this.$emit("addProductClick")
    },
    commonInputChange(val, prop, row) {
      console.log(val, prop)
      console.log(row)
    commonInputChange(val, prop, row,scope) {
      if (prop === "amount") {
        this.tableList.tableData.map((ite) => {
          if (ite.name === row.name) {
@@ -417,7 +409,27 @@
          }
        })
      }
      this.$emit("inputContent", val, prop, row)
      if(this.pageName=='quotation'&&prop=='cost'&&scope.row.cost){
        let value=scope.row.cost
        let reg2 =
            /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
          if (!reg2.test(value)||value==0) {
            this.$message.error("成本单价需要填写大于0的2位小数!")
            return true;
          }
        this.$forceUpdate()
      }
      if(this.pageName=='quotation'){
        if(prop=='price'||prop=='cost'){
          if(scope.row.price&&scope.row.cost){
            let profit=Number(scope.row.price)-Number(scope.row.cost)
            scope.row.profit=profit+'';
            let margin=((Number(scope.row.price)-Number(scope.row.cost))*100/Number(scope.row.cost)).toFixed(2)
            scope.row.margin=margin+'';
          }
        }
      }
      this.$emit("inputContent", val, prop, row,scope)
    },
    // 清空
    empty() {
@@ -428,7 +440,7 @@
    deleteClick(scope){
      this.tableList.tableData.splice(scope.$index,1)
      this.$forceUpdate();
      this.$message.success('删除除成功!')
      this.$message.success('删除成功!')
      this.$emit("deleteClick",scope)
    },
    // 重算