Browse Source

perf(components): 优化“协议内容”组件协议参数表格

1. 添加 S7 协议参数字段
2. 根据协议类型动态显示相关字段
wangcong 2 tháng trước cách đây
mục cha
commit
701f276b12
1 tập tin đã thay đổi với 44 bổ sung4 xóa
  1. 44 4
      src/views/setup-protocol/ProtocolContent.vue

+ 44 - 4
src/views/setup-protocol/ProtocolContent.vue

@@ -38,6 +38,10 @@ const isModbusTcpProtocol = computed(() => {
   return props.info.protocolType?.includes(ProtocolType.ModbusTCP);
 });
 
+const isModbusProtocol = computed(() => {
+  return isModbusRtuProtocol.value || isModbusTcpProtocol.value;
+});
+
 const isS7Protocol = computed(() => {
   return props.info.protocolType?.includes(ProtocolType.S7);
 });
@@ -504,16 +508,52 @@ defineExpose({
       <ATableColumn :title="$t('setupProtocol.protocolParamFields.unit')" data-index="unit" />
       <ATableColumn :title="$t('setupProtocol.protocolParamFields.module')" data-index="module" />
       <ATableColumn :title="$t('setupProtocol.protocolParamFields.readWriteType')" data-index="readWriteType" />
-      <ATableColumn :title="$t('setupProtocol.protocolParamFields.readFunctionCode')" data-index="readFuncCode" />
-      <ATableColumn :title="$t('setupProtocol.protocolParamFields.writeFunctionCode')" data-index="writeFuncCode" />
+      <ATableColumn
+        v-if="isS7Protocol"
+        :title="$t('setupProtocol.protocolParamFields.registerType')"
+        data-index="registerType"
+      />
+      <ATableColumn
+        v-if="isS7Protocol"
+        :title="$t('setupProtocol.protocolParamFields.addrNumber')"
+        data-index="addrNumber"
+      />
+      <ATableColumn
+        v-if="isModbusProtocol"
+        :title="$t('setupProtocol.protocolParamFields.readFunctionCode')"
+        data-index="readFuncCode"
+      />
+      <ATableColumn
+        v-if="isModbusProtocol"
+        :title="$t('setupProtocol.protocolParamFields.writeFunctionCode')"
+        data-index="writeFuncCode"
+      />
       <ATableColumn :title="$t('setupProtocol.protocolParamFields.registerAddress')" data-index="registerAddr" />
       <ATableColumn
         :title="$t('setupProtocol.protocolParamFields.parsingType')"
         data-index="parsingType"
         :width="150"
       />
-      <ATableColumn :title="$t('setupProtocol.protocolParamFields.addressLength')" data-index="addrLength" />
-      <ATableColumn :title="$t('setupProtocol.protocolParamFields.dataType')" data-index="dataType" />
+      <ATableColumn
+        v-if="isS7Protocol"
+        :title="$t('setupProtocol.protocolParamFields.wordLength')"
+        data-index="wordLength"
+      />
+      <ATableColumn
+        v-if="isS7Protocol"
+        :title="$t('setupProtocol.protocolParamFields.quantity')"
+        data-index="quantity"
+      />
+      <ATableColumn
+        v-if="isModbusProtocol"
+        :title="$t('setupProtocol.protocolParamFields.addressLength')"
+        data-index="addrLength"
+      />
+      <ATableColumn
+        v-if="isModbusProtocol"
+        :title="$t('setupProtocol.protocolParamFields.dataType')"
+        data-index="dataType"
+      />
       <ATableColumn :title="$t('setupProtocol.protocolParamFields.coefficient')" data-index="coefficient" />
       <ATableColumn
         :title="$t('setupProtocol.protocolParamFields.isHighFrequencyParameter')"