From 54fa47268d56050a2971383f24bc231dc7843ed3 Mon Sep 17 00:00:00 2001 From: Edwin Eames Date: Thu, 26 Sep 2024 20:00:44 -0400 Subject: [PATCH] Added checks and updated ticket --- src/layouts/footers/footer.vue | 26 +- src/layouts/headers/headerauth.vue | 18 + src/pages/Index.vue | 23 +- src/pages/customer/profile/home.vue | 24 +- src/pages/delivery/edit.vue | 9 + src/pages/delivery/routes.ts | 2 +- .../update_tickets/finalize_ticket.vue | 530 +++++++++++++----- .../update_tickets/missing_data_home.vue | 2 - src/pages/delivery/view.vue | 58 +- ..._for_delivery.vue => todaysdeliveries.vue} | 18 +- src/pages/pay/pay_oil.vue | 2 +- src/pages/ticket/ticket.vue | 2 + 12 files changed, 520 insertions(+), 194 deletions(-) rename src/pages/delivery/viewstatus/{out_for_delivery.vue => todaysdeliveries.vue} (94%) diff --git a/src/layouts/footers/footer.vue b/src/layouts/footers/footer.vue index dc14733..98c0ca6 100755 --- a/src/layouts/footers/footer.vue +++ b/src/layouts/footers/footer.vue @@ -1,24 +1,22 @@ diff --git a/src/layouts/headers/headerauth.vue b/src/layouts/headers/headerauth.vue index 439614a..8658d00 100755 --- a/src/layouts/headers/headerauth.vue +++ b/src/layouts/headers/headerauth.vue @@ -14,6 +14,9 @@
+ + + @@ -198,6 +201,21 @@ export default defineComponent({ }) }, + increaseCall() { + let path = import.meta.env.VITE_BASE_URL + '/stats/calls/add'; + + axios({ + method: "put", + url: path, + withCredentials: true, + headers: authHeader(), + }) + .then((response: any) => { + this.number++; + + }) + }, + getCompany() { let path = import.meta.env.VITE_BASE_URL + '/admin/company/' + import.meta.env.VITE_COMPANY_ID; axios({ diff --git a/src/pages/Index.vue b/src/pages/Index.vue index 5c4c2a4..9859122 100755 --- a/src/pages/Index.vue +++ b/src/pages/Index.vue @@ -24,6 +24,9 @@
Todays stats
Total Deliveries: {{ delivery_count }}
Completed: {{ delivery_count_delivered }} / {{ delivery_count }}
+ + +
@@ -67,10 +70,13 @@ export default defineComponent({ SideBar, Footer, }, - + props: { + clickCount: Number + }, data() { return { token: null, + call_count:0, delivery_count: 0, delivery_count_delivered: 0, price_from_supplier: 0, @@ -107,6 +113,7 @@ export default defineComponent({ created() { this.userStatus() this.today_delivery_count() + this.today_delivery_delivered() this.today_price_oil() }, @@ -146,7 +153,18 @@ export default defineComponent({ }) }, - + total_calls() { + let path = import.meta.env.VITE_BASE_URL + '/stats/call/count/today' + axios({ + method: "get", + url: path, + withCredentials: true, + headers: authHeader(), + }) + .then((response: any) => { + this.call_count = response.data.data; + }) + }, today_delivery_count() { let path = import.meta.env.VITE_BASE_URL + '/stats/delivery/count/today' axios({ @@ -168,6 +186,7 @@ export default defineComponent({ headers: authHeader(), }) .then((response: any) => { + console.log(response.data) this.delivery_count_delivered = response.data.data; }) }, diff --git a/src/pages/customer/profile/home.vue b/src/pages/customer/profile/home.vue index d3ea1d5..edc9b06 100755 --- a/src/pages/customer/profile/home.vue +++ b/src/pages/customer/profile/home.vue @@ -286,24 +286,26 @@
No
Yes
- -
+ + - - -
-
+ + + -
-
+ + + + + -
+ diff --git a/src/pages/delivery/edit.vue b/src/pages/delivery/edit.vue index f5cd569..727bd18 100755 --- a/src/pages/delivery/edit.vue +++ b/src/pages/delivery/edit.vue @@ -244,6 +244,7 @@ export default defineComponent({ deliveryStatus: [], truckDriversList: [], userCards: [], + userCard: { date_added: '', user_id: '', @@ -312,6 +313,7 @@ export default defineComponent({ credit_card_id: 0, cash: false, card: false, + other: false, check: false, driver_driver: '', }, @@ -413,6 +415,13 @@ export default defineComponent({ this.CreateOilOrderForm.basicInfo.cash = false this.CreateOilOrderForm.basicInfo.check = true } + // Other + if (response.data.delivery.payment_type == 4) { + this.CreateOilOrderForm.basicInfo.card = false + this.CreateOilOrderForm.basicInfo.cash = false + this.CreateOilOrderForm.basicInfo.check = false + this.CreateOilOrderForm.basicInfo.other = true + } } }) diff --git a/src/pages/delivery/routes.ts b/src/pages/delivery/routes.ts index efc6143..0873560 100755 --- a/src/pages/delivery/routes.ts +++ b/src/pages/delivery/routes.ts @@ -8,7 +8,7 @@ import finalizeTicket from './update_tickets/finalize_ticket.vue'; import deliveryCancelled from './viewstatus/cancelled.vue'; import deliveryIssue from './viewstatus/issue.vue'; import deliveryDelivered from './viewstatus/delivered.vue'; -import deliveryOutForDelivery from './viewstatus/out_for_delivery.vue'; +import deliveryOutForDelivery from './viewstatus/todaysdeliveries.vue'; import deliveryWaiting from './viewstatus/waiting.vue'; import deliveryFinalized from './viewstatus/finalized.vue' import deliveryTommorrow from './viewstatus/tommorrow.vue' diff --git a/src/pages/delivery/update_tickets/finalize_ticket.vue b/src/pages/delivery/update_tickets/finalize_ticket.vue index fc3a917..10b5b14 100755 --- a/src/pages/delivery/update_tickets/finalize_ticket.vue +++ b/src/pages/delivery/update_tickets/finalize_ticket.vue @@ -31,13 +31,15 @@ -
+
+ +
Customer
-
+
{{ customer.customer_first_name }} {{ customer.customer_last_name }} @@ -76,61 +78,61 @@ {{ customer.customer_phone_number }}
- -
-
-
- Status -
-
-
waiting
-
delivered
-
Out for Delivery
-
Cancelled
-
Partial Delivery
-
misdelivery
-
unknown
-
Finalized
-
-
+
+
+
+
+ Status +
+
+
waiting
+
delivered
+
Out for Delivery
+
Cancelled
+
Partial Delivery
+
misdelivery
+
unknown
+
Finalized
+
+
-
- Scheduled date/time -
-
- {{ deliveryOrder.expected_delivery_date }} -
+
+ Scheduled date/time +
+
+ {{ deliveryOrder.expected_delivery_date }} +
-
- When Called -
-
- {{ deliveryOrder.when_ordered }} -
+
+ When Called +
+
+ {{ deliveryOrder.when_ordered }} +
-
- When Delivered -
-
- {{ deliveryOrder.when_delivered }} -
+
+ When Delivered +
+
+ {{ deliveryOrder.when_delivered }} +
-
- Driver Name -
-
- {{ deliveryOrder.driver_first_name }} {{ deliveryOrder.driver_last_name }} -
+
+ Driver Name +
+
+ {{ deliveryOrder.driver_first_name }} {{ deliveryOrder.driver_last_name }}
-
+ + +
@@ -149,7 +151,6 @@
-
@@ -169,7 +170,6 @@
-
Payment @@ -179,23 +179,23 @@
Cash
Credit Card
Credit Card & cash
+
Check
No Payment Type Added
-
- +
Price / Gallon
{{ deliveryOrder.customer_price }}
- -
+ +
Gallons Ordered:
@@ -213,8 +213,6 @@ {{ deliveryOrder.gallons_delivered }}
- -
Prime Fee: @@ -223,7 +221,6 @@ {{ pricing.price_prime }}
-
Same Day @@ -232,7 +229,6 @@ {{ pricing.price_same_day }}
-
cash total: @@ -241,10 +237,8 @@ ${{ total_amount }}
-
-
{{ userCard.type_of_card }} @@ -261,12 +255,9 @@
-
-
-
{{ userCard.name_on_card }}
@@ -276,11 +267,24 @@
{{ userCard.expiration_month }}/ {{ userCard.expiration_year }}
-
- +
+
+
+
+ {{ userCard.name_on_card }} +
+
+ {{ userCard.card_number }} +
+
+ {{ userCard.expiration_month }}/ {{ userCard.expiration_year }} +
+
+
+
Pre Charge Credit Card Total @@ -298,25 +302,117 @@ ${{ total_amount }}
+
+
+ Pre Charge Credit Card Total +
+
+ ${{ total_amount }} +
+
+
- - -
-
-
-
- -
-
-
-
-
Order was finalized
+ + + + +
+
+ + +
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +
+ + +
+
+ + +
+
+ + +
+ +
+ + + +
+ + +
+ + +
+
+ + +
+ +
+ + +
+
+ + +
+
+ + +
+ + +
+ +
+
+
+ +
@@ -352,6 +448,30 @@ export default defineComponent({ user: { id: 0 }, + deliveryStatus: [], + userCards: [], + deliveryNotesDriver: [], + priceprime: 0, + pricesameday: 0, + total_amount: 0, + + FinalizeOilOrderForm: { + cash: false, + card: false, + check: false, + other: false, + cash_recieved: '', + check_number: 0, + delivery_status: '', + userCards: [], + credit_card_id: 0, + driver: 0, + gallons_delivered: '', + customer_filled: false, + prime: false, + same_day: false, + emergency: false, + }, CreateOilOrderForm: { basicInfo: { gallons_delivered: '', @@ -359,13 +479,11 @@ export default defineComponent({ same_day: false, cash: false, card: false, + check: false, + other: false, userCards: [] - - }, }, - deliveryNotesDriver: [], - userCard: { date_added: '', user_id: '', @@ -379,7 +497,6 @@ export default defineComponent({ accepted_or_declined: '', main_card: '', }, - customer: { id: 0, user_id: 0, @@ -392,7 +509,6 @@ export default defineComponent({ customer_home_type: 0, customer_phone_number: '', }, - deliveryMoney: { time_added: '', total_amount_oil: '', @@ -401,7 +517,6 @@ export default defineComponent({ total_amount_fee: '', total_amount: '', }, - deliveryOrder: { id: '', customer_id: 0, @@ -441,9 +556,6 @@ export default defineComponent({ price_prime: 0, date: "", }, - priceprime: 0, - pricesameday: 0, - total_amount: 0 } }, @@ -454,14 +566,13 @@ export default defineComponent({ $route() { this.sumdelivery(this.$route.params.id); this.getOilOrder(this.$route.params.id); - - }, }, mounted() { this.sumdelivery(this.$route.params.id); this.getOilOrder(this.$route.params.id); this.getOilPricing(); + this.getDeliveryStatusList(); }, @@ -481,6 +592,7 @@ export default defineComponent({ } }) }, + getOilOrder(delivery_id: any) { let path = import.meta.env.VITE_BASE_URL + "/delivery/order/" + delivery_id; axios({ @@ -494,26 +606,106 @@ export default defineComponent({ this.deliveryOrder = response.data this.getCustomer(this.deliveryOrder.customer_id) + if (this.deliveryOrder.payment_type === 1) { this.getPaymentCard(this.deliveryOrder.payment_card_id); } if (this.deliveryOrder.payment_type === 2) { this.getPaymentCard(this.deliveryOrder.payment_card_id); } + if (this.deliveryOrder.payment_type === 3) { + this.getPaymentCard(this.deliveryOrder.payment_card_id); + } if (response.data.prime == 1) { - this.CreateOilOrderForm.basicInfo.prime = true + this.FinalizeOilOrderForm.prime = true } if (response.data.same_day == 1) { - this.CreateOilOrderForm.basicInfo.same_day = true + this.FinalizeOilOrderForm.same_day = true + } + if (response.data.emergency == 1) { + this.FinalizeOilOrderForm.emergency = true + } + this.FinalizeOilOrderForm.cash_recieved = response.data.cash_recieved; + this.FinalizeOilOrderForm.check_number = response.data.check_number; + this.FinalizeOilOrderForm.delivery_status = response.data.delivery_status; + + if (response.data.customer_filled == 1) { + this.FinalizeOilOrderForm.customer_filled = true + } + // Cash + if (response.data.payment_type == 0) { + this.FinalizeOilOrderForm.card = false + this.FinalizeOilOrderForm.cash = true + this.FinalizeOilOrderForm.check = false + this.FinalizeOilOrderForm.other = false + } + // Credit card + if (response.data.payment_type == 1) { + this.FinalizeOilOrderForm.card = true + this.FinalizeOilOrderForm.cash = false + this.FinalizeOilOrderForm.check = false + this.FinalizeOilOrderForm.other = false + } + // Credit card/Cash + if (response.data.payment_type == 2) { + this.FinalizeOilOrderForm.card = true + this.FinalizeOilOrderForm.cash = true + this.FinalizeOilOrderForm.check = false + this.FinalizeOilOrderForm.other = false + } + // Check + if (response.data.payment_type == 3) { + this.FinalizeOilOrderForm.card = false + this.FinalizeOilOrderForm.cash = false + this.FinalizeOilOrderForm.check = true + this.FinalizeOilOrderForm.other = false + } + // Other + if (response.data.payment_type == 4) { + this.FinalizeOilOrderForm.card = false + this.FinalizeOilOrderForm.cash = false + this.FinalizeOilOrderForm.check = false + this.FinalizeOilOrderForm.other = true } - this.CreateOilOrderForm.basicInfo.gallons_delivered = response.data.gallons_delivered; + this.FinalizeOilOrderForm.gallons_delivered = response.data.gallons_delivered; } }) }, + + + getPaymentCard(card_id: any) { + let path = import.meta.env.VITE_BASE_URL + "/payment/card/" + card_id; + axios({ + method: "get", + url: path, + withCredentials: true, + }) + .then((response: any) => { + this.userCard = response.data; + this.FinalizeOilOrderForm.userCards = response.data.id + }) + .catch(() => { + }); + }, + getPaymentCards(user_id: any) { + let path = import.meta.env.VITE_BASE_URL + "/payment/cards/" + user_id; + axios({ + method: "get", + url: path, + withCredentials: true, + }) + .then((response: any) => { + this.userCards = response.data; + }) + .catch(() => { + }); + }, + + getCustomer(user_id: any) { let path = import.meta.env.VITE_BASE_URL + "/customer/" + user_id; axios({ @@ -523,6 +715,16 @@ export default defineComponent({ }) .then((response: any) => { this.customer = response.data; + this.getPaymentCards(this.deliveryOrder.customer_id); + if (this.deliveryOrder.payment_type == 1) { + this.getPaymentCard(this.deliveryOrder.payment_card_id) + } + if (this.deliveryOrder.payment_type == 2) { + this.getPaymentCard(this.deliveryOrder.payment_card_id) + } + if (this.deliveryOrder.payment_type == 3) { + this.getPaymentCard(this.deliveryOrder.payment_card_id) + } }) .catch(() => { notify({ @@ -532,19 +734,7 @@ export default defineComponent({ }); }); }, - getPaymentCard(card_id: any) { - let path = import.meta.env.VITE_BASE_URL + "/payment/card/" + card_id; - axios({ - method: "get", - url: path, - withCredentials: true, - }) - .then((response: any) => { - this.userCard = response.data; - }) - .catch(() => { - }); - }, + getOilPricing() { let path = import.meta.env.VITE_BASE_URL + "/info/price/oil/table"; @@ -590,41 +780,7 @@ export default defineComponent({ }); }, - editOilOrder(payload: { - gallons_delivered: string; - prime: boolean; - same_day: boolean; - cash: boolean; - credit: boolean; - credit_card_id: any; - }) { - let path = import.meta.env.VITE_BASE_URL + "/deliverydata/finalize/" + this.deliveryOrder.id; - axios({ - method: "put", - url: path, - data: payload, - withCredentials: true, - headers: authHeader(), - }) - .then((response: any) => { - if (response.data.ok) { - notify({ - title: "Success", - text: "Ticket is finalized", - type: "success", - }); - this.$router.push({ name: "DeliveryHome" }); - } - if (response.data.error) { - notify({ - title: "Error", - text: "Could not finalize ticket", - type: "error", - }); - this.$router.push("DeliveryHome"); - } - }) - }, + UpdateAuto(payload: { gallons: string, delivery_id: string, @@ -655,25 +811,95 @@ export default defineComponent({ } }) }, - onSubmit() { - if (this.deliveryOrder.automatic == 1){ - let auto_payload = { - gallons: this.CreateOilOrderForm.basicInfo.gallons_delivered, - delivery_id: this.deliveryOrder.id + getDeliveryStatusList() { + let path = import.meta.env.VITE_BASE_URL + "/query/deliverystatus"; + axios({ + method: "get", + url: path, + withCredentials: true, + }) + .then((response: any) => { + this.deliveryStatus = response.data; + }) + .catch(() => { + }); + }, + + FinalizeOrder(payload: { + cash: boolean, + card: boolean, + check: boolean, + other: boolean, + cash_recieved: string, + check_number: number, + delivery_status: any, + credit_card_id: number, + driver_employee_id: number, + gallons_delivered: string, + customer_filled: boolean, + prime: boolean, + same_day: boolean, + emergency: boolean, + + + }) { + let path = import.meta.env.VITE_BASE_URL + "/deliverydata/finalize/" + this.deliveryOrder.id; + axios({ + method: "put", + url: path, + data: payload, + withCredentials: true, + headers: authHeader(), + }) + .then((response: any) => { + if (response.data.ok) { + notify({ + title: "Success", + text: "Ticket is finalized", + type: "success", + }); + this.$router.push({ name: "delivery" }); + console.log("here") } + if (response.data.error) { + notify({ + title: "Error", + text: "Could not finalize ticket", + type: "error", + }); + this.$router.push("delivery"); + } + }) + }, + onSubmit() { + if (this.deliveryOrder.automatic == 1) { + let auto_payload = { + gallons: this.CreateOilOrderForm.basicInfo.gallons_delivered, + delivery_id: this.deliveryOrder.id + + } this.UpdateAuto(auto_payload); } let payload = { - gallons_delivered: this.CreateOilOrderForm.basicInfo.gallons_delivered, - prime: this.CreateOilOrderForm.basicInfo.prime, - same_day: this.CreateOilOrderForm.basicInfo.same_day, - cash: this.CreateOilOrderForm.basicInfo.cash, - credit: this.CreateOilOrderForm.basicInfo.card, - credit_card_id: this.CreateOilOrderForm.basicInfo.userCards, + cash: this.FinalizeOilOrderForm.cash, + card: this.FinalizeOilOrderForm.card, + check: this.FinalizeOilOrderForm.check, + other: this.FinalizeOilOrderForm.other, + cash_recieved: this.FinalizeOilOrderForm.cash_recieved, + check_number: this.FinalizeOilOrderForm.check_number, + delivery_status: this.FinalizeOilOrderForm.delivery_status, + credit_card_id: this.FinalizeOilOrderForm.credit_card_id, + driver_employee_id: this.FinalizeOilOrderForm.driver, + gallons_delivered: this.FinalizeOilOrderForm.gallons_delivered, + customer_filled: this.FinalizeOilOrderForm.customer_filled, + prime: this.FinalizeOilOrderForm.prime, + same_day: this.FinalizeOilOrderForm.same_day, + emergency: this.FinalizeOilOrderForm.emergency, + }; - this.editOilOrder(payload); + this.FinalizeOrder(payload); }, }, diff --git a/src/pages/delivery/update_tickets/missing_data_home.vue b/src/pages/delivery/update_tickets/missing_data_home.vue index eab3ed3..469ce4a 100755 --- a/src/pages/delivery/update_tickets/missing_data_home.vue +++ b/src/pages/delivery/update_tickets/missing_data_home.vue @@ -94,9 +94,7 @@ export default defineComponent({ token: null, user: null, deliveries: [ - ], - } }, diff --git a/src/pages/delivery/view.vue b/src/pages/delivery/view.vue index 0cefdd3..ad9d692 100755 --- a/src/pages/delivery/view.vue +++ b/src/pages/delivery/view.vue @@ -105,6 +105,7 @@
Partial Delivery
misdelivery
unknown
+
Finalized
@@ -124,6 +125,13 @@ {{ format_date(deliveryOrder.when_ordered) }}
+
+ When Delivered +
+
+ {{ format_date(deliveryOrder.when_delivered) }} +
+
Driver: @@ -156,10 +164,12 @@
Cash
Credit Card
Credit Card & cash
+
Check
+
Check
No Payment Type Added
-
+
@@ -180,7 +190,7 @@
-
+
@@ -199,6 +209,26 @@
+
+
+
{{ userCard }} +
+
+ {{ userCard.type_of_card }} +
+
+ {{ userCard.name_on_card }} +
+
+ ****-****-****-{{ userCard.last_four_digits }} +
+
+ {{ userCard.expiration_month }}/ {{ userCard.expiration_year }} +
+
+
+
+
@@ -271,7 +301,7 @@ export default defineComponent({ }, deliveryNotesDriver: [], - + userCardfound: false, userCard: { date_added: '', user_id: '', @@ -397,6 +427,9 @@ export default defineComponent({ }); }, getPaymentCard(card_id: any) { + if (card_id){ + + let path = import.meta.env.VITE_BASE_URL + "/payment/card/" + card_id; axios({ method: "get", @@ -404,10 +437,24 @@ export default defineComponent({ withCredentials: true, }) .then((response: any) => { - this.userCard = response.data; + + if (response.data.userCard.card_number === ''){ + this.userCard === null; + this.userCardfound = false; + } + else{ + this.userCard = response.data; + this.userCardfound = true; + } + + }) .catch(() => { }); + } + else{ + this.userCardfound = false; + } }, getOilOrder(delivery_id: any) { @@ -428,6 +475,9 @@ export default defineComponent({ if (this.deliveryOrder.payment_type == 2) { this.getPaymentCard(this.deliveryOrder.payment_card_id); } + if (this.deliveryOrder.payment_type == 3) { + this.getPaymentCard(this.deliveryOrder.payment_card_id); + } } }) }, diff --git a/src/pages/delivery/viewstatus/out_for_delivery.vue b/src/pages/delivery/viewstatus/todaysdeliveries.vue similarity index 94% rename from src/pages/delivery/viewstatus/out_for_delivery.vue rename to src/pages/delivery/viewstatus/todaysdeliveries.vue index e38f226..f11d8d9 100755 --- a/src/pages/delivery/viewstatus/out_for_delivery.vue +++ b/src/pages/delivery/viewstatus/todaysdeliveries.vue @@ -20,12 +20,12 @@
-
+
- + - + @@ -36,13 +36,14 @@ + - + - + @@ -90,7 +91,10 @@
-
Delivery IdId Name Status TownPrime Same Day Payment
{{ oil['id'] }} @@ -56,7 +57,7 @@
Cancelled
Partial Delivery
Issue
-
Finalized
+
Finalized
+ + + + diff --git a/src/pages/pay/pay_oil.vue b/src/pages/pay/pay_oil.vue index 5e042e5..74cf167 100755 --- a/src/pages/pay/pay_oil.vue +++ b/src/pages/pay/pay_oil.vue @@ -185,7 +185,7 @@
- Pre Charge Credit Card Total: ${{ total_amount }} + Check - Pre Charge Credit Card Total: ${{ total_amount }}
diff --git a/src/pages/ticket/ticket.vue b/src/pages/ticket/ticket.vue index a989538..88db58a 100644 --- a/src/pages/ticket/ticket.vue +++ b/src/pages/ticket/ticket.vue @@ -43,6 +43,8 @@
CASH
Credit Card
Credit Card/Cash
+
Check
+
Other