From d13487486a3c3c7cf93bd3bda65dcc0d6af51aa2 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 03 六月 2025 17:37:04 +0800
Subject: [PATCH] 销售出库页面开发

---
 src/views/salesOutbound/components/formDia.vue |  133 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 133 insertions(+), 0 deletions(-)

diff --git a/src/views/salesOutbound/components/formDia.vue b/src/views/salesOutbound/components/formDia.vue
new file mode 100644
index 0000000..2984136
--- /dev/null
+++ b/src/views/salesOutbound/components/formDia.vue
@@ -0,0 +1,133 @@
+<template>
+  <div>
+    <el-dialog :title="operationType === 'add' ? '鏂板鍑哄簱' : '缂栬緫鍑哄簱'"
+               v-model="dialogVisitable" width="800px" @close="cancel">
+      <el-form :model="form" :rules="rules" ref="userRef" label-width="100px">
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="閿�鍞棩鏈�" prop="userName">
+              <el-date-picker
+                  v-model="form.userName"
+                  type="date"
+                  value-format="YYYY-MM-DD"
+                  format="YYYY-MM-DD"
+                  clearable
+                  style="width: 100%"
+                  placeholder="璇烽�夋嫨鏃ユ湡"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="瀹㈡埛" prop="nickName">
+              <el-select v-model="form.nickName" placeholder="璇烽�夋嫨瀹㈡埛">
+                <el-option
+                    v-for="item in customerOptions"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                />
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="鐓ょ" prop="type">
+              <el-select v-model="form.nickName" placeholder="璇烽�夋嫨鐓ょ">
+                <el-option
+                    v-for="item in typeOptions"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                />
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鍗曚綅" prop="nickName">
+              <el-input v-model="form.nickName" placeholder="璇疯緭鍏ュ崟浣�" maxlength="30" />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="閿�鍞暟閲�" prop="userName">
+              <el-input v-model="form.userName" placeholder="璇疯緭鍏ラ攢鍞暟閲�" maxlength="30" type="number" />
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="閿�鍞崟浠�" prop="userName">
+              <el-input v-model="form.userName" placeholder="璇疯緭鍏ラ攢鍞崟浠�(鍚◣)" maxlength="30" type="number" />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="閿�鍞�讳环" prop="userName">
+              <el-input v-model="form.userName" placeholder="璇疯緭鍏ラ攢鍞�讳环(鍚◣)" maxlength="30" type="number" />
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鐑��" prop="userName">
+              <el-input v-model="form.userName" placeholder="璇疯緭鍏ョ儹鍊�" maxlength="30" />
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button @click="cancel">鍙栨秷</el-button>
+          <el-button type="primary" @click="submitForm">淇濆瓨</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup>
+import {ref, reactive} from "vue";
+const { proxy } = getCurrentInstance()
+const emit = defineEmits()
+
+const dialogVisitable = ref(false);
+const operationType = ref('add');
+const customerOptions = ref([]) // 瀹㈡埛涓嬫媺妗�
+const typeOptions = ref([]) // 鐓ょ涓嬫媺妗�
+const data = reactive({
+  form: {},
+  rules: {
+    userName: [{ required: true, message: "鐧诲綍璐﹀彿涓嶈兘涓虹┖", trigger: "blur" },],
+    nickName: [{ required: true, message: "鐢ㄦ埛濮撳悕涓嶈兘涓虹┖", trigger: "blur" }],
+    roleIds: [{ required: true, message: "瑙掕壊涓嶈兘涓虹┖", trigger: "change" }],
+    deptId: [{ required: true, message: "閮ㄩ棬涓嶈兘涓虹┖", trigger: "change" }],
+    password: [{ required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" }, { min: 5, max: 20, message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿", trigger: "blur" }, { pattern: /^[^<>"'|\\]+$/, message: "涓嶈兘鍖呭惈闈炴硶瀛楃锛�< > \" ' \\\ |", trigger: "blur" }],
+  }
+})
+
+const { form, rules } = toRefs(data)
+
+// 鎵撳紑寮规
+const openDialog = (type, row) => {
+  console.log('openDialog', type, row)
+  dialogVisitable.value = true
+}
+// 鎻愪氦鍚堝苟琛ㄥ崟
+const submitForm = () => {
+  proxy.$refs["userRef"].validate(valid => {
+    if (valid) {
+    
+    }
+  })
+}
+// 鍏抽棴鍚堝苟琛ㄥ崟
+const cancel = () => {
+  proxy.resetForm("userRef")
+  dialogVisitable.value = false
+  emit('closeDia')
+}
+defineExpose({ openDialog })
+</script>
+
+<style scoped>
+
+</style>
\ No newline at end of file

--
Gitblit v1.9.3