|
|
@@ -83,7 +83,7 @@
|
|
83
|
83
|
<el-row>
|
|
84
|
84
|
<el-col :span="24">
|
|
85
|
85
|
<el-form-item label="部门类型" prop="deptType">
|
|
86
|
|
- <el-select v-model="form.deptType" clearable>
|
|
|
86
|
+ <el-select v-model="form.deptType" clearable @change="deptTypeChange">
|
|
87
|
87
|
<el-option v-for="item in dept_type" :key="item.value" :label="item.label" :value="item.value" />
|
|
88
|
88
|
</el-select>
|
|
89
|
89
|
</el-form-item>
|
|
|
@@ -159,7 +159,7 @@
|
|
159
|
159
|
</template>
|
|
160
|
160
|
|
|
161
|
161
|
<script setup lang="ts">
|
|
162
|
|
-import { ref } from "vue";
|
|
|
162
|
+import { nextTick, ref } from "vue";
|
|
163
|
163
|
import { ElMessage, ElMessageBox } from "element-plus";
|
|
164
|
164
|
import type { FormInstance, FormRules } from "element-plus";
|
|
165
|
165
|
import { Search, EditPen, Plus, Edit, Delete } from "@element-plus/icons-vue";
|
|
|
@@ -200,7 +200,6 @@ const formRules = ref<FormRules>({
|
|
200
|
200
|
parentId: [{ required: true, message: "上级部门不能为空", trigger: "change" }],
|
|
201
|
201
|
name: [{ required: true, message: "部门名称不能为空", trigger: "blur" }],
|
|
202
|
202
|
deptType: [{ required: true, message: "部门类型不能为空", trigger: "change" }],
|
|
203
|
|
- warehouseType: [{ required: true, message: "仓库类型不能为空", trigger: "change" }],
|
|
204
|
203
|
sortOrder: [{ required: true, message: "请选择排序", trigger: "blur" }]
|
|
205
|
204
|
});
|
|
206
|
205
|
const deptOptions = ref<any>([]); // 部门目录
|
|
|
@@ -226,6 +225,22 @@ const getList = () => {
|
|
226
|
225
|
|
|
227
|
226
|
getList();
|
|
228
|
227
|
|
|
|
228
|
+//
|
|
|
229
|
+const deptTypeChange = (val: string) => {
|
|
|
230
|
+ if (val === "3") {
|
|
|
231
|
+ formRules.value.warehouseType = [{ required: true, message: "仓库类型不能为空", trigger: "change" }];
|
|
|
232
|
+ formRules.value.longitude = [{ required: true, message: "经度不能为空", trigger: "blur" }];
|
|
|
233
|
+ formRules.value.dimension = [{ required: true, message: "维度不能为空", trigger: "blur" }];
|
|
|
234
|
+ } else {
|
|
|
235
|
+ formRules.value.warehouseType = [];
|
|
|
236
|
+ formRules.value.longitude = [];
|
|
|
237
|
+ formRules.value.dimension = [];
|
|
|
238
|
+ }
|
|
|
239
|
+ nextTick(() => {
|
|
|
240
|
+ formRef.value?.clearValidate();
|
|
|
241
|
+ });
|
|
|
242
|
+};
|
|
|
243
|
+
|
|
229
|
244
|
// 添加/查看/编辑 列表数据
|
|
230
|
245
|
const addOrUpdateHandle = (isEdit: boolean, id?: string) => {
|
|
231
|
246
|
// 获取菜单信息
|
|
|
@@ -238,7 +253,6 @@ const addOrUpdateHandle = (isEdit: boolean, id?: string) => {
|
|
238
|
253
|
getDeptObj(id).then((res: any) => {
|
|
239
|
254
|
if (res.code === 0) {
|
|
240
|
255
|
form.value = res.data;
|
|
241
|
|
- form.value.parentId = Number(form.value.parentId);
|
|
242
|
256
|
form.value.warehouseType = JSON.parse(form.value.warehouseType);
|
|
243
|
257
|
}
|
|
244
|
258
|
});
|
|
|
@@ -340,7 +354,7 @@ const clearDialogData = () => {
|
|
340
|
354
|
dimension: "",
|
|
341
|
355
|
warehouseType: []
|
|
342
|
356
|
};
|
|
343
|
|
- formRef.value?.resetFields();
|
|
|
357
|
+ formRef.value?.clearValidate();
|
|
344
|
358
|
};
|
|
345
|
359
|
</script>
|
|
346
|
360
|
|