zhangwencui
20 小时以前 e3f7ae14a6b98e4fbfba04a0c1bbe26802dfc1c5
src/views/inventoryManagement/stockManagement/Subtract.vue
@@ -41,7 +41,15 @@
            label="数量"
            prop="qualitity"
        >
          <el-input-number v-model="formState.qualitity" :step="1" :min="0" style="width: 100%" />
          <el-input-number v-model="formState.qualitity" :step="1" :min="1" :max="maxQuality" style="width: 100%" />
        </el-form-item>
        <el-form-item
            v-if="isRawMaterial"
            label="净重"
            prop="netWeight"
        >
          <el-input-number v-model="formState.netWeight" :precision="2" :step="0.01" :min="0" style="width: 100%" />
        </el-form-item>
        <el-form-item label="备注" prop="remark">
@@ -69,6 +77,7 @@
import {ref, computed, getCurrentInstance} from "vue";
import ProductSelectDialog from "@/views/basicData/product/ProductSelectDialog.vue";
import {subtractStockInventory} from "@/api/inventoryManagement/stockInventory.js";
import {subtractStockUnInventory} from "@/api/inventoryManagement/stockUninventory.js";
const props = defineProps({
  visible: {
@@ -78,7 +87,12 @@
  record: {
    type: Object,
    default: () => {},
  }
  },
  type: {
    type: String,
    required: true,
    default: 'qualified',
  },
});
const emit = defineEmits(['update:visible', 'completed']);
@@ -87,10 +101,17 @@
  initFormData()
})
const maxQuality = computed(() => {
  return props.record.unLockedQuantity ? props.record.unLockedQuantity :  0;
})
const isRawMaterial = computed(() => {
  return props.record.parentName === '原材料';
})
const initFormData = () => {
  if (props.record) {
    formState.value = {
      ...formState.value,
      ...props.record,
    }
  }
@@ -104,6 +125,7 @@
  model: "",
  unit: "",
  qualitity: 0,
  netWeight: undefined,
  remark: '',
});
@@ -126,8 +148,11 @@
    productId: undefined,
    productModelId: undefined,
    productName: "",
    productModelName: "",
    description: '',
    model: "",
    unit: "",
    qualitity: 0,
    netWeight: undefined,
    remark: '',
  };
  isShow.value = false;
};
@@ -160,13 +185,23 @@
        proxy.$modal.msgError("请选择规格");
        return;
      }
      subtractStockInventory(formState.value).then(res => {
        // 关闭模态框
        isShow.value = false;
        // 告知父组件已完成
        emit('completed');
        proxy.$modal.msgSuccess("提交成功");
      })
      if (props.type === 'qualified') {
        subtractStockInventory(formState.value).then(res => {
          // 关闭模态框
          isShow.value = false;
          // 告知父组件已完成
          emit('completed');
          proxy.$modal.msgSuccess("提交成功");
        })
      } else {
        subtractStockUnInventory(formState.value).then(res => {
          // 关闭模态框
          isShow.value = false;
          // 告知父组件已完成
          emit('completed');
          proxy.$modal.msgSuccess("提交成功");
        })
      }
    }
  })
};