yuan
8 天以前 4a811fb2cd4ee4e1cbfe284bfd1fe3a7d16204ce
src/views/inventoryManagement/stockManagement/New.vue
@@ -37,6 +37,52 @@
          <el-input v-model="formState.unit"  disabled />
        </el-form-item>
        <el-form-item label="批号" prop="batchNo" :rules="[{ required: true, message: '请输入批号', trigger: 'blur' }]">
          <el-input v-model="formState.batchNo" placeholder="请输入批号" clearable />
        </el-form-item>
        <el-form-item
          v-if="type === 'qualified'"
          label="生产日期"
          prop="productionDate"
          :rules="[{ required: true, message: '请选择生产日期', trigger: 'change' }]"
        >
          <el-date-picker
            v-model="formState.productionDate"
            type="date"
            value-format="YYYY-MM-DD"
            format="YYYY-MM-DD"
            placeholder="请选择生产日期"
            clearable
            style="width: 100%"
          />
        </el-form-item>
        <el-form-item
          label="供应商"
          prop="customer"
          :rules="[{ required: true, message: '请选择供应商', trigger: 'change' }]"
        >
          <el-select
            v-model="formState.customer"
            placeholder="请选择供应商"
            filterable
            clearable
            allow-create
            :reserve-keyword="true"
            :default-first-option="false"
          >
            <el-option
              v-for="item in supplierList"
              :key="item.id"
              :label="item.supplierName"
              :value="item.supplierName"
            >
              {{ item.supplierName}}
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item
            label="库存数量"
            prop="qualitity"
@@ -74,10 +120,11 @@
</template>
<script setup>
import {ref, computed, getCurrentInstance} from "vue";
import {ref, computed, getCurrentInstance, watch} from "vue";
import ProductSelectDialog from "@/views/basicData/product/ProductSelectDialog.vue";
import {createStockInventory} from "@/api/inventoryManagement/stockInventory.js";
import {createStockUnInventory} from "@/api/inventoryManagement/stockUninventory.js";
import {getOptions as getSupplierOptions} from "@/api/procurementManagement/procurementLedger.js";
const props = defineProps({
  visible: {
@@ -101,6 +148,9 @@
  productName: "",
  productModelName: "",
  unit: "",
  batchNo: "",
  productionDate: "",
  customer: "",
  qualitity: 0,
  warnNum: 0,
  remark: '',
@@ -126,11 +176,40 @@
    productModelId: undefined,
    productName: "",
    productModelName: "",
    description: '',
    unit: "",
    batchNo: "",
    productionDate: "",
    customer: "",
    qualitity: 0,
    warnNum: 0,
    remark: '',
  };
  isShow.value = false;
};
const supplierList = ref([]);
const loadSuppliers = async () => {
  try {
    const res = await getSupplierOptions();
    // 复用采购台账筛选逻辑:isWhite=0 的供应商
    supplierList.value = (res?.data || []).filter(item => item.isWhite === 0);
  } catch (e) {
    console.error("获取供应商列表失败:", e);
    supplierList.value = [];
  }
};
watch(
  () => props.visible,
  (val) => {
    if (val) {
      loadSuppliers();
    }
  },
  { immediate: true }
);
// 产品选择处理
const handleProductSelect = async (products) => {
  if (products && products.length > 0) {