ソースを参照

fix: :bug: fix(correções) Foi realziado a correção na parte de aceita o serviço sobre medida

Foi realziado a correção na parte de aceita o serviço sobre medida, agora quando o cliente clica oara aceita a proposta do prestador ele ira ser direcionado diretamente para metodos de pagamentos para confirma o aceite do serviço

origin:bug-interno
kayo henrique 23 時間 前
コミット
fa61060be9

+ 17 - 5
src/components/dashboard/SchedulePaymentDialog.vue

@@ -80,11 +80,13 @@
           </div>
         </div>
 
-        <div class="row items-center q-mb-lg">
-          <q-checkbox v-model="agreedToTerms" color="primary" keep-color />
-          <span class="terms-text">
-            {{ $t('payment.agree_prefix') }}
-            <span class="text-primary cursor-pointer text-underline">{{ $t('payment.terms_link') }}</span>
+        <div class="terms-text q-mb-lg">
+          {{ $t('payment.agree_prefix') }}
+          <span
+            class="text-primary cursor-pointer text-underline"
+            @click="openTerms"
+          >
+            {{ $t('payment.terms_link') }}
           </span>
         </div>
 
@@ -118,6 +120,7 @@ import { usePaymentPlatformFees } from 'src/composables/usePaymentPlatformFees'
 import ProfilePaymentAddDialog from 'src/components/profile/ProfilePaymentAddDialog.vue'
 import SchedulePaymentPixDialog from './SchedulePaymentPixDialog.vue'
 import SchedulePaymentProcessingDialog from './SchedulePaymentProcessingDialog.vue'
+import { Browser } from "@capacitor/browser";
 
 const props = defineProps({
   servicePackage: {
@@ -165,6 +168,15 @@ const addressFullText = computed(() => {
 
 const canConfirm = computed(() => selectedMethod.value !== null && agreedToTerms.value)
 
+
+//direcionamento para ttermos e serviços 
+const PRIVACY_POLICY_URL =
+  "https://politicas.softpar.inf.br/politicas/politicaDiaristaCliente.html";
+
+const openTerms = async () => {
+  await Browser.open({ url: PRIVACY_POLICY_URL });
+};
+
 const brandDisplay = (brand) => {
   if (!brand) return ''
   const map = { visa: 'VISA', mastercard: 'Mastercard', elo: 'Elo', hipercard: 'Hipercard', diners: 'Diners', discover: 'Discover' }

+ 26 - 6
src/pages/dashboard/components/DashboardClientProposals.vue

@@ -157,6 +157,8 @@
 <script setup>
 import { acceptProposal, refuseProposal } from "src/api/customSchedules";
 import { avatarColors } from "src/helpers/avatarColors";
+import { useQuasar } from "quasar";
+import SchedulePaymentDialog from "src/components/dashboard/SchedulePaymentDialog.vue";
 
 import {
   chooseprice,
@@ -177,6 +179,7 @@ defineProps({
 });
 
 const { t } = useI18n();
+const $q = useQuasar();
 
 // const formatTime = (time) => {
 //   if (!time) return '';
@@ -220,16 +223,33 @@ const formatWeekday = (iso) => {
 };
 
 const handleAcceptProposal = async (proposalId) => {
-  // isLoading.value = true
   try {
-    await acceptProposal(proposalId);
+    const response = await acceptProposal(proposalId);
+
+    const schedule = response.payload;
+
+    const servicePackage = {
+      id: schedule.id,
+      total_amount: schedule.total_amount,
+      provider: schedule.provider,
+      schedules: [
+        {
+          ...schedule,
+        },
+      ],
+    };
+
+    $q.dialog({
+      component: SchedulePaymentDialog,
+      componentProps: {
+        servicePackage,
+      },
+    }).onOk(() => {
+      emit("refreshData");
+    });
 
-    emit("refreshData");
-    // onDialogOK()
   } catch (error) {
     console.log(error);
-  } finally {
-    // isLoading.value = false
   }
 };