From 9555007a15ab751fdf783e45ea871e532de20f7d Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期六, 14 三月 2026 16:42:25 +0800
Subject: [PATCH] 生产记录接口

---
 src/views/productionManagement/productionRecords/New.vue |  122 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 122 insertions(+), 0 deletions(-)

diff --git a/src/views/productionManagement/productionRecords/New.vue b/src/views/productionManagement/productionRecords/New.vue
new file mode 100644
index 0000000..f0e2e9f
--- /dev/null
+++ b/src/views/productionManagement/productionRecords/New.vue
@@ -0,0 +1,122 @@
+<template>
+  <div>
+    <el-dialog
+      v-model="isShow"
+      title="鏂板鐢熶骇璁板綍"
+      width="520px"
+      @close="closeModal"
+    >
+      <el-form
+        ref="formRef"
+        label-width="120px"
+        :model="formState"
+        label-position="top"
+      >
+        <el-form-item
+          label="鍙傛暟椤�"
+          prop="parameterItem"
+          :rules="[{ required: true, message: '璇疯緭鍏ュ弬鏁伴」' }]"
+        >
+          <el-input v-model="formState.parameterItem" placeholder="璇疯緭鍏ュ弬鏁伴」" />
+        </el-form-item>
+        <el-form-item
+          label="鍙傛暟绫诲瀷"
+          prop="type"
+          :rules="[{ required: true, message: '璇烽�夋嫨鍙傛暟绫诲瀷' }]"
+        >
+          <el-select v-model="formState.type" placeholder="璇烽�夋嫨鍙傛暟绫诲瀷" style="width: 100%;">
+            <el-option
+              v-for="dict in parameter_tyep"
+              :key="dict.value"
+              :label="dict.label"
+              :value="dict.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item
+          label="鍗曚綅"
+          prop="unit"
+          :rules="[{ required: true, message: '璇疯緭鍏ュ崟浣�' }]"
+        >
+          <el-input v-model="formState.unit" placeholder="璇疯緭鍏ュ崟浣�" />
+        </el-form-item>
+        <el-form-item label="鍙傛暟鏍煎紡" prop="parameterFormat">
+          <el-input v-model="formState.parameterFormat" placeholder="璇疯緭鍏ュ弬鏁版牸寮忥紙閫夊~锛�" />
+        </el-form-item>
+        <el-form-item
+          label="鏄惁蹇呭~"
+          prop="isRequired"
+          :rules="[{ required: true, message: '璇烽�夋嫨鏄惁蹇呭~' }]"
+        >
+          <el-select v-model="formState.isRequired" placeholder="璇烽�夋嫨" style="width: 100%;">
+            <el-option label="鏄�" value="1" />
+            <el-option label="鍚�" value="0" />
+          </el-select>
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="handleSubmit">纭</el-button>
+          <el-button @click="closeModal">鍙栨秷</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup>
+import { ref, computed, getCurrentInstance } from "vue";
+import { add } from "@/api/productionManagement/productionRecords.js";
+
+const props = defineProps({
+  visible: {
+    type: Boolean,
+    required: true,
+  },
+});
+
+const emit = defineEmits(["update:visible", "completed"]);
+
+const formRef = ref(null);
+const formState = ref({
+  parameterItem: "",
+  type: "",
+  unit: "",
+  parameterFormat: "",
+  isRequired: undefined,
+});
+
+const isShow = computed({
+  get() {
+    return props.visible;
+  },
+  set(val) {
+    emit("update:visible", val);
+  },
+});
+
+const { proxy } = getCurrentInstance();
+const { parameter_tyep } = proxy.useDict("parameter_tyep");
+
+const closeModal = () => {
+  isShow.value = false;
+};
+
+const handleSubmit = () => {
+  formRef.value.validate((valid) => {
+    if (valid) {
+      add(formState.value).then(() => {
+        isShow.value = false;
+        emit("completed");
+        proxy.$modal.msgSuccess("鏂板鎴愬姛");
+      });
+    }
+  });
+};
+
+defineExpose({
+  closeModal,
+  handleSubmit,
+  isShow,
+});
+</script>

--
Gitblit v1.9.3