From db42d47f5692ef64e5436c5a6d29dcb537b44596 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期一, 26 一月 2026 16:36:13 +0800
Subject: [PATCH] 浪潮对接单点登录:mis调整

---
 src/views/qualityManagement/metricMaintenance/StandardFormDialog.vue |  129 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 129 insertions(+), 0 deletions(-)

diff --git a/src/views/qualityManagement/metricMaintenance/StandardFormDialog.vue b/src/views/qualityManagement/metricMaintenance/StandardFormDialog.vue
new file mode 100644
index 0000000..38d535a
--- /dev/null
+++ b/src/views/qualityManagement/metricMaintenance/StandardFormDialog.vue
@@ -0,0 +1,129 @@
+<template>
+  <FormDialog
+    v-model="dialogVisible"
+    :title="computedTitle"
+    :operation-type="operationType"
+    :width="width"
+    @close="emit('close')"
+    @cancel="handleCancel"
+    @confirm="handleConfirm"
+  >
+    <el-form
+      ref="formRef"
+      :model="form"
+      :rules="rules"
+      label-width="100px"
+    >
+      <el-form-item label="鏍囧噯缂栧彿" prop="standardNo">
+        <el-input v-model="form.standardNo" placeholder="璇疯緭鍏ユ爣鍑嗙紪鍙�" />
+      </el-form-item>
+      <el-form-item label="鏍囧噯鍚嶇О" prop="standardName">
+        <el-input v-model="form.standardName" placeholder="璇疯緭鍏ユ爣鍑嗗悕绉�" />
+      </el-form-item>
+      <el-form-item label="绫诲埆" prop="inspectType">
+        <el-select v-model="form.inspectType" placeholder="璇烽�夋嫨绫诲埆" style="width: 100%">
+          <el-option label="鍘熸潗鏂欐楠�" value="0" />
+          <el-option label="杩囩▼妫�楠�" value="1" />
+          <el-option label="鍑哄巶妫�楠�" value="2" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="宸ュ簭" prop="processId">
+        <el-select v-model="form.processId" placeholder="璇烽�夋嫨宸ュ簭" style="width: 100%">
+          <el-option
+            v-for="item in processOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="鐘舵��" prop="state">
+        <el-select v-model="form.state" placeholder="璇烽�夋嫨鐘舵��" style="width: 100%">
+          <el-option label="鑽夌" value="0" />
+          <el-option label="閫氳繃" value="1" />
+          <el-option label="鎾ら攢" value="2" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="澶囨敞" prop="remark">
+        <el-input
+          v-model="form.remark"
+          type="textarea"
+          :rows="3"
+          placeholder="璇疯緭鍏ュ娉�"
+        />
+      </el-form-item>
+    </el-form>
+  </FormDialog>
+</template>
+
+<script setup>
+import { computed, ref } from 'vue'
+import FormDialog from '@/components/Dialog/FormDialog.vue'
+
+const props = defineProps({
+  modelValue: {
+    type: Boolean,
+    default: false
+  },
+  operationType: {
+    type: String,
+    default: 'add'
+  },
+  form: {
+    type: Object,
+    required: true
+  },
+  rules: {
+    type: Object,
+    default: () => ({})
+  },
+  processOptions: {
+    type: Array,
+    default: () => []
+  },
+  width: {
+    type: String,
+    default: '500px'
+  }
+})
+
+const emit = defineEmits(['update:modelValue', 'close', 'cancel', 'confirm'])
+
+const dialogVisible = computed({
+  get: () => props.modelValue,
+  set: (val) => emit('update:modelValue', val)
+})
+
+const formRef = ref(null)
+
+const computedTitle = computed(() => {
+  if (props.operationType === 'edit') return '缂栬緫妫�娴嬫爣鍑�'
+  if (props.operationType === 'copy') return '澶嶅埗妫�娴嬫爣鍑�'
+  return '鏂板妫�娴嬫爣鍑�'
+})
+
+const handleConfirm = () => {
+  if (!formRef.value) {
+    emit('confirm')
+    return
+  }
+  formRef.value.validate((valid) => {
+    if (valid) {
+      emit('confirm')
+    }
+  })
+}
+
+const handleCancel = () => {
+  emit('cancel')
+  dialogVisible.value = false
+}
+
+const resetFields = () => {
+  formRef.value?.resetFields?.()
+}
+
+defineExpose({
+  resetFields
+})
+</script>

--
Gitblit v1.9.3