panhui vor 2 Jahren
Ursprung
Commit
10b0177ee5
1 geänderte Dateien mit 25 neuen und 2 gelöschten Zeilen
  1. 25 2
      src/views/FormView.vue

+ 25 - 2
src/views/FormView.vue

@@ -15,10 +15,11 @@
             </template>
         </ElTableColumn>
         <ElTableColumn prop="createdAt" label="创建时间" :formatter="timeFormatter" width="150" />
-        <ElTableColumn label="操作" align="center" width="200">
+        <ElTableColumn fixed="right" label="操作" align="center" width="270">
             <template #default="{ row }">
                 <ElButton @click="onEdit(row)">编辑</ElButton>
                 <ElButton @click="showFiles(row)">表单</ElButton>
+                <ElButton @click="showUserFiles(row)">调查结果</ElButton>
                 <ElButton @click="deleteRow(row)" type="danger">删除</ElButton>
             </template>
         </ElTableColumn>
@@ -38,6 +39,14 @@
         </ElFormItem>
     </EditDialog>
 
+    <ElDialog v-model="showFiledDialog" :title="selectedBaseForm?.name" width="80%">
+        <ElTable :data="filedDatas">
+            <ElTableColumn prop="userId" label="用户id" width="80" />
+            <ElTableColumn :prop="item.id" v-for="(item, index) in userFiles" :key="index" :label="item.name" />
+            <ElTableColumn prop="createdAt" label="创建时间" :formatter="timeFormatter" width="150" />
+        </ElTable>
+    </ElDialog>
+
     <ElDialog v-model="showFileDialog" :title="selectedBase?.name" width="80%">
         <PagingTable
             url="/form/fileds"
@@ -49,7 +58,7 @@
                 <ElButton :icon="Plus" @click="onFiledEdit()">添加</ElButton>
                 <ElButton :icon="Refresh" @click="fileTable.refresh()"></ElButton>
             </template>
-            <ElTableColumn prop="id" label="#" width="80" />
+            <ElTableColumn prop="id" label="#" />
             <ElTableColumn prop="name" label="字段名" />
             <ElTableColumn prop="remark" label="备注" />
             <ElTableColumn prop="placeholder" label="输入框占位" />
@@ -256,6 +265,20 @@ function showFiles(row) {
         fileTable.value.refresh()
     })
 }
+
+const userFiles = ref({})
+const filedDatas = ref([])
+const showFiledDialog = ref(false)
+const selectedBaseForm = ref({})
+function showUserFiles(row) {
+    showFiledDialog.value = true
+    selectedBaseForm.value = row
+    http.get('/form/getUserFieldsByForm', { formId: row.id }).then((res) => {
+        userFiles.value = res.fileds
+        filedDatas.value = res.backFileds
+    })
+}
+
 const showFileDialog = ref(false)
 
 const fieldTypes = ['char', 'varchar', 'int', 'bit', 'text', 'timestamp', 'datetime', 'decimal', 'float', 'vue']