maven
2025-10-11 0ad2c4106d6f570e0ca63c8fe5093e6f97492534
src/views/procureMent/components/ProductionDialog.vue
@@ -127,6 +127,16 @@
            </template>
          </el-input>
        </el-form-item>
        <el-form-item label="车牌号" prop="licensePlate">
          <!-- 默认为0 -->
          <el-input
              :precision="2"
              v-model.number="form.licensePlate"
              placeholder="请输入车牌号"
              :disabled="isViewMode"
          >
          </el-input>
        </el-form-item>
        <el-form-item label="运费" prop="freight">
          <!-- 默认为0 -->
          <el-input
@@ -159,6 +169,20 @@
            value-format="YYYY-MM-DD"
          />
        </el-form-item>
<!--          <el-form-item label="类型" prop="purchaseType">-->
<!--          <el-select-->
<!--              v-model="form.purchaseType"-->
<!--              placeholder="请选择类型"-->
<!--              :disabled="isViewMode"-->
<!--          >-->
<!--            <el-option-->
<!--                v-for="item in purchaseTypeList"-->
<!--                :key="item.value"-->
<!--                :label="item.label"-->
<!--                :value="Number(item.value)"-->
<!--            />-->
<!--          </el-select>-->
<!--        </el-form-item>-->
      </el-form>
      <template #footer>
        <div class="dialog-footer">
@@ -185,6 +209,7 @@
import { ElMessage } from "element-plus";
import useUserStore from "@/store/modules/user";
import { addOrEditPR, getSupplyList, getCoalInfoList } from "@/api/procureMent";
import useDictStore from "@/store/modules/dict"
const props = defineProps({
  title: {
@@ -217,8 +242,9 @@
});
const supplyList = ref([]);
const coalList = ref([]);
const purchaseTypeList = ref([])
const isViewMode = computed(() => props.title.includes("查看"));
// 获取供应商下拉和煤种下拉
// 获取供应商下拉和煤种下拉 以及类型
const getDropdownData = async () => {
  try {
    const [supplyRes, coalRes] = await Promise.all([
@@ -235,6 +261,7 @@
      value: item.id,
      label: item.coal,
    }));
  } catch (error) {
    ElMessage.error("获取下拉数据失败,请稍后重试");
  }
@@ -357,12 +384,19 @@
};
onMounted(async () => {
  purchaseTypeList.value = useDictStore().getDictTypeList("purchase_type").map((item) => ({
    value: item.value,
    label: item.label,
  }))
  let res = await userStore.getInfo();
  userInfo.value = res.user;
  await getDropdownData();
  // 组件加载完成后触发一次计算
  calculatePrices();
});
const rules = {
  supplierName: [
    { required: true, message: "请输入供应商名称", trigger: "blur" },
@@ -383,6 +417,9 @@
    { required: true, message: "请输入税率", trigger: "blur" },
    { type: "number", message: "税率必须为数字", trigger: "blur" },
  ],
  purchaseType: [
    { required: true, message: "请选择类型", trigger: "change" }
  ]
};
// 关闭弹窗
const handleClose = () => {