Ver código fonte

Merge remote-tracking branch 'origin/master'

houlf 3 anos atrás
pai
commit
cc4dbb17a7

+ 3 - 0
src/assets/simple.scss

@@ -40,6 +40,9 @@
         font-size: 12px;
         border: 1px solid #dddddd;
         border-bottom: none;
+        &-click {
+            color: #409eff;
+        }
     }
     &-pagination {
         padding-top: 20px;

+ 10 - 25
src/pages/main/performance/components/table.vue

@@ -2,7 +2,7 @@
  * @Author       : yuanrunwei
  * @Date         : 2021-11-01 18:02:58
  * @LastEditors  : yuanrunwei
- * @LastEditTime : 2021-12-04 18:28:33
+ * @LastEditTime : 2021-12-06 09:57:43
  * @FilePath     : \spfm-market-front\src\pages\main\performance\components\table.vue
 -->
 <template>
@@ -37,6 +37,14 @@
                 <div v-else-if="type === 'textarea'">
                     <pre>{{ scope.row[props] }}</pre>
                 </div>
+                <div v-else-if="type === 'click'">
+                    <div
+                        class="simple-table-click cursor-pointer"
+                        @click="handleClick(props, scope.row)"
+                    >
+                        {{ scope.row[props] }}
+                    </div>
+                </div>
                 <div v-else>{{ scope.row[props] }}</div>
             </template>
             <template v-if="children">
@@ -49,30 +57,7 @@
                     :align="align || 'center'"
                 >
                     <template #default="scope">
-                        <div v-if="type === 'edit'">
-                            <el-input
-                                v-if="scope.row[`${props}_${type}`]"
-                                v-model="scope.row[props]"
-                                autosize
-                                type="textarea"
-                            />
-                            <pre v-else>{{ scope.row[props] }}</pre>
-                            <el-button
-                                size="mini"
-                                class="margin-top-10"
-                                @click="handleEdit({ scope, type, props })"
-                            >
-                                {{
-                                    !scope.row[`${props}_${type}`]
-                                        ? "编辑"
-                                        : "完成"
-                                }}
-                            </el-button>
-                        </div>
-                        <div v-else-if="type === 'textarea'">
-                            <pre>{{ scope.row[props] }}</pre>
-                        </div>
-                        <div v-else>{{ scope.row[props] }}</div>
+                        <div>{{ scope.row[props] }}</div>
                     </template>
                     <template v-if="children">
                         <el-table-column

+ 66 - 13
src/pages/main/performance/issue.vue

@@ -10,8 +10,9 @@
                 :config="table_config"
                 :loading="table_loading"
                 :handle-row="table_handle_row"
-                @detail="handleVisible"
-                @edit="handleVisible"
+                @receiver="handleVisible('receiver')"
+                @detail="handleVisible('template')"
+                @edit="handleVisible('template')"
             ></simple-table>
             <simple-pagination
                 :page="page"
@@ -22,18 +23,34 @@
         <simple-dialog
             title="查看"
             fullscreen
-            @cancel="handleVisible"
-            @confirm="handleVisible"
+            @cancel="handleVisible('template')"
+            @confirm="handleVisible('template')"
             :visible="template_visible"
-        ><div class="flex-justify-between padding-right-20 padding-left-20">
-            <div class="color-ffffff">1</div>
-            <div>
-                <el-button type="primary">导出</el-button>
-                <el-button @click="handleVisible" type="primary">返回</el-button>
+            ><div
+                class="flex-justify-align-end padding-right-20 padding-left-20"
+            >
+                <div>
+                    <el-button type="primary">导出</el-button>
+                    <el-button @click="handleVisible('template')" type="primary"
+                        >返回</el-button
+                    >
+                </div>
             </div>
-        </div>
             <analysis />
-             <template v-slot:footer><div></div></template>
+            <template v-slot:footer><div></div></template>
+        </simple-dialog>
+        <simple-dialog
+            title="回复详情"
+            @cancel="handleVisible('receiver')"
+            @confirm="handleVisible('receiver')"
+            :visible="receiver_visible"
+        >
+            <simple-table
+                :list="receiver_table_list"
+                :config="receiver_table_config"
+                :loading="receiver_table_loading"
+                @receiver="handleVisible('receiver')"
+            ></simple-table>
         </simple-dialog>
     </div>
 </template>
@@ -58,7 +75,9 @@ export default {
             rows: 10,
             total: 0,
             template_visible: false,
+            receiver_visible: false,
             table_loading: false,
+            receiver_table_loading: false,
             table_search: {},
             table_form: [
                 {
@@ -122,6 +141,33 @@ export default {
                 {
                     label: "接收人",
                     props: "receiver",
+                    type: "click",
+                },
+            ],
+            receiver_table_list: [
+                {
+                    receiver: "邱钰",
+                    department: "科室1",
+                    date: "2021.11.4",
+                },
+                {
+                    receiver: "郭鹏",
+                    department: "科室1",
+                    date: "2021.11.4",
+                },
+            ],
+            receiver_table_config: [
+                {
+                    label: "接收人",
+                    props: "receiver",
+                },
+                {
+                    label: "科室",
+                    props: "department",
+                },
+                {
+                    label: "回复时间",
+                    props: "date",
                 },
             ],
         };
@@ -155,8 +201,15 @@ export default {
             this.page = page;
             this.handleInit();
         },
-        handleVisible() {
-            this.template_visible = !this.template_visible;
+        handleVisible(props) {
+            switch (props) {
+                case "template":
+                    this.template_visible = !this.template_visible;
+                    break;
+                case "receiver":
+                    this.receiver_visible = !this.receiver_visible;
+                    break;
+            }
         },
         handleReset() {
             this.page = 1;