瀏覽代碼

展示字段修改

lucw 7 月之前
父節點
當前提交
076c37030d
共有 1 個文件被更改,包括 125 次插入60 次删除
  1. 125 60
      src/views/bpm/handleTask/components/mesBatchRecordManage/detailDialog.vue

+ 125 - 60
src/views/bpm/handleTask/components/mesBatchRecordManage/detailDialog.vue

@@ -129,72 +129,70 @@
       ></header-title>
       <!-- 记录规则 -->
       <div v-if="details.executeMethod == 2">
-        <el-table
+        <ele-pro-table
           v-loading="loading"
-          :data="details.details"
-          style="width: 100%"
+          ref="table"
+          row-key="id"
+          :columns="detailsColumns"
+          :datasource="details.details"
+          cacheKey="mes-releaseRulesDialong-2510291358"
+          :needPage="false"
         >
-          <el-table-column type="index" label="序号" width="50">
-          </el-table-column>
-          <el-table-column label="检查内容">
-            <template slot-scope="scope">
-              <div>
-                {{ scope.row.paramValue }}
-              </div>
-            </template>
-          </el-table-column>
-
-          <el-table-column label="检查工具">
-            <template slot-scope="scope">
-              <div>
-                {{ scope.row.toolNames }}
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="检查人">
-            <template slot-scope="scope">
-              <div style="display: flex; align-items: center; cursor: pointer">
-                <div>{{ showCheckUserNames(scope.row.checkUsers) }}</div>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="检查情况">
-            <template slot-scope="scope">
-              <div>
+          <template v-slot:paramValue="{ row }">
+            <div v-if="details.recordRulesClassify == 4">
+              {{ row.productName || row.name }}
+            </div>
+            <div v-else>
+              {{ row.paramValue }}
+            </div>
+          </template>
+          <template v-slot:toolNames="{ row }">
+            <el-link :underline="false" style="cursor: pointer">
+              <div class="ele-cell">
                 <div>
-                  <el-radio-group v-model="scope.row.checkStatus" disabled>
-                    <el-radio :label="1">已检查</el-radio>
-                    <el-radio :label="0">未检查</el-radio>
-                  </el-radio-group>
+                  {{ row.toolNames }}
                 </div>
               </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="检查结果">
-            <template slot-scope="scope">
-              <div>
-                <el-radio-group v-model="scope.row.checkResult" disabled>
-                  <el-radio :label="1">合格</el-radio>
-                  <el-radio :label="0">不合格</el-radio>
-                </el-radio-group>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="异常描述">
-            <template slot-scope="scope">
-              <div>
-                <el-input
-                  type="textarea"
-                  :rows="1"
-                  placeholder="请输入"
-                  v-model="scope.row.errorMsg"
-                  disabled
-                >
-                </el-input>
+            </el-link>
+          </template>
+          <template v-slot:checkUsersIds="{ row }">
+            <div>
+              <div style="display: flex; align-items: center; cursor: pointer">
+                <div>{{ showCheckUserNames(row.checkUsers) }}</div>
               </div>
-            </template>
-          </el-table-column>
-        </el-table>
+            </div>
+          </template>
+          <template v-slot:checkStatus="{ row }">
+            <div>
+              <el-radio-group v-model="row.checkStatus">
+                <el-radio :label="1">已检查</el-radio>
+                <el-radio :label="0">未检查</el-radio>
+              </el-radio-group>
+            </div>
+          </template>
+          <template v-slot:errorMsg="{ row }">
+            <div>
+              <el-input
+                type="text"
+                :rows="1"
+                placeholder="请输入"
+                v-model="row.errorMsg"
+              >
+                <template v-if="row.unitName" slot="append">
+                  <div>{{ row.unitName }}</div>
+                </template>
+              </el-input>
+            </div></template
+          >
+          <template v-slot:checkResult="{ row }">
+            <div>
+              <el-radio-group v-model="row.checkResult">
+                <el-radio :label="1">合格</el-radio>
+                <el-radio :label="0">不合格</el-radio>
+              </el-radio-group>
+            </div>
+          </template>
+        </ele-pro-table>
       </div>
       <!-- 事项规则 -->
       <div v-if="details.executeMethod == 1 && eamPlanInfo">
@@ -499,6 +497,69 @@
         ruleInfo: ''
       };
     },
+    computed: {
+      // 规则详情表头
+      detailsColumns() {
+        let list = [
+          {
+            width: 45,
+            type: 'index',
+            columnKey: 'index',
+            align: 'center'
+          },
+          {
+            label: '检查内容',
+            prop: 'paramValue',
+            minWidth: 120,
+            slot: 'paramValue'
+          }
+        ];
+
+        if (this.details && this.details.recordRulesClassify != '4') {
+          list = [
+            ...list,
+            {
+              label: '检查工具',
+              prop: 'toolNames',
+              minWidth: 120,
+              slot: 'toolNames'
+            },
+            {
+              label: '检查人',
+              prop: 'checkUsersIds',
+              minWidth: 120,
+              slot: 'checkUsersIds'
+            },
+            {
+              label: '检查情况',
+              prop: 'checkStatus',
+              minWidth: 120,
+              slot: 'checkStatus'
+            },
+            {
+              label: '描述',
+              prop: 'errorMsg',
+              minWidth: 120,
+              slot: 'errorMsg'
+            },
+            {
+              label: '检查结果',
+              prop: 'checkResult',
+              minWidth: 120,
+              slot: 'checkResult'
+            }
+          ];
+        } else {
+          list.push({
+            label: '描述',
+            prop: 'errorMsg',
+            minWidth: 120,
+            slot: 'errorMsg'
+          });
+        }
+        return list;
+      }
+    },
     mounted() {
       console.log('this.businessId', this.businessId);
       this.getDatails(this.businessId);
@@ -516,6 +577,10 @@
           const data = await getById(id);
           console.log('data 详情数据', data);
           data.recordRulesClassify = data.recordRulesClassify + '';
+          data.details = data.details.map((i) => {
+            i.toolNames = i.tools.map((i) => i.toolName).join(',');
+            return i;
+          });
           this.details = data;
           this.loading = false;
         } catch (error) {