Merge branch 'main' of https://git.jsspisoft.com/ry-das
This commit is contained in:
commit
cd219785b1
@ -6,10 +6,7 @@ import com.das.common.constant.SysAuthorityIds;
|
||||
import com.das.common.exceptions.ServiceException;
|
||||
import com.das.common.result.R;
|
||||
import com.das.common.utils.PageDataInfo;
|
||||
import com.das.common.utils.StringUtils;
|
||||
import com.das.modules.auth.entity.SysOrg;
|
||||
import com.das.modules.equipment.domain.dto.SysEquipmentDto;
|
||||
import com.das.modules.equipment.domain.dto.SysIotModelDto;
|
||||
import com.das.modules.equipment.domain.vo.EquipmentTypeVo;
|
||||
import com.das.modules.equipment.domain.vo.SysEquipmentVo;
|
||||
import com.das.modules.equipment.service.SysEquipmentService;
|
||||
|
@ -3,6 +3,7 @@ package com.das.modules.node.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.das.modules.node.domain.dto.SysCommunicationLinkDto;
|
||||
import com.das.modules.node.domain.vo.SysCommunicationLinkVo;
|
||||
import com.das.modules.node.entity.SysCommunicationLink;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
@ -10,6 +11,6 @@ import org.apache.ibatis.annotations.Param;
|
||||
|
||||
@Mapper
|
||||
public interface SysCommunicationLinkMapper extends BaseMapper<SysCommunicationLink> {
|
||||
IPage<SysCommunicationLinkVo> querySysCommunicationLinkList(IPage<SysCommunicationLinkVo> page, @Param("id")Long id);
|
||||
IPage<SysCommunicationLinkVo> querySysCommunicationLinkList(IPage<SysCommunicationLinkVo> page, @Param("info") SysCommunicationLinkDto sysCommunicationLinkDto);
|
||||
|
||||
}
|
||||
|
@ -97,7 +97,7 @@ public class SysNodeServiceImpl implements SysNodeService {
|
||||
PageQuery pageQuery = new PageQuery();
|
||||
pageQuery.setPageNum(sysCommunicationLinkDto.getPageNum());
|
||||
pageQuery.setPageSize(sysCommunicationLinkDto.getPageSize());
|
||||
IPage<SysCommunicationLinkVo> iPage = sysCommunicationLinkMapper.querySysCommunicationLinkList(pageQuery.build(), sysCommunicationLinkDto.getNodeId());
|
||||
IPage<SysCommunicationLinkVo> iPage = sysCommunicationLinkMapper.querySysCommunicationLinkList(pageQuery.build(), sysCommunicationLinkDto);
|
||||
return PageDataInfo.build(iPage.getRecords(), iPage.getTotal());
|
||||
}
|
||||
|
||||
|
@ -14,7 +14,14 @@
|
||||
|
||||
<select id="querySysCommunicationLinkList" resultMap="SysCommunicationLinkMap">
|
||||
select sc.*, sn.node_name as nodeName from sys_communicationlink sc left join sys_node sn on sc.node_id = sn.id
|
||||
where sc.node_id = #{id}
|
||||
<where>
|
||||
<if test="info.id != null and info.id != ''">
|
||||
and sc.node_id = #{info.id}
|
||||
</if>
|
||||
<if test="info.linkName != null and info.linkName != ''">
|
||||
and sc.link_name like concat('%',#{info.linkName},'%')
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
||||
|
@ -72,12 +72,15 @@
|
||||
<if test="info.code != null and info.code != ''">
|
||||
and t.code like concat('%',#{info.code},'%')
|
||||
</if>
|
||||
<if test="info.objectType != null and info.objectType != ''">
|
||||
and t.object_type = #{info.objectType}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
||||
<select id="queryEquipmentTree" resultMap="SysEquipmentListMap">
|
||||
select t.* from sys_equipment t WHERE t.parent_equipment_id = 0 order by t.code
|
||||
select t.* from sys_equipment t order by t.code
|
||||
</select>
|
||||
|
||||
<select id="queryChildrenEquipById" resultMap="SysEquipmentListMap">
|
||||
|
@ -237,3 +237,31 @@ export function equipExport(params: object = {}) {
|
||||
responseType: 'blob',
|
||||
})
|
||||
}
|
||||
|
||||
// 设备类型
|
||||
export function equipType(params: object = {}) {
|
||||
return createAxios({
|
||||
url: '/api/equipment/type',
|
||||
method: 'POST',
|
||||
data: params,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 设备详情物模型
|
||||
export function equipDetailsModel(params: object = {}) {
|
||||
return createAxios({
|
||||
url: '/api/equipment/model/list',
|
||||
method: 'POST',
|
||||
data: params,
|
||||
})
|
||||
}
|
||||
|
||||
// 设备详情机构
|
||||
export function equipDetailsOrg(params: object = {} ) {
|
||||
return createAxios({
|
||||
url: '/api/org/list',
|
||||
method: 'POST',
|
||||
data: params,
|
||||
})
|
||||
}
|
@ -14,6 +14,7 @@
|
||||
:load="loadNode"
|
||||
lazy
|
||||
@node-click="handleNodeClick"
|
||||
:default-expanded-keys="['1']"
|
||||
/>
|
||||
</el-main>
|
||||
</el-aside>
|
||||
|
@ -15,6 +15,7 @@
|
||||
:load="loadNode"
|
||||
lazy
|
||||
@node-click="handleNodeClick"
|
||||
:default-expanded-keys="['1']"
|
||||
/>
|
||||
</el-main>
|
||||
</el-aside>
|
||||
@ -231,7 +232,8 @@ const getTree = () => {
|
||||
console.log(treeQuery, 'treeQuery')
|
||||
|
||||
userList(treeQuery).then((res) => {
|
||||
console.log(res, '树')
|
||||
console.log(res.data[0].id, '树用户111')
|
||||
formQuery.orgId = res.data[0].id
|
||||
userData.value = res.data
|
||||
})
|
||||
}
|
||||
|
@ -51,10 +51,10 @@
|
||||
<span style="color: #0064aa; cursor: pointer" @click="viewDeviceDetails(scope)">查看 </span>
|
||||
<span style="color: #0064aa"> | </span>
|
||||
<span style="color: #0064aa; cursor: pointer" @click="deviceDeletion(scope)"> 删除 </span>
|
||||
<span style="color: #0064aa"> | </span>
|
||||
<!-- <span style="color: #0064aa"> | </span>
|
||||
<span style="color: #0064aa; cursor: pointer"> 门户 </span>
|
||||
<span style="color: #0064aa"> | </span>
|
||||
<span style="color: #0064aa; cursor: pointer"> 密码</span>
|
||||
<span style="color: #0064aa; cursor: pointer"> 密码</span> -->
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -74,24 +74,26 @@
|
||||
</el-main>
|
||||
</el-container>
|
||||
<!-- 查看设备详情页面 -->
|
||||
<el-dialog v-model="editDeviceDialog" title="编辑设备台账" width="1000" :before-close="handleCloseEditDevice">
|
||||
<el-dialog v-model="editDeviceDialog" title="编辑设备台账" width="720" :before-close="handleCloseEditDevice">
|
||||
<el-form
|
||||
ref="modifyDeviceDetails"
|
||||
:inline="true"
|
||||
label-width="auto"
|
||||
:model="editDeviceData"
|
||||
:rules="editDeviceRules"
|
||||
style="padding: 20px 33px; font-size: 14px; line-height: 1.5; word-wrap: break-word; font-size: 20px"
|
||||
style="padding: 5px 15px; font-size: 14px; line-height: 1.5; word-wrap: break-word; font-size: 20px"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="设备类型:">
|
||||
<el-input v-model="editDeviceData.objectType" placeholder="请输入设备类型" clearable />
|
||||
<el-input v-model="editDeviceData.objectType" disabled placeholder="请输入设备类型" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="物模型ID:">
|
||||
<el-input v-model="editDeviceData.iotModelId" placeholder="请输入物模型ID" clearable />
|
||||
<el-form-item label="物模型:">
|
||||
<el-select v-model="editDeviceData.iotModelId" placeholder="请选择物模型" style="width: 200px">
|
||||
<el-option v-for="item in equipModeData" :key="item.id" :label="item.iotModelName" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -108,43 +110,58 @@
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="管理部门:" prop="madeinFactory">
|
||||
<el-input v-model="editDeviceData.orgId" placeholder="请输入管理部门" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="生产厂家:">
|
||||
<el-input v-model="editDeviceData.madeinFactory" placeholder="请输入生产厂家" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="规格型号:">
|
||||
<el-input v-model="editDeviceData.model" placeholder="请输入规格型号" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="用户登录管理部门:" prop="madeinFactory">
|
||||
<!-- <el-input v-model="editDeviceData.orgId" placeholder="请输入用户登录管理部门" clearable /> -->
|
||||
<el-tree-select
|
||||
v-model="editDeviceData.orgId"
|
||||
lazy
|
||||
:load="treeSelectLoad"
|
||||
:props="treeSelectProps"
|
||||
check-strictly
|
||||
style="width: 240px"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="所属设备:">
|
||||
<el-input v-model="editDeviceData.parentEquipmentId" disabled placeholder="请输入所属设备" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="安装位置:">
|
||||
<el-input v-model="editDeviceData.location" placeholder="请输入安装位置" clearable />
|
||||
<el-input v-model="editDeviceData.location" style="width: 540px" placeholder="请输入安装位置" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="安装位置_经度:">
|
||||
<el-input v-model="editDeviceData.longitude" placeholder="请输入安装位置_经度" clearable />
|
||||
<el-form-item label="经度:" prop="longitude">
|
||||
<el-input v-model="editDeviceData.longitude" placeholder="请输入经度" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="安装位置_纬度:">
|
||||
<el-input v-model="editDeviceData.latitude" placeholder="请输入安装位置_纬度" clearable />
|
||||
<el-form-item label="纬度:" prop="latitude">
|
||||
<el-input v-model="editDeviceData.latitude" placeholder="请输入纬度" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="安装日期:">
|
||||
<el-date-picker
|
||||
v-model="editDeviceData.installDate"
|
||||
@ -157,16 +174,16 @@
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-col :span="16">
|
||||
<el-form-item label="备注:">
|
||||
<el-input v-model="editDeviceData.remarks" placeholder="请输入备注" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col>
|
||||
<el-form-item label="上级设备ID:">
|
||||
<el-input v-model="editDeviceData.parentEquipmentId" placeholder="请输入上级设备ID" clearable />
|
||||
<el-input
|
||||
v-model="editDeviceData.remarks"
|
||||
style="width: 295px"
|
||||
:rows="2"
|
||||
type="textarea"
|
||||
placeholder="请输入备注"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -180,24 +197,26 @@
|
||||
</template>
|
||||
</el-dialog>
|
||||
<!-- 新增设备详情页面 -->
|
||||
<el-dialog v-model="editAddDeviceDialog" title="新增设备台账" width="1000" :before-close="handleCloseAddEditDevice">
|
||||
<el-dialog v-model="editAddDeviceDialog" title="新增设备台账" width="720" :before-close="handleCloseAddEditDevice">
|
||||
<el-form
|
||||
ref="modifyAddDeviceDetails"
|
||||
:inline="true"
|
||||
label-width="auto"
|
||||
:model="editAddDeviceData"
|
||||
:rules="editAddDeviceRules"
|
||||
style="padding: 20px 33px; font-size: 14px; line-height: 1.5; word-wrap: break-word; font-size: 20px"
|
||||
style="padding: 5px 15px; font-size: 14px; line-height: 1.5; word-wrap: break-word; font-size: 20px"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="设备类型:">
|
||||
<el-input v-model="editAddDeviceData.objectType" placeholder="请输入设备类型" clearable />
|
||||
<el-input v-model="editAddDeviceData.objectType" disabled placeholder="请输入设备类型" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="物模型ID:">
|
||||
<el-input v-model="editAddDeviceData.iotModelId" placeholder="请输入物模型ID" clearable />
|
||||
<el-form-item label="物模型:">
|
||||
<el-select v-model="editAddDeviceData.iotModelId" placeholder="请选择物模型" style="width: 200px">
|
||||
<el-option v-for="item in equipModeData" :key="item.id" :label="item.iotModelName" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -214,43 +233,58 @@
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="管理部门:" prop="madeinFactory">
|
||||
<el-input v-model="editAddDeviceData.orgId" placeholder="请输入管理部门" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="生产厂家:">
|
||||
<el-input v-model="editAddDeviceData.madeinFactory" placeholder="请输入生产厂家" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="规格型号:">
|
||||
<el-input v-model="editAddDeviceData.model" placeholder="请输入规格型号" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="用户登录管理部门:" prop="madeinFactory">
|
||||
<!-- <el-input v-model="editAddDeviceData.orgId" placeholder="请输入用户登录管理部门" clearable /> -->
|
||||
<el-tree-select
|
||||
v-model="editAddDeviceData.orgId"
|
||||
lazy
|
||||
:load="treeSelectLoad"
|
||||
:props="treeSelectProps"
|
||||
check-strictly
|
||||
style="width: 240px"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="所属设备:">
|
||||
<el-input v-model="editAddDeviceData.parentEquipmentId" disabled placeholder="请输入所属设备" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="安装位置:">
|
||||
<el-input v-model="editAddDeviceData.location" placeholder="请输入安装位置" clearable />
|
||||
<el-input v-model="editAddDeviceData.location" style="width: 540px" placeholder="请输入安装位置" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="安装位置_经度:">
|
||||
<el-input v-model="editAddDeviceData.longitude" placeholder="请输入安装位置_经度" clearable />
|
||||
<el-form-item label="经度:" prop="longitude">
|
||||
<el-input v-model="editAddDeviceData.longitude" placeholder="请输入经度" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="安装位置_纬度:">
|
||||
<el-input v-model="editAddDeviceData.latitude" placeholder="请输入安装位置_纬度" clearable />
|
||||
<el-form-item label="纬度:" prop="latitude">
|
||||
<el-input v-model="editAddDeviceData.latitude" placeholder="请输入纬度" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="安装日期:">
|
||||
<el-date-picker
|
||||
v-model="editAddDeviceData.installDate"
|
||||
@ -263,16 +297,16 @@
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-col :span="16">
|
||||
<el-form-item label="备注:">
|
||||
<el-input v-model="editAddDeviceData.remarks" placeholder="请输入备注" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="上级设备ID:">
|
||||
<el-input v-model="editAddDeviceData.parentEquipmentId" placeholder="请输入上级设备ID" clearable />
|
||||
<el-input
|
||||
v-model="editAddDeviceData.remarks"
|
||||
style="width: 295px"
|
||||
:rows="2"
|
||||
type="textarea"
|
||||
placeholder="请输入备注"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -302,9 +336,19 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, reactive, onMounted } from 'vue'
|
||||
import { Search, CirclePlusFilled, Upload, Download } from '@element-plus/icons-vue'
|
||||
import { equipTree, equipQuery, equipAdd, equipDelete, equipUpdate, equipImport, equipExport } from '/@/api/backend'
|
||||
import {
|
||||
equipTree,
|
||||
equipQuery,
|
||||
equipAdd,
|
||||
equipDelete,
|
||||
equipUpdate,
|
||||
equipImport,
|
||||
equipExport,
|
||||
equipType,
|
||||
equipDetailsModel,
|
||||
equipDetailsOrg,
|
||||
} from '/@/api/backend'
|
||||
import { ElTable, ElMessage, ElMessageBox } from 'element-plus'
|
||||
import type { UploadProps, UploadUserFile } from 'element-plus'
|
||||
import type Node from 'element-plus/es/components/tree/src/model/node'
|
||||
import { useAdminInfo } from '/@/stores/adminInfo'
|
||||
import { encrypt_aes, generateRandomNumber } from '/@/utils/crypto'
|
||||
@ -331,24 +375,72 @@ const getTree = () => {
|
||||
userData.value = res.data
|
||||
})
|
||||
}
|
||||
// 设备类型
|
||||
const deviceTypeList = ref()
|
||||
const equipTypeList = () => {
|
||||
equipType().then((res) => {
|
||||
deviceTypeList.value = res.data
|
||||
})
|
||||
}
|
||||
|
||||
// const aa = (data: any[]) => {
|
||||
// data.forEach((item: any) => {
|
||||
// if (!item.orgChildren) {
|
||||
// item.orgChildren = []
|
||||
// }
|
||||
// if (!item.equipChildren) {
|
||||
// item.equipChildren = []
|
||||
// }
|
||||
// if (item.orgChildren && item.orgChildren.length) {
|
||||
// item.equipChildren = [...item.equipChildren, ...item.orgChildren]
|
||||
// aa(item.orgChildren)
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
// 设备详情物模型
|
||||
const equipModeData = ref()
|
||||
const equipModeList = () => {
|
||||
equipDetailsModel({
|
||||
objectType: '',
|
||||
}).then((res) => {
|
||||
equipModeData.value = res.data
|
||||
})
|
||||
}
|
||||
|
||||
// 设备详情机构列表
|
||||
const equipOrgData = ref()
|
||||
const equipOrgList = () => {
|
||||
equipDetailsOrg({
|
||||
parentOrgId: adminInfo.orgid,
|
||||
}).then((res) => {
|
||||
console.log(res, '设备详情机构列表')
|
||||
equipOrgData.value = res.data
|
||||
})
|
||||
}
|
||||
|
||||
const treeSelectLoad = (node: any, resolve: any) => {
|
||||
console.log(node, 'treeSelectLoad')
|
||||
if (node.level === 0) {
|
||||
equipDetailsOrg({
|
||||
parentOrgId: null,
|
||||
}).then((res: any) => {
|
||||
if (!res.data.length) {
|
||||
node.isLeaf = true
|
||||
}
|
||||
|
||||
return resolve(res.data)
|
||||
})
|
||||
} else {
|
||||
equipDetailsOrg({ parentOrgId: node.data.id })
|
||||
.then((res: any) => {
|
||||
if (!res.data.length) {
|
||||
node.isLeaf = true
|
||||
}
|
||||
return resolve(res.data)
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const treeSelectProps = {
|
||||
label: 'name',
|
||||
value: 'id',
|
||||
children: 'children',
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
getTree()
|
||||
equipTypeList()
|
||||
equipModeList()
|
||||
equipOrgList()
|
||||
})
|
||||
|
||||
const formQuery = reactive({
|
||||
@ -403,21 +495,28 @@ const nameQuery2 = reactive({
|
||||
code: '',
|
||||
})
|
||||
const deviceTypeQuery = () => {
|
||||
// 名称查询
|
||||
if (headerForm.resource === '1') {
|
||||
nameQuery.name = headerForm.searchFor
|
||||
nameQuery.parentEquipmentId = queryParameter.value.id
|
||||
nameQuery.pageSize = currentPageSize.value
|
||||
nameQuery.pageNum = currentPage.value
|
||||
deviceQuery(nameQuery)
|
||||
}
|
||||
// 编码查询
|
||||
if (headerForm.resource === '2') {
|
||||
nameQuery2.code = headerForm.searchFor
|
||||
nameQuery2.parentEquipmentId = queryParameter.value.id
|
||||
nameQuery2.pageSize = currentPageSize.value
|
||||
nameQuery2.pageNum = currentPage.value
|
||||
deviceQuery(nameQuery2)
|
||||
if (queryParameter.value) {
|
||||
// 名称查询
|
||||
if (headerForm.resource === '1') {
|
||||
nameQuery.name = headerForm.searchFor
|
||||
nameQuery.parentEquipmentId = queryParameter.value.id
|
||||
nameQuery.pageSize = currentPageSize.value
|
||||
nameQuery.pageNum = currentPage.value
|
||||
deviceQuery(nameQuery)
|
||||
}
|
||||
// 编码查询
|
||||
if (headerForm.resource === '2') {
|
||||
nameQuery2.code = headerForm.searchFor
|
||||
nameQuery2.parentEquipmentId = queryParameter.value.id
|
||||
nameQuery2.pageSize = currentPageSize.value
|
||||
nameQuery2.pageNum = currentPage.value
|
||||
deviceQuery(nameQuery2)
|
||||
}
|
||||
} else {
|
||||
ElMessage.error({
|
||||
message: '无设备节点搜索,请选择!',
|
||||
type: 'error',
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@ -447,20 +546,31 @@ const headerForm = reactive({
|
||||
|
||||
// 新增按钮
|
||||
const addDeviceList = () => {
|
||||
editAddDeviceDialog.value = true
|
||||
editAddDeviceData.objectType = ''
|
||||
editAddDeviceData.code = ''
|
||||
editAddDeviceData.name = ''
|
||||
editAddDeviceData.madeinFactory = ''
|
||||
editAddDeviceData.model = ''
|
||||
editAddDeviceData.location = ''
|
||||
editAddDeviceData.longitude = ''
|
||||
editAddDeviceData.latitude = ''
|
||||
editAddDeviceData.installDate = ''
|
||||
editAddDeviceData.remarks = ''
|
||||
editAddDeviceData.orgId = ''
|
||||
editAddDeviceData.parentEquipmentId = ''
|
||||
editAddDeviceData.iotModelId = ''
|
||||
if (queryParameter.value) {
|
||||
editAddDeviceDialog.value = true
|
||||
deviceTypeList.value.forEach((ele: any) => {
|
||||
if (String(ele.equipmentTypeId) === queryParameter.value.code) {
|
||||
editAddDeviceData.objectType = ele.equipmentTypeName
|
||||
}
|
||||
})
|
||||
editAddDeviceData.code = ''
|
||||
editAddDeviceData.name = ''
|
||||
editAddDeviceData.madeinFactory = ''
|
||||
editAddDeviceData.model = ''
|
||||
editAddDeviceData.location = ''
|
||||
editAddDeviceData.longitude = ''
|
||||
editAddDeviceData.latitude = ''
|
||||
editAddDeviceData.installDate = ''
|
||||
editAddDeviceData.remarks = ''
|
||||
editAddDeviceData.orgId = ''
|
||||
editAddDeviceData.parentEquipmentId = queryParameter.value.id
|
||||
editAddDeviceData.iotModelId = ''
|
||||
} else {
|
||||
ElMessage.error({
|
||||
message: '无设备节点添加,请选择!',
|
||||
type: 'error',
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 查看设备详情
|
||||
@ -492,10 +602,16 @@ const handleCloseEditDevice = () => {
|
||||
// 设备查看按钮
|
||||
const viewDeviceDetails = (data: any) => {
|
||||
console.log(data, '查看设备详情')
|
||||
|
||||
modifyDeviceDetails.value?.resetFields()
|
||||
editDeviceDialog.value = true
|
||||
editDeviceData.id = data.row.id
|
||||
editDeviceData.objectType = data.row.objectType
|
||||
deviceTypeList.value.forEach((ele: any) => {
|
||||
if (ele.equipmentTypeId === data.row.objectType) {
|
||||
editDeviceData.objectType = ele.equipmentTypeName
|
||||
}
|
||||
})
|
||||
|
||||
// editDeviceData.objectType = data.row.objectType
|
||||
editDeviceData.code = data.row.code
|
||||
editDeviceData.name = data.row.name
|
||||
editDeviceData.madeinFactory = data.row.madeinFactory
|
||||
@ -543,36 +659,47 @@ const dialogDeviceDeletion1 = () => {
|
||||
}
|
||||
})
|
||||
}
|
||||
const longitudePass = (rule: any, value: any, callback: any) => {
|
||||
console.log(value, 6666)
|
||||
if (!value) {
|
||||
callback()
|
||||
}
|
||||
if (value >= 73.66 && value <= 135.05) {
|
||||
callback()
|
||||
} else {
|
||||
callback(new Error('请输入73.66~135.05之间的数字'))
|
||||
}
|
||||
}
|
||||
|
||||
const latitudePass = (rule: any, value: any, callback: any) => {
|
||||
console.log(value, 6666)
|
||||
if (!value) {
|
||||
callback()
|
||||
}
|
||||
if (value >= 3.86 && value <= 53.55) {
|
||||
callback()
|
||||
} else {
|
||||
callback(new Error('请输入3.86~53.55之间的数字'))
|
||||
}
|
||||
}
|
||||
|
||||
const editDeviceRules = reactive({
|
||||
// name: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '设备名称不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
// code: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '设备编码不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
// administrative: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '管理部门不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
// statusIdentification: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '状态标识不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
name: [
|
||||
{
|
||||
required: true,
|
||||
message: '设备名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
code: [
|
||||
{
|
||||
required: true,
|
||||
message: '设备编码不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
longitude: [{ validator: longitudePass, trigger: 'blur' }],
|
||||
latitude: [{ validator: latitudePass, trigger: 'blur' }],
|
||||
})
|
||||
const modifyDeviceDetails = ref()
|
||||
const saveData = () => {
|
||||
@ -580,6 +707,11 @@ const saveData = () => {
|
||||
|
||||
modifyDeviceDetails.value.validate((valid: any) => {
|
||||
if (valid) {
|
||||
deviceTypeList.value.forEach((ele: any) => {
|
||||
if (ele.equipmentTypeName === editDeviceData.objectType) {
|
||||
editDeviceData.objectType = ele.equipmentTypeId
|
||||
}
|
||||
})
|
||||
equipUpdate(editDeviceData).then((res: any) => {
|
||||
if (res.code == 200) {
|
||||
ElMessage({
|
||||
@ -622,34 +754,22 @@ const editAddDeviceData = reactive({
|
||||
|
||||
// 设备新增字段校验
|
||||
const editAddDeviceRules = reactive({
|
||||
// name: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '设备名称不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
// code: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '设备编码不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
// administrative: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '管理部门不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
// statusIdentification: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: '状态标识不能为空',
|
||||
// trigger: 'blur',
|
||||
// },
|
||||
// ],
|
||||
name: [
|
||||
{
|
||||
required: true,
|
||||
message: '设备名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
code: [
|
||||
{
|
||||
required: true,
|
||||
message: '设备编码不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
longitude: [{ validator: longitudePass, trigger: 'blur' }],
|
||||
latitude: [{ validator: latitudePass, trigger: 'blur' }],
|
||||
})
|
||||
|
||||
const editAddDeviceDialog = ref(false)
|
||||
@ -657,7 +777,13 @@ const modifyAddDeviceDetails = ref()
|
||||
const saveAddData = () => {
|
||||
modifyAddDeviceDetails.value.validate((valid: any) => {
|
||||
if (valid) {
|
||||
deviceTypeList.value.forEach((ele: any) => {
|
||||
if (ele.equipmentTypeName === editAddDeviceData.objectType) {
|
||||
editAddDeviceData.objectType = String(ele.equipmentTypeId)
|
||||
}
|
||||
})
|
||||
console.log(editAddDeviceData, 'editAddDeviceData')
|
||||
|
||||
equipAdd(editAddDeviceData).then((res) => {
|
||||
if (res.code == 200) {
|
||||
ElMessage({
|
||||
|
Loading…
Reference in New Issue
Block a user