Przeglądaj źródła

修改默认单位参数;修改面板样式

lichunyang 4 tygodni temu
rodzic
commit
96f9218dde
1 zmienionych plików z 76 dodań i 65 usunięć
  1. 76 65
      src/views/model/vueflow/aside/asideData.vue

+ 76 - 65
src/views/model/vueflow/aside/asideData.vue

@@ -10,67 +10,69 @@
       <el-tabs v-model="activename" style="height: 100%">
         <el-tab-pane label="数据" name="data" style="height: 100%">
           <Splitpanes horizontal>
-            <Pane min-size="20" size="50" max-size="80">
-              <el-table :data="filteredData" border class="datatable">
-                <el-table-column type="index" width="40" label="" />
-                <el-table-column prop="name" label="属性"> </el-table-column>
-                <el-table-column prop="value" label="值">
-                  <template #default="{ row }">
-                    <!-- 如果是1 :下拉选择 -->
-                    <el-select
-                      v-if="row.valueType === 1"
-                      v-model="row.value"
-                      placeholder="请选择"
-                      class="full-width-select"
-                      @change="(val) => handleShapeChange(row, val)"
-                    >
-                      <el-option
-                        v-for="option in row.options"
-                        :key="option.val"
-                        :label="option.tag"
-                        :value="option.val"
+            <Pane min-size="10" size="50" max-size="80">
+              <div class="table-wrapper">
+                <el-table :data="filteredData" border class="datatable">
+                  <el-table-column type="index" width="40" label="" />
+                  <el-table-column prop="name" label="属性"> </el-table-column>
+                  <el-table-column prop="value" label="值">
+                    <template #default="{ row }">
+                      <!-- 如果是1 :下拉选择 -->
+                      <el-select
+                        v-if="row.valueType === 1"
+                        v-model="row.value"
+                        placeholder="请选择"
+                        class="full-width-select"
+                        @change="(val) => handleShapeChange(row, val)"
                       >
-                      </el-option>
-                    </el-select>
-                    <!-- 如果是2: 输入框 -->
-                    <el-input
-                      v-else-if="row.valueType === 2"
-                      v-model="row.value"
-                      class="full-width-input"
-                    />
-                    <!-- 如果是3: 弹窗 -->
-                    <el-button
-                      v-else-if="row.valueType === 3"
-                      :loading="loadingStates[row.pcaId] || false"
-                      @click="handleClick(row)"
-                    ></el-button>
-                    <div v-else>{{ row.valueDef }}</div>
-                  </template>
-                </el-table-column>
-                <el-table-column prop="unit" label="单位" width="100">
-                  <template #default="{ row }">
-                    <el-select
-                      v-if="row.unitType !== '无'"
-                      v-model="row.unitDef"
-                      placeholder="请选择"
-                      @focus="fetchUnitsForRow(row)"
-                      :loading="moreOptionsLoading"
-                      class="full-width-select"
-                    >
-                      <el-option
-                        v-for="option in row.unitoptions"
-                        :key="option.utId"
-                        :label="option.value"
-                        :value="option.value"
+                        <el-option
+                          v-for="option in row.options"
+                          :key="option.val"
+                          :label="option.tag"
+                          :value="option.val"
+                        >
+                        </el-option>
+                      </el-select>
+                      <!-- 如果是2: 输入框 -->
+                      <el-input
+                        v-else-if="row.valueType === 2"
+                        v-model="row.value"
+                        class="full-width-input"
+                      />
+                      <!-- 如果是3: 弹窗 -->
+                      <el-button
+                        v-else-if="row.valueType === 3"
+                        :loading="loadingStates[row.pcaId] || false"
+                        @click="handleClick(row)"
+                      ></el-button>
+                      <div v-else>{{ row.valueDef }}</div>
+                    </template>
+                  </el-table-column>
+                  <el-table-column prop="unit" label="单位" width="100">
+                    <template #default="{ row }">
+                      <el-select
+                        v-if="row.unitType !== '无'"
+                        v-model="row.unitDef"
+                        placeholder="请选择"
+                        @focus="fetchUnitsForRow(row)"
+                        :loading="moreOptionsLoading"
+                        class="full-width-select"
                       >
-                      </el-option>
-                    </el-select>
-                    <div v-else>{{ row.unitType }}</div>
-                  </template>
-                </el-table-column>
-              </el-table>
-              <div class="footbtn">
-                <el-button @click="savecomvalue">保存</el-button>
+                        <el-option
+                          v-for="option in row.unitoptions"
+                          :key="option.utId"
+                          :label="option.value"
+                          :value="option.value"
+                        >
+                        </el-option>
+                      </el-select>
+                      <div v-else>{{ row.unitType }}</div>
+                    </template>
+                  </el-table-column>
+                </el-table>
+                <div class="footbtn">
+                  <el-button @click="savecomvalue">保存</el-button>
+                </div>
               </div>
             </Pane>
             <Pane min-size="20" size="50" max-size="80">
@@ -845,7 +847,6 @@ const saveTabelDialog = () => {
     const rowFields = tableColumns.value.map((col) => {
       const cellData = row[col.code]
       if (!cellData) return ""
-      console.log("cellDataqqqqqqqq", cellData);
       
 
       // 组装 cdvId-pcadgId-pcadId-value-unit 格式
@@ -854,7 +855,7 @@ const saveTabelDialog = () => {
         cellData.pcadgId || "", // pcadgId (行号)
         cellData.pcadId || "", // pcadId
         cellData.value || "", // value
-        cellData.unit || "" // unit
+        cellData.unit != ''? cellData.unit : "无" // unit
       ].join(",") // 字段间用逗号分隔
     })
 
@@ -1044,16 +1045,26 @@ defineExpose({
 }
 
 .datatable {
+  flex: 1; /* 表格自动填充剩余空间 */
+  overflow: auto; /* 表格内容可滚动 */
   width: 100%;
-  max-height: 290px;
-  overflow: auto;
+  min-height: 80px; /* 可选:防止数据太少时表格高度塌缩 */
+}
+
+.table-wrapper {
+  height: 100%; /* 占满整个 Pane */
+  display: flex;
+  flex-direction: column;
+  overflow: hidden; /* 防止外层滚动 */
 }
 
 .footbtn {
   display: flex;
+  padding: 8px 20px;
+  background: #fff;
+  border-top: 1px solid #ebeef5;
+  flex-shrink: 0; /* 防止按钮被压缩 */
   justify-content: end;
-  align-items: center;
-  padding: 10px 20px;
 }
 
 .unitheader {