小小儁爺
2024-08-01 bb2ed2e56da26a6b79575f5be9f60ca2d90774d0
src/views/basicSettings/meterPrice.vue
@@ -192,7 +192,7 @@
      :title="operation==='add'?'新增':'编辑'"
      :visible.sync="dialogVisible"
      width="1100px"
      top="15vh"
      top="5vh"
      :close-on-click-modal="false"
      @closed="handleClose"
      @close="handleClose"
@@ -252,28 +252,101 @@
          </el-form-item>
        </div>
      </el-form>
      <!--      :expand-row-keys="expandRowKeys"-->
      <!--      row-key="code"-->
      <el-table
        :data="stepDialogArr"
        style="width: 100%"
        height="300"
        height="600"
        border
        :header-cell-style="this.$headerCellStyle"
        :cell-style="this.$cellStyle"
        :row-class-name="tableRowClassName"
      >
        <el-table-column type="expand">
          <template slot-scope="props">
            <el-table
              :data="props.row.children"
              style="width: 96%;margin: auto;"
              border
              :row-class-name="tableRowClassName"
            >
        <el-table-column
          prop="step_seq"
                prop="eqp_code"
                label="设备/往来编码"
                min-width="120"
              />
              <el-table-column
                prop="eqp_name"
                label="设备/往来名称"
                min-width="120"
              />
              <el-table-column
                prop="eqp_value"
                label="设备节拍"
                min-width="150"
              >
                <template slot-scope="{row}">
                  <div style="display: flex">
                    <el-input
                      v-model="row.eqp_value"
                      placeholder="请输入"
                      oninput="value=value.replace(/[^0-9.]/g,'')"
                      @change="val=>eqpValueChange(val,row)"
                    />
                    <div style="margin-left: 5px">秒</div>
                  </div>
                </template>
              </el-table-column>
              <el-table-column
                prop="stand_value"
                label="生产节拍"
                min-width="120"
              >
                <template slot-scope="{row}">
                  <div>{{ row.stand_value + ' ' + '秒' }}</div>
                </template>
              </el-table-column>
              <el-table-column
                prop="cavity_qty"
                label="腔型数"
                min-width="120"
              >
                <template slot-scope="{row}">
                  <el-input
                    v-model="row.cavity_qty"
                    placeholder="请输入"
                    oninput="value=value.replace(/[^0-9.]/g,'')"
                    @change="val=>cavityQtyChange(val,row)"
                  />
                </template>
              </el-table-column>
              <el-table-column
                prop="unprice"
                label="工序工价"
                min-width="120"
              >
                <template slot-scope="{row}">
                  <el-input v-model="row.unprice" oninput="value=value.replace(/[^0-9.]/g,'')" />
                </template>
              </el-table-column>
            </el-table>
          </template>
        </el-table-column>
        <el-table-column
          prop="seq"
          label="工序顺序"
          width="100"
        />
        <el-table-column
          prop="step_code"
          prop="code"
          label="工序编码"
          width="200"
        />
        <el-table-column
          prop="step_name"
          prop="name"
          label="工序名称"
          width="200"
        />
@@ -479,8 +552,9 @@
      editPartName: '', // 编辑时产品名称
      editRouteName: '', // 编辑时工艺路线名称
      editStepName: '', // 编辑时加工工序名称
      operation: ''
      operation: '',
      expandRowKeys: []// 默认展开
    }
  },
@@ -581,6 +655,12 @@
    async routeDialogChange(val) {
      const { data: res } = await RouteSelectStep({ partcode: this.dialogForm.partcode, routecode: val })
      this.stepDialogArr = res
      this.expandRowKeys = this.stepDialogArr.map(i => {
        if (i.children.length > 0) {
          return i.code
        }
      })
    },
    // 新增按钮
@@ -654,22 +734,22 @@
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          const children = []
          this.stepDialogArr.forEach(i => {
            children.push({
              'code': i.step_code,
              'name': i.step_name,
              'seq': i.step_seq,
              'isbott': i.isbott,
              'isend': i.isend,
              'unprice': i.unprice
            })
          })
          // this.stepDialogArr.forEach(i => {
          //   children.push({
          //     'code': i.step_code,
          //     'name': i.step_name,
          //     'seq': i.step_seq,
          //     'isbott': i.isbott,
          //     'isend': i.isend,
          //     'unprice': i.unprice
          //   })
          // })
          const data = [
            {
              'partcode': this.dialogForm.partcode,
              'defaultroute_code': this.dialogForm.routecode,
              'children': children
              'children': this.stepDialogArr
            }
          ]
          SaveBeatRate(data).then(res => {
@@ -684,7 +764,23 @@
        }
      })
    },
    // 设备节拍值改变
    eqpValueChange(val, row) {
      console.log(val, row)
      if (parseFloat(row.cavity_qty) !== 0) {
        row.stand_value = parseFloat((parseFloat(val) / parseFloat(row.cavity_qty)).toFixed(2))
      } else {
        row.stand_value = 0
      }
    },
    // 腔型数值改变
    cavityQtyChange(val, row) {
      if (parseFloat(val) !== 0) {
        row.stand_value = parseFloat((parseFloat(row.eqp_value) / parseFloat(val)).toFixed(2))
      } else {
        row.stand_value = 0
      }
    },
    // 获取页面高度
    getHeight() {
      this.$nextTick(() => {