Showing
1 changed file
with
7 additions
and
8 deletions
@@ -16277,20 +16277,22 @@ class HandleDataInteraction { | @@ -16277,20 +16277,22 @@ class HandleDataInteraction { | ||
16277 | number = number.toString() | 16277 | number = number.toString() |
16278 | const floatIndex = number.indexOf('.') | 16278 | const floatIndex = number.indexOf('.') |
16279 | const floatPart = ~floatIndex ? `0.${number.substring(floatIndex + 1)}` : '0'; | 16279 | const floatPart = ~floatIndex ? `0.${number.substring(floatIndex + 1)}` : '0'; |
16280 | - return floatPart | 16280 | + return Number(floatPart) |
16281 | } | 16281 | } |
16282 | 16282 | ||
16283 | if (commandType == enumCommandType.MODBUS) { | 16283 | if (commandType == enumCommandType.MODBUS) { |
16284 | - value = data[enumActionEl.CUSTOM_TCP_COMMAND] | ||
16285 | - const { method, deviceCode, zoomFactor = 1 } = additional || {} | 16284 | + value = Number(data[enumActionEl.CUSTOM_TCP_COMMAND]) |
16286 | 16285 | ||
16286 | + let { method, deviceCode, zoomFactor } = additional || {} | ||
16287 | + zoomFactor = zoomFactor ? zoomFactor : 1 | ||
16287 | const validate = new Validate([ | 16288 | const validate = new Validate([ |
16288 | { value: deviceCode, required: true, message: '未找到设备地址码' }, | 16289 | { value: deviceCode, required: true, message: '未找到设备地址码' }, |
16289 | { value: method, required: true, message: '未找到Modbus命令操作类型' }, | 16290 | { value: method, required: true, message: '未找到Modbus命令操作类型' }, |
16291 | + { value, required: true, message: '下发值不是一个数字', validator(value) { return !isNaN(value) } }, | ||
16290 | { value, required: true, message: '下发值是必填项' }, | 16292 | { value, required: true, message: '下发值是必填项' }, |
16291 | ...(method == '05' ? [{ value, message: '下发类型必须为0或1', validator(value) { return value == 0 || value == 1 } }] : []), | 16293 | ...(method == '05' ? [{ value, message: '下发类型必须为0或1', validator(value) { return value == 0 || value == 1 } }] : []), |
16292 | - ...(method == '06' ? [{ value, message: `下发类型必须为整型,缩放因子为${zoomFactor}`, validator(value) { return !isNaN(value) && getNumberFloatPart(value) * zoomFactor % 1 === 0 } }, { value: value * zoomFactor, message: `最大值不能超过65535,缩放因子为${zoomFactor}`, validator(value) { return Number(value) <= parseInt('ffff', 16) } }] : []), | ||
16293 | - ...(method == '16' ? [{ value, message: '下发类型精确到两位小数', validator(value) { return /^-?\d+(\.\d{0,2})?$/.test( Math.floor(value) * zoomFactor + getNumberFloatPart(value) * zoomFactor) } }] : []) | 16294 | + ...(method == '06' ? [{ value, message: `下发类型必须为整型,缩放因子为${zoomFactor}`, validator(value) { return !isNaN(value) && getNumberFloatPart(value) * zoomFactor % 1 === 0 } }, { value: Number(value) * zoomFactor, message: `最大值不能超过65535,缩放因子为${zoomFactor}`, validator(value) { return Number(value) <= parseInt('ffff', 16) } }] : []), |
16295 | + ...(method == '16' ? [{ value, message: '下发类型精确到两位小数', validator(value) { return /^-?\d+(\.\d{0,2})?$/.test(Math.floor(Number(value)) * zoomFactor + getNumberFloatPart(Number(value)) * zoomFactor) } }] : []) | ||
16294 | ]) | 16296 | ]) |
16295 | 16297 | ||
16296 | if (method == '06' || method == '16') { | 16298 | if (method == '06' || method == '16') { |
@@ -16780,7 +16782,6 @@ class HandleDynamicEffect { | @@ -16780,7 +16782,6 @@ class HandleDynamicEffect { | ||
16780 | } else if (condition.type === HandleDynamicEffect.enumDisplayType.HIDDEN) { | 16782 | } else if (condition.type === HandleDynamicEffect.enumDisplayType.HIDDEN) { |
16781 | isShow = false | 16783 | isShow = false |
16782 | } | 16784 | } |
16783 | - console.log(condition) | ||
16784 | const updateFn = () => { | 16785 | const updateFn = () => { |
16785 | if (!isShow) { | 16786 | if (!isShow) { |
16786 | Object.keys(HandleDynamicEffect.enumActType).forEach(key => { | 16787 | Object.keys(HandleDynamicEffect.enumActType).forEach(key => { |
@@ -16795,9 +16796,7 @@ class HandleDynamicEffect { | @@ -16795,9 +16796,7 @@ class HandleDynamicEffect { | ||
16795 | } | 16796 | } |
16796 | if (condition.title) { | 16797 | if (condition.title) { |
16797 | node.setAttribute('label', condition.title) | 16798 | node.setAttribute('label', condition.title) |
16798 | - console.log(node) | ||
16799 | } | 16799 | } |
16800 | - node.setVisible(isShow) | ||
16801 | } | 16800 | } |
16802 | this.insertOnceUpdateFn(node, updateFn) | 16801 | this.insertOnceUpdateFn(node, updateFn) |
16803 | } | 16802 | } |