From 74e563da7fa6886449fd2be5933e2d4ca5c85f48 Mon Sep 17 00:00:00 2001
From: jack <jack.su@pollex.com.tw>
Date: 星期二, 12 九月 2023 11:25:52 +0800
Subject: [PATCH] [UPDATE] 解決弱點Se: Incorrect definition of Serializable class [UPDATE] 解決弱點Information exposure to log file [UPDATE] 解決弱點Use of hard-coded password

---
 PAMapp/components/QuickFilter/QuickFilterConsultantList.vue |   75 ++++++++++++++++++++++++-------------
 1 files changed, 48 insertions(+), 27 deletions(-)

diff --git a/PAMapp/components/QuickFilter/QuickFilterConsultantList.vue b/PAMapp/components/QuickFilter/QuickFilterConsultantList.vue
index 95cb84a..7daefd9 100644
--- a/PAMapp/components/QuickFilter/QuickFilterConsultantList.vue
+++ b/PAMapp/components/QuickFilter/QuickFilterConsultantList.vue
@@ -14,22 +14,24 @@
         >
             <div
                 class="fill"
-                @touchstart="touchStart"
-                @touchend="moveCard"
+                @touchstart="moveStart"
+                @touchend="moveEnd"
             >
                 <UiAvatar
                     :size="200"
-                    :fileName="item.img"
+                    :agentNo="item.agentNo"
                     class="mx-auto"
                     @click.native="showAgentDetail(item.agentNo)"
                 ></UiAvatar>
-                <div class="mdTxt mt-30 mb-30 text--center">{{item.name}}(隡舀��蝬�鈭�)</div>
+                <div class="mdTxt mt-30 mb-30 text--center"
+                    >{{item.name}}<span v-if="item.role">({{item.role}})</span>
+                </div>
                 <el-row>
                     <el-col :span="12">
                         <div class="smTxt_bold mb-10 text--prudential_grey">����風</div>
                         <div class="mb-10">{{item.seniority}}</div>
                     </el-col>
-                    <el-col :span="12">
+                    <el-col :span="12" v-if="!hideReviews">
                         <div class="smTxt_bold mb-10 text--prudential_grey">摰X皛踵�漲</div>
                         <div>
                             <i class="icon-star pam-icon icon--yellow "></i>
@@ -64,8 +66,12 @@
     >
         <div class="text--center mdTxt">
             <p class="mb-50">{{popUpTxt}}</p>
-            <p class="text--primary cursor--pointer"
-                @click="isVisiblePopUp = false">������</p>
+            <div class="text--center">
+                <el-button
+                    type="primary"
+                    @click="isVisiblePopUp = false"
+                >������</el-button>
+            </div>
         </div>
     </PopUpFrame>
 
@@ -73,31 +79,55 @@
 </template>
 
 <script lang="ts">
+import { Consultant } from '~/shared/models/consultant.model';
 import { ElCarousel } from 'element-ui/types/carousel';
+import { hideReviews } from '~/shared/const/hide-reviews';
 import { Vue, Component, Prop } from 'vue-property-decorator';
-import { Consultants } from '~/assets/ts/api/consultant';
 
 @Component
 export default class QuickFilterConsultantList extends Vue {
-    @Prop() consultantList!: Consultants[];
+    @Prop()
+    consultantList!: Consultant[];
+
     isVisiblePopUp = false;
+    popUpTxt = '����憿批��';
     startPosition = 0;
     endPosition = 0;
-    popUpTxt = '����憿批��';
+    startYPosition = 0;
+    endYPosition = 0;
+    hideReviews = hideReviews ;
 
-    touchStart(event: TouchEvent) {
+    //////////////////////////////////////////////////////////////////
+
+    moveStart(event: TouchEvent) {
         this.startPosition = event.changedTouches[0].clientX;
+        this.startYPosition = event.changedTouches[0].clientY;
     }
 
-    moveCard(event: any) {
+    moveEnd(event: TouchEvent) {
         this.endPosition = event.changedTouches[0].clientX;
-        if (this.endPosition < this.startPosition) {
-            this.nextCard();
-        }
+        this.endYPosition = event.changedTouches[0].clientY;
+        if (Math.abs(this.endYPosition - this.startYPosition) < 50) {
+            if (this.endPosition < this.startPosition) {
+                this.nextCard();
+                return;
+            }
 
-        if (this.endPosition > this.startPosition) {
-            this.prevCard();
+            if (this.endPosition > this.startPosition) {
+                this.prevCard();
+            }
         }
+    }
+
+    //////////////////////////////////////////////////////////////////
+
+    openPopUp(txt: string) {
+        this.popUpTxt = txt;
+        this.isVisiblePopUp = true;
+    }
+
+    showAgentDetail(agentNo: string): void {
+        this.$router.push(`/agentInfo/${agentNo}`);
     }
 
     nextCard() {
@@ -107,15 +137,6 @@
     prevCard() {
         (this.$refs.carouselRef as ElCarousel).prev();
     }
-
-    openPopUp(txt: string) {
-        this.popUpTxt = txt;
-        this.isVisiblePopUp = true;
-    }
-    showAgentDetail(agentNo: string): void {
-        this.$router.push(`/agentInfo/${agentNo}`);
-    }
-
 
 }
 </script>
@@ -203,4 +224,4 @@
         }
     }
 
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0