|
@@ -38,6 +38,7 @@
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="品牌" prop="brand">
|
|
|
<el-input v-model="formData.brand" placeholder="请输入品牌" @click="openForm"/>
|
|
|
+
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -49,26 +50,45 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="所在部门" prop="orgId">
|
|
|
- <el-input v-model="formData.orgId" placeholder="请输入所在部门" />
|
|
|
+ <el-tree-select
|
|
|
+ v-model="formData.orgId"
|
|
|
+ :data="deptList"
|
|
|
+ :props="defaultProps"
|
|
|
+ check-strictly
|
|
|
+ node-key="id"
|
|
|
+ placeholder="请选择所在部门"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="设备状态" prop="deviceStatus">
|
|
|
- <el-radio-group v-model="formData.deviceStatus">
|
|
|
- <el-radio value="1">请选择字典生成</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
+ <el-form-item label="设备状态">
|
|
|
+ <el-select v-model="formData.deviceStatus" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getIntDictOptions(DICT_TYPE.PMS_DEVICE_STATUS)"
|
|
|
+ :key="dict.id"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="资产性质" prop="assetProperty">
|
|
|
- <el-input v-model="formData.assetProperty" placeholder="请输入资产性质" />
|
|
|
+ <el-form-item label="资产性质">
|
|
|
+ <el-select v-model="formData.assetProperty" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in getIntDictOptions(DICT_TYPE.PMS_ASSET_PROPERTY)"
|
|
|
+ :key="dict.id"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="图片" prop="picUrl">
|
|
|
- <el-input v-model="formData.picUrl" placeholder="请输入图片" />
|
|
|
+ <UploadImg v-model="formData.picUrl" :disabled="isDetail" height="50px" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -93,13 +113,13 @@
|
|
|
<div class="zz-expandable-content" :class="{ 'is-expanded': zzIsExpanded }">
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="制造商id" prop="manufacturerId">
|
|
|
- <el-input v-model="formData.manufacturerId" placeholder="请输入制造商id" />
|
|
|
+ <el-form-item label="制造商" prop="manufacturerId">
|
|
|
+ <el-input v-model="formData.manufacturerId" placeholder="请输入制造商" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="供应商id" prop="supplierId">
|
|
|
- <el-input v-model="formData.supplierId" placeholder="请输入供应商id" />
|
|
|
+ <el-form-item label="供应商" prop="supplierId">
|
|
|
+ <el-input v-model="formData.supplierId" placeholder="请输入供应商" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
@@ -276,6 +296,10 @@
|
|
|
<script setup lang="ts">
|
|
|
import { IotDeviceApi, IotDeviceVO } from '@/api/pms/device'
|
|
|
import BrandList from "@/views/pms/device/BrandList.vue";
|
|
|
+import {defaultProps, handleTree} from "@/utils/tree";
|
|
|
+import * as DeptApi from "@/api/system/dept";
|
|
|
+import {DICT_TYPE, getIntDictOptions} from "@/utils/dict";
|
|
|
+import { useTagsViewStore } from '@/store/modules/tagsView'
|
|
|
|
|
|
/** 设备台账 表单 */
|
|
|
defineOptions({ name: 'IotDeviceForm' })
|
|
@@ -284,7 +308,10 @@ const zzIsExpanded = ref(false); // 控制表单是否展开的变量
|
|
|
const cwIsExpanded = ref(false); // 控制表单是否展开的变量
|
|
|
const qtIsExpanded = ref(false); // 控制表单是否展开的变量
|
|
|
|
|
|
-const { params, name } = useRoute() // 查询参数
|
|
|
+const deptList = ref<Tree[]>([]) // 树形结构
|
|
|
+const { delView } = useTagsViewStore() // 视图操作
|
|
|
+const { params, name} = useRoute() // 查询参数
|
|
|
+const {currentRoute, push} = useRouter()
|
|
|
const id = params.id;
|
|
|
const isDetail = params.isDetail;
|
|
|
const { t } = useI18n() // 国际化
|
|
@@ -377,7 +404,7 @@ defineExpose({ open }) // 提供 open 方法,用于打开弹窗
|
|
|
|
|
|
const close = () => {
|
|
|
delView(unref(currentRoute))
|
|
|
- push({ name: 'Suppliers',query: {
|
|
|
+ push({ name: 'IotDevicePms',query: {
|
|
|
date: new Date().getTime(),
|
|
|
} })
|
|
|
}
|
|
@@ -417,6 +444,9 @@ const submitForm = async () => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+onMounted(async ()=>{
|
|
|
+ deptList.value = handleTree(await DeptApi.getSimpleDeptList())
|
|
|
+})
|
|
|
/** 重置表单 */
|
|
|
const resetForm = () => {
|
|
|
formData.value = {
|