From a1d7e81859f554f3a53680cc35f0f49bf1f77098 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期四, 14 五月 2026 14:37:02 +0800
Subject: [PATCH] 导入项目
---
src/views/iot/rule/scene/form/sections/BasicInfoSection.vue | 86 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 86 insertions(+), 0 deletions(-)
diff --git a/src/views/iot/rule/scene/form/sections/BasicInfoSection.vue b/src/views/iot/rule/scene/form/sections/BasicInfoSection.vue
new file mode 100644
index 0000000..4e77053
--- /dev/null
+++ b/src/views/iot/rule/scene/form/sections/BasicInfoSection.vue
@@ -0,0 +1,86 @@
+<!-- 鍩虹淇℃伅閰嶇疆缁勪欢 -->
+<template>
+ <el-card class="border border-[var(--el-border-color-light)] rounded-8px mb-10px" shadow="never">
+ <template #header>
+ <div class="flex items-center justify-between">
+ <div class="flex items-center gap-8px">
+ <Icon icon="ep:info-filled" class="text-[var(--el-color-primary)] text-18px" />
+ <span class="text-16px font-600 text-[var(--el-text-color-primary)]">鍩虹淇℃伅</span>
+ </div>
+ <div class="flex items-center gap-8px">
+ <dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="formData.status" />
+ </div>
+ </div>
+ </template>
+
+ <div class="p-0">
+ <el-row :gutter="24" class="mb-24px">
+ <el-col :span="12">
+ <el-form-item label="鍦烘櫙鍚嶇О" prop="name" required>
+ <el-input
+ v-model="formData.name"
+ placeholder="璇疯緭鍏ュ満鏅悕绉�"
+ maxlength="50"
+ show-word-limit
+ clearable
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍦烘櫙鐘舵��" prop="status" required>
+ <el-radio-group v-model="formData.status">
+ <el-radio
+ v-for="dict in getIntDictOptions(DICT_TYPE.COMMON_STATUS)"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-form-item label="鍦烘櫙鎻忚堪" prop="description">
+ <el-input
+ v-model="formData.description"
+ type="textarea"
+ placeholder="璇疯緭鍏ュ満鏅弿杩帮紙鍙�夛級"
+ :rows="3"
+ maxlength="200"
+ show-word-limit
+ resize="none"
+ />
+ </el-form-item>
+ </div>
+ </el-card>
+</template>
+
+<script setup lang="ts">
+import { useVModel } from '@vueuse/core'
+import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
+import type { IotSceneRule } from '@/api/iot/rule/scene'
+
+/** 鍩虹淇℃伅閰嶇疆缁勪欢 */
+defineOptions({ name: 'BasicInfoSection' })
+
+const props = defineProps<{
+ modelValue: IotSceneRule
+ rules?: any
+}>()
+
+const emit = defineEmits<{
+ (e: 'update:modelValue', value: IotSceneRule): void
+}>()
+
+const formData = useVModel(props, 'modelValue', emit) // 琛ㄥ崟鏁版嵁
+</script>
+
+<style scoped>
+:deep(.el-form-item) {
+ margin-bottom: 20px;
+}
+
+:deep(.el-form-item:last-child) {
+ margin-bottom: 0;
+}
+</style>
--
Gitblit v1.8.0