chengxiangling
2025-05-12 4d552b915d9b7d18b89fe062f40e26dfcdeeab7e
src/views/basicData/sheetMetalParamConfig/index.vue
@@ -5,44 +5,78 @@
      ref="ruleFormRef"
      :model="ruleForm"
      :rules="rules"
      label-width="120px"
      :label-width="locale === 'zh' ? '120px' : '160px'"
      class="demo-ruleForm"
    >
      <el-form-item label="预留天数" prop="days" class="form_class">
        <el-input-number v-model="ruleForm.days" @change="handleChange" />
      <el-form-item
        :label="$t('basic.query.reservedDays')"
        prop="days"
        class="form_class"
      >
        <div class="custom-input-number">
          <el-input-number
            v-model="ruleForm.days"
            min="0"
            controls-position="right"
            @change="handleChange"
          />
          <span class="unit">{{ $t("basic.query.days") }}</span>
        </div>
      </el-form-item>
      <el-form-item class="form_class">
        <el-button type="primary" @click="submitForm">保存</el-button>
        <el-button
          type="primary"
          @click="submitForm"
          v-hasPermi="['system:dict:edit']"
          >{{ $t("common.common.save") }}</el-button
        >
      </el-form-item>
    </el-form>
  </div>
</template>
<script setup>
<script setup name="SheetMetalParamConfig">
import {
  queryConfigParams,
  queryConfigParamsSave,
} from "@/api/basicData/sheetMetalConfig/sheetMetalConfig";
import { ElMessage } from "element-plus";
// import { ElMessage } from "element-plus";
import { useI18n } from "vue-i18n"; //要在js中使用国际化
const { t, locale } = useI18n();
const { proxy } = getCurrentInstance();
// const { plate_plan_param } = proxy.useDict('plate_plan_param');
const ruleForm = ref({
  days: null,
});
const configParams = ref({});
const rules = reactive({
  days: [
    { required: true, message: "请输入预留天数", trigger: "blur" },
    {
      type: "number",
      message: "请输入有效的数字",
      trigger: ["blur", "change"],
    },
  ],
let rules = reactive({
  days: [],
});
watch(
  locale,
  (newLocale) => {
    rules = {
      days: [
        {
          required: true,
          message: `${t("common.common.placeholder")}${t(
            "basic.query.reservedDays"
          )}`,
          trigger: "blur",
        },
        {
          type: "number",
          message: `${t("basic.query.significantDigit")}`,
          trigger: ["blur", "change"],
        },
      ],
    };
  },
  { immediate: true, deep: true }
);
onMounted(async () => {
  let config = await queryConfigParams("plate_plan_param");
  console.log(config.data, "configwudhuhfuw");
  ruleForm.value.days = config.data[0].dictValue*1;
  ruleForm.value.days = parseInt(config.data[0].dictValue);
  configParams.value = config.data[0];
  // console.log(plate_plan_param.value[0].value,'plate_plan_paramplate_plan_param')
});
@@ -63,11 +97,11 @@
      console.log(valid, "valid");
      const res = await queryConfigParamsSave({
        ...configParams.value,
        dictValue: ruleForm.value.days*1,
        dictValue: ruleForm.value.days * 1,
      });
      if (res.code == 200) {
        ElMessage({
          message: "更新成功",
          message: t("plan.message.update"),
          type: "success",
        });
      }
@@ -95,4 +129,16 @@
    margin-top: 20px;
  }
}
.custom-input-number {
  position: relative;
  display: inline-block;
}
.unit {
  position: absolute;
  top: 50%;
  right: 40px; /* 根据需要调整位置 */
  transform: translateY(-50%);
  pointer-events: none; /* 防止单位标签影响输入框的点击事件 */
  color: #999;
}
</style>