From 82ba3b46e14f25f6a7c3653661033ddac12703c6 Mon Sep 17 00:00:00 2001 From: Tomas <tomasysh@gmail.com> Date: 星期二, 01 八月 2023 09:17:18 +0800 Subject: [PATCH] Update: rename consultantType to consultationMethod --- PAMapp/pages/appointment/_appointmentId/index.vue | 86 ++++++++++++++++++++++++++++++++++-------- 1 files changed, 69 insertions(+), 17 deletions(-) diff --git a/PAMapp/pages/appointment/_appointmentId/index.vue b/PAMapp/pages/appointment/_appointmentId/index.vue index 7f3c211..0168980 100644 --- a/PAMapp/pages/appointment/_appointmentId/index.vue +++ b/PAMapp/pages/appointment/_appointmentId/index.vue @@ -1,5 +1,5 @@ <template> - <div class="appointment-client-detail-page"> + <div class="appointment-client-detail-page" v-if="!!appointmentDetail"> <div class="date-detail"> <div>{{ appointmentDetail.appointmentDate | formatDate }}����</div> <div>{{ appointmentDetail.consultantReadTime | formatDate }} @@ -14,19 +14,22 @@ <section class="client-detail"> - <div class="client-detail-info"> + <div class="client-detail-info mb-30"> <div class="client-detail-info__avatar"> <div class="circle"> {{ appointmentDetail.name || 'NO NAME' }} - <div class="sm-circle"> - {{ appointmentDetail.gender === 'male' ? '�' : '憟�'}} + <div class="sm-circle sm-circle-male" v-if="appointmentDetail.gender === 'male'"> + <i class="icon-sex-male sex-icon"></i> + </div> + <div class="sm-circle sm-circle-female" v-if="appointmentDetail.gender === 'female'"> + <i class="icon-sex-female sex-icon"></i> </div> </div> </div> <div class="client-detail-info__information"> <div>{{ appointmentDetail.age | toAgeLabel }}</div> <div>{{ appointmentDetail.phone }}</div> - <div class="text--underline"> + <div class=" text--break-all"> {{ appointmentDetail.email }} </div> </div> @@ -35,8 +38,13 @@ <div class="client-detail-demand mt-10"> <div class="client-detail-demand__demand-list mb-10"> + <div class="client-detail-demand__demand-list-label">隢株岷<br />�撘�</div> + <div class="client-detail-demand__demand-list-content">{{ appointmentDetail.consultationMethod | toConsultationMethod }}</div> + </div> + + <div class="client-detail-demand__demand-list mb-10"> <div class="client-detail-demand__demand-list-label">��瘙�</div> - <div class="client-detail-demand__demand-list-content">{{ appointmentDetail.requirement }}</div> + <div class="client-detail-demand__demand-list-content">{{ appointmentDetail.requirement || '--' }}</div> </div> <div class="client-detail-demand__demand-list"> @@ -52,20 +60,20 @@ </div> </div> - <div class="client-detail-action" v-if="showWhenAppointmentHasClosed"> + <!-- <div class=" btn-center" v-if="showWhenAppointmentHasClosed"> <el-button @click="inviteReview">��遛��漲</el-button> - </div> + </div> --> <div class="client-detail-action" v-if="showWhenAppointmentHasContacted"> - <el-button @click="closeAppointment" >蝯��</el-button> - <el-button @click="sendMsg" style="margin-left: 0px">�/蝝赤</el-button> + <el-button @click="closeAppointment" class="desktop-client-detail-action-btn" >蝯��</el-button> + <el-button @click="sendMsg" style="margin-left: 0px">�蝝赤</el-button> </div> - <div class="client-detail-action" v-if="showWhenAppointmentHasCreate"> + <div class=" btn-center" v-if="showWhenAppointmentHasCreate"> <el-button @click="sendMsg">���赤�</el-button> </div> - </section> + <template v-if="showWhenAppointmentHasClosed"> <AppointmentClosedInfo :appointmentDetail="appointmentDetail" /> @@ -84,6 +92,13 @@ <section class="mt-30" v-if="!showWhenAppointmentHasCreate"> <AppointmentRecordList :noticeLogs="appointmentDetail.appointmentNoticeLogs" /> </section> + + <PopUpFrame :isOpen.sync="isShowInviteReviewDialog"> + <div class="text--middle invite-review"> + <div class="mb-30 mt-10">撌脩�遛��漲</div> + <div class="text--primary text--middle cursor--pointer text--underline" @click="isShowInviteReviewDialog = false" :size="'250px'">������</div> + </div> + </PopUpFrame> </div> </template> @@ -110,6 +125,7 @@ appointmentProgress!: ContactStatus; isVisibleDialog = false; + isShowInviteReviewDialog = false ; interviewTxt = ""; contactStatus = ContactStatus; @@ -148,12 +164,14 @@ } getHopeContactTimeContent(hopeContactTimeString: string): string[] { - const result = hopeContactTimeString.replace("'", '').split('��'); + const result = hopeContactTimeString.replaceAll("'", '').split('��'); return result; } inviteReview(): void { - reviewsService.sendSatisfactionToClient(this.appointmentDetail.id).then(res => res); + reviewsService.sendSatisfactionToClient(this.appointmentDetail.id).then(res => { + this.isShowInviteReviewDialog = true; + }); } } </script> @@ -180,8 +198,7 @@ height: 100px; width: 100px; border-radius: 50%; - background-color: #fff; - border: 1px solid $PRIMARY_BLACK; + background-image: url('~/assets/images/appointment/avatar_bg.svg'); position: relative; display: flex; justify-content: center; @@ -192,12 +209,26 @@ width: 30px; border-radius: 50%; background-color: #fff; - border: 1px solid $PRIMARY_BLACK; bottom: 0; right: 0; display: flex; justify-content: center; align-items: center; + .sex-icon { + font-size: 20px; + &.icon-sex-male{ + color: $SKY_BLUE; + } + &.icon-sex-female{ + color: $CORAL; + } + } + &-male { + border: 1px solid $SKY_BLUE; + } + &-female { + border: 1px solid $LIGHT_RED; + } } } } @@ -221,12 +252,14 @@ @extend .mb-10; @extend .mdTxt; @extend .mr-10; + line-height: 1.3; color : $DARK_BLUE; flex-basis: auto; min-width : 40px; } .client-detail-demand__demand-list-content { text-align: justify; + line-height: 1.3; text-justify: auto; word-break: break-all; } @@ -236,6 +269,11 @@ } } } +.invite-review{ + align-items : center; + display : flex; + flex-direction: column; + } .close-appointment-detail{ background-color: #fff; display: flex; @@ -253,5 +291,19 @@ .hope-contact-time__line { border-bottom: 1px solid #CCCCCC; } +.btn-center{ + display: flex; + justify-content: center; + } + + @include desktop { + .client-detail-action { + display: flex; + justify-content: center; + } + .desktop-client-detail-action-btn{ + margin-right: 10px; + } + } </style> -- Gitblit v1.8.0