Pārlūkot izejas kodu

feat: :sparkles: feat(agendamento-sob-medida) Foi ajustado a função para exibir valor

foi ajustado para o valor exibido ser proporcional ao valor  da diaria do prestador

fase:dev | origin:escopo

Co-authored-by: Copilot <copilot@github.com>
kayo henrique 1 dienu atpakaļ
vecāks
revīzija
93c80e73ae
2 mainītis faili ar 40 papildinājumiem un 17 dzēšanām
  1. 37 1
      src/helpers/utils.js
  2. 3 16
      src/pages/opportunities/OpportunitiesPage.vue

+ 37 - 1
src/helpers/utils.js

@@ -225,6 +225,40 @@ const formatAddress = (address) => {
   return parts.join(', ');
 };
 
+const calculateDailyPrices = (dailyPrice8h) => {
+  if (!dailyPrice8h || dailyPrice8h <= 0) {
+    return {
+      daily_price_8h: null,
+      daily_price_6h: null,
+      daily_price_4h: null,
+      daily_price_2h: null,
+    };
+  }
+
+  return {
+    daily_price_8h: dailyPrice8h, 
+    daily_price_6h: dailyPrice8h * 0.85,
+    daily_price_4h: dailyPrice8h * 0.55,
+    daily_price_2h: dailyPrice8h * 0.30,
+  };
+};
+
+const chooseprice = (periodType, daily_price_8h) => {
+  let alldaily_prices = calculateDailyPrices(daily_price_8h);
+  switch (periodType) {
+    case "8":
+      return daily_price_8h
+    case "6":
+      return alldaily_prices.daily_price_6h
+    case "4":
+      return alldaily_prices.daily_price_4h
+    case "2":
+      return alldaily_prices.daily_price_2h
+    default:
+      return 0
+  }
+}
+
 export {
   formatDateDMYtoYMD,
   formatDateYMDtoDMY,
@@ -238,5 +272,7 @@ export {
   validaDataHora,
   formatQuantity,
   formatCurrency,
-  formatAddress
+  formatAddress,
+  calculateDailyPrices,
+  chooseprice,
 };

+ 3 - 16
src/pages/opportunities/OpportunitiesPage.vue

@@ -53,7 +53,7 @@
 
         <div class="right-content">
           <div class="price">
-            {{ $t('provider.dashboard.opportunities.currency', { value: chooseprice(item.period_type) }) }}
+            {{ $t('provider.dashboard.opportunities.currency', { value: chooseprice(item.period_type, user.user.provider.daily_price_8h) }) }}
           </div>
 
           <div class="service-address">
@@ -80,7 +80,7 @@
 <script setup>
 import { ref, onMounted } from 'vue'
 import { useRouter } from 'vue-router'
-
+import { chooseprice } from 'src/helpers/utils'
 import { getProviderOpportunities } from 'src/api/opportunities'
 import { userStore } from 'src/stores/user'
 
@@ -102,20 +102,7 @@ const goToOpportunityDetails = (item) => {
   })
 }
 
-const chooseprice = (periodType) => {
-  switch (periodType) {
-    case "8":
-      return user.user.provider_daily_price_8h
-    case "6":
-      return user.user.provider_daily_price_6h
-    case "4":
-      return user.user.provider_daily_price_4h
-    case "2":
-      return user.user.provider_daily_price_2h
-    default:
-      return 0
-  }
-}
+
 
 // formatando a data
 const formatDate = (date) => {