Commit b863cfb9b8543790da3a5b484e5054fd460e2e25
1 parent
a1f68930
fix: get device attribute by device profile id
Showing
2 changed files
with
25 additions
and
14 deletions
... | ... | @@ -3,7 +3,7 @@ class ConfigurationNodeApi { |
3 | 3 | /** |
4 | 4 | * @description 获取用户权限 |
5 | 5 | */ |
6 | - static getUserPermissions(){ | |
6 | + static getUserPermissions() { | |
7 | 7 | return defHttp.get('/yt/role/me/permissions') |
8 | 8 | } |
9 | 9 | |
... | ... | @@ -171,4 +171,14 @@ class ConfigurationNodeApi { |
171 | 171 | static getStreamingVideoPlayUrl(id) { |
172 | 172 | return defHttp.get(`/yt/video/url/${id}`) |
173 | 173 | } |
174 | + | |
175 | + /** | |
176 | + * @description 获取设备物模型属性 | |
177 | + * @param {*} deviceProfileId | |
178 | + * @param {*} dataType | |
179 | + * @returns | |
180 | + */ | |
181 | + static getDeviceAttribute(deviceProfileId, dataType) { | |
182 | + return defHttp.get(`/yt/device/attributes/${deviceProfileId}`, { params: { dataType } }) | |
183 | + } | |
174 | 184 | } | ... | ... |
... | ... | @@ -7777,13 +7777,13 @@ DataFormatPanel.prototype.addDataFont = function (container) { |
7777 | 7777 | |
7778 | 7778 | /** |
7779 | 7779 | * @description |
7780 | - * @type {{id: string, deviceType: string, name: string}[]} | |
7780 | + * @type {{id: string, deviceType: string, name: string, deviceProfileId: string}[]} | |
7781 | 7781 | */ |
7782 | 7782 | let deviceList = [] |
7783 | 7783 | |
7784 | 7784 | /** |
7785 | 7785 | * @description |
7786 | - * @type {{id: string, deviceType: string, name: string}[]} | |
7786 | + * @type {{id: string, deviceType: string, name: string, deviceProfileId: string}[]} | |
7787 | 7787 | */ |
7788 | 7788 | let slaveDeviceList = [] |
7789 | 7789 | |
... | ... | @@ -7850,10 +7850,10 @@ DataFormatPanel.prototype.addDataFont = function (container) { |
7850 | 7850 | /** |
7851 | 7851 | * @description 根据设备ID获取属性 |
7852 | 7852 | */ |
7853 | - async function getAttrByDeviceId(tbDeviceId) { | |
7854 | - if (tbDeviceId) { | |
7855 | - const [err, res] = await to(ConfigurationNodeApi.getDeviceAttr(tbDeviceId)) | |
7856 | - $(`#${componentId} `).find(`select[name="${enumDataSourceConst.ATTR}"]`).html(UseLayUi.generateOptionTemplate({ dataSource: res })) | |
7853 | + async function getAttrByDeviceId(deviceProfileId) { | |
7854 | + if (deviceProfileId) { | |
7855 | + const [err, res] = await to(ConfigurationNodeApi.getDeviceAttribute(deviceProfileId)) | |
7856 | + $(`#${componentId} `).find(`select[name="${enumDataSourceConst.ATTR}"]`).html(UseLayUi.generateOptionTemplate({ dataSource: Array.isArray(res) ? res : [], labelField: 'name', valueField: 'identifier' })) | |
7857 | 7857 | form.render('select', componentFilter) |
7858 | 7858 | } |
7859 | 7859 | } |
... | ... | @@ -7882,9 +7882,9 @@ DataFormatPanel.prototype.addDataFont = function (container) { |
7882 | 7882 | data: treeList, |
7883 | 7883 | onlyIconControl: true, |
7884 | 7884 | click(node) { |
7885 | - currentCheckedOrgNode = node.data.id | |
7885 | + currentCheckedOrgNode = node?.data?.id | |
7886 | 7886 | form.val(componentFilter, { |
7887 | - [enumDataSourceConst.ORG_NAME]: node.data.title, | |
7887 | + [enumDataSourceConst.ORG_NAME]: node?.data?.title, | |
7888 | 7888 | [enumDataSourceConst.DEVICE_ID]: null, |
7889 | 7889 | [enumDataSourceConst.SLAVE_DEVICE_ID]: null, |
7890 | 7890 | [enumDataSourceConst.ATTR]: null, |
... | ... | @@ -7913,7 +7913,7 @@ DataFormatPanel.prototype.addDataFont = function (container) { |
7913 | 7913 | const selected = deviceList.find(item => item.id === value) |
7914 | 7914 | if (!selected) return |
7915 | 7915 | form.val(componentFilter, { |
7916 | - [enumDataSourceConst.DEVICE_NAME]: selected.name, | |
7916 | + [enumDataSourceConst.DEVICE_NAME]: selected?.name, | |
7917 | 7917 | [enumDataSourceConst.SLAVE_DEVICE_ID]: null, |
7918 | 7918 | [enumDataSourceConst.ATTR]: null, |
7919 | 7919 | [enumDataSourceConst.SLAVE_DEVICE_NAME]: null, |
... | ... | @@ -7928,7 +7928,8 @@ DataFormatPanel.prototype.addDataFont = function (container) { |
7928 | 7928 | $(`#${componentId}`).find(`select[name="${enumDataSourceConst.SLAVE_DEVICE_ID}"]`) |
7929 | 7929 | .attr('lay-verify', '').attr('lay-verType', 'tips') |
7930 | 7930 | .parentsUntil(`#${componentId}`).hide() |
7931 | - getAttrByDeviceId(selected.id) | |
7931 | + console.log(selected) | |
7932 | + getAttrByDeviceId(selected.deviceProfileId) | |
7932 | 7933 | } |
7933 | 7934 | }, |
7934 | 7935 | }) |
... | ... | @@ -7948,11 +7949,11 @@ DataFormatPanel.prototype.addDataFont = function (container) { |
7948 | 7949 | const { value } = data |
7949 | 7950 | const selected = slaveDeviceList.find(item => item.id === value) |
7950 | 7951 | form.val(componentFilter, { |
7951 | - [enumDataSourceConst.SLAVE_DEVICE_NAME]: selected.name, | |
7952 | + [enumDataSourceConst.SLAVE_DEVICE_NAME]: selected?.name, | |
7952 | 7953 | [enumDataSourceConst.ATTR]: null, |
7953 | 7954 | [enumDataSourceConst.ATTR_NAME]: null, |
7954 | 7955 | }) |
7955 | - getAttrByDeviceId(value) | |
7956 | + getAttrByDeviceId(selected.deviceProfileId) | |
7956 | 7957 | }, |
7957 | 7958 | }) |
7958 | 7959 | $(component).append(slaveDeviceSelect) |
... | ... | @@ -13448,7 +13449,7 @@ class DispatchCenter { |
13448 | 13449 | |
13449 | 13450 | message && messageList.tsSubCmds.push(message) |
13450 | 13451 | }) |
13451 | - | |
13452 | + | |
13452 | 13453 | return messageList |
13453 | 13454 | } |
13454 | 13455 | ... | ... |