liuguocan
2023-11-28 ed2117c738eedd3143d3b2ad6b0d40b2116afcf6
admin-web/src/views/departmentitem/itemscr/scrapping/edit.vue
@@ -29,7 +29,7 @@
        </el-row>
        <el-row :gutter="24" class="headerHeight">
          <el-col :span="24">
            <el-form-item label="报废手续" prop="procureDoc">
            <el-form-item label="报废审批手续" prop="procureDoc">
              <upload ref="uploadRef" :settings="uploadSettings" @on-change="uploadChange"></upload>
            </el-form-item>
          </el-col>
@@ -89,39 +89,79 @@
              </el-form-item>
            </el-col>
          </el-row>
          <el-table :data="goodsItem.models" :stripe="true">
            <el-table-column prop="baseGoodsModelsId" label="规格型号" align="center">
              <template slot-scope="scope">
                {{ getGoodsModelsName(scope.row.baseGoodsModelsId) }}
              </template>
            </el-table-column>
            <el-table-column label="单位" align="center">
              <template slot-scope="scope">
                {{ scope.row.unit }}
              </template>
            </el-table-column>
            <el-table-column prop="price" label="现有库存" align="center">
              <template slot-scope="scope">
                {{ scope.row.worehouseCount }}
              </template>
            </el-table-column>
            <el-table-column prop="counts" label="报废数量" align="center">
              <template slot-scope="scope">
                <el-form-item
                  label-width="0"
                  style="margin-bottom: 0"
                  :prop="`goods[${goodsIndex}].models[${scope.$index}].counts`"
                  :rules="rules.counts"
                >
                  <el-input
                    type="number"
                    v-model="scope.row.counts"
                    @change="countsChange($event, goodsIndex, scope.$index)"
                  ></el-input>
          <div class="card3" v-for="(mItem, mIndex) in goodsItem.models" :key="mIndex">
            <el-row :gutter="24" type="flex" align="middle" style="height: 50px">
              <el-col :span="8">
                <el-form-item label="规格型号:" prop="baseGoodsModelsId" style="margin-bottom: 0">
                  {{ getGoodsModelsName(mItem.baseGoodsModelsId) }}
                </el-form-item>
              </template>
            </el-table-column>
          </el-table>
              </el-col>
              <el-col :span="6">
                <el-form-item label="单位:" prop="baseGoodsModelsId" style="margin-bottom: 0" label-width="80">
                  50
                </el-form-item>
              </el-col>
              <el-col :span="6">
                <el-form-item label="物品类别:" prop="baseGoodsModelsId" style="margin-bottom: 0" label-width="80">
                  A类
                </el-form-item>
              </el-col>
            </el-row>
            <el-table :data="mItem.models" :stripe="true">
              <!-- A类商品显示 -->
              <el-table-column prop="price" label="使用人" align="center" v-if="goodsItem.models.type===1">
                <template slot-scope="scope">
                  {{ scope.row.worehouseCount }}
                </template>
              </el-table-column>
              <el-table-column prop="price" label="分发数量" align="center">
                <template slot-scope="scope">
                  {{ scope.row.worehouseCount }}
                </template>
              </el-table-column>
              <el-table-column prop="price" label="再用数量" align="center">
                <template slot-scope="scope">
                  {{ scope.row.worehouseCount }}
                </template>
              </el-table-column>
              <el-table-column prop="counts" label="报废数量" align="center">
                <template slot-scope="scope">
                  <el-form-item
                    label-width="0"
                    style="margin-bottom: 0"
                    :prop="`goods[${goodsIndex}].models[${scope.$index}].counts`"
                    :rules="rules.counts"
                  >
                    <el-input
                      type="number"
                      v-model="scope.row.counts"
                      @change="countsChange($event, goodsIndex, scope.$index)"
                    ></el-input>
                  </el-form-item>
                </template>
              </el-table-column>
              <el-table-column prop="counts" label="报废原因" align="center">
                <template slot-scope="scope">
                  <el-form-item
                    label-width="0"
                    style="margin-bottom: 0"
                    :prop="`goods[${goodsIndex}].models[${scope.$index}].reason`"
                    :rules="rules.reason"
                  >
                    <el-select v-model="scope.row.reason" placeholder="请选择">
                      <el-option
                        v-for="item in reasonOptions"
                        :key="item.value"
                        :label="item.label"
                        :value="item.value"
                        @change="countsChange($event, goodsIndex, scope.$index)">
                      </el-option>
                    </el-select>
                  </el-form-item>
                </template>
              </el-table-column>
            </el-table>
          </div>
          <div class="btn-group">
            <el-button
              v-if="formData.goods.length > 1"
@@ -240,11 +280,11 @@
        warehouseId: [{ required: true, message: '请选择', trigger: 'change' }],
        dealTime: [{ required: true, message: '请选择', trigger: 'change' }],
        buyType: [{ required: true, message: '请选择', trigger: 'change' }],
        baseCategoryIds: [{ required: true, message: '请选择', trigger: 'change' }],
        baseGoodsTemplateId: [{ validator: checkGoodsTemplateId, trigger: ['blur', 'change'] }],
        modelsIds: [{ required: true, message: '请选择', trigger: 'change' }],
        counts: [{ required: true, message: '请输入', trigger: 'change' }],
        reason: [{ required: true, message: '请选择', trigger: 'change' }],
      },
      uploadSettings: {
@@ -258,6 +298,7 @@
        disabled: false, // 是否禁用
        type: 'picture', // text/picture
      },
      reasonOptions:[] // 报废原因
    };
  },
  computed: {
@@ -387,11 +428,7 @@
        curItem.counts = worehouseCount > 0 ? worehouseCount : null;
      }
    },
    handleConfirm(){
    },
    handleConfirm(){},
    // 提交
    handleSubmit() {
      this.$refs['ruleForm'].validate((valid) => {