Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
ecommerce-maven
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Ascend
ecommerce-maven
Commits
a1529d06
Commit
a1529d06
authored
May 11, 2021
by
Kyle Muldoon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rewrote lost files
parent
e744ed33
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
76 additions
and
16 deletions
+76
-16
checkout_actions.js
ecom-web/src/actions/checkout_actions.js
+21
-0
checkout.js
ecom-web/src/components/checkout/checkout.js
+27
-13
order_reducer.js
ecom-web/src/reducers/order_reducer.js
+22
-0
root_reducer.js
ecom-web/src/reducers/root_reducer.js
+3
-1
order-api.js
ecom-web/src/util/order-api.js
+3
-2
No files found.
ecom-web/src/actions/checkout_actions.js
0 → 100644
View file @
a1529d06
// import util api call for cart order
import
{
sendOrderPost
}
from
'./../util/order-api'
;
export
const
SEND_USER_ORDER
=
"SEND_USER_ORDER"
const
sendUserOrder
=
orderConfirmationResponse
=>
({
type
:
SEND_USER_ORDER
,
payload
:
orderConfirmationResponse
})
export
const
dispatchOrderInfo
=
(
orderInfo
)
=>
{
const
response
=
sendOrderPost
(
orderInfo
)
return
sendUserOrder
(
response
);
}
// export const fetchAllCartItems = () => dispatch => ApiUtil.fetchCartItems()
// .then(cartItems => dispatch(receiveAllCartItems(cartItems)))
ecom-web/src/components/checkout/checkout.js
View file @
a1529d06
import
React
,
{
useState
,
useEffect
}
from
'react'
import
{
useSelector
,
useDispatch
}
from
'react-redux'
import
ShippingAddress
from
'./ShippingAddress.js'
import
PaymentMethod
from
'./PaymentMethod.js'
...
...
@@ -6,6 +7,10 @@ import ReviewOrder from './ReviewOrder.js'
import
SubmitOrder
from
'./SubmitOrder.js'
import
'./checkout.css'
import
{
dispatchOrderInfo
}
from
'./../../actions/checkout_actions'
export
default
function
Checkout
()
{
...
...
@@ -48,6 +53,14 @@ export default function Checkout() {
const
[
errorWhileValidating
,
setErrorWhileValidating
]
=
useState
([
0
])
///////////////////////
// Submit Action State
///////////////////////
const
dispatch
=
useDispatch
()
// This effect listens for the submit button to be clicked
// It then checks each of the required fields to make sure they are non null
...
...
@@ -112,19 +125,19 @@ export default function Checkout() {
let
handleSubmit
=
()
=>
{
console
.
log
(
"Submitting Order!"
)
let
order
=
{}
order
[
"firstName"
]
=
firstName
order
[
"lastName"
]
=
lastName
order
[
"shippingAddress"
]
=
shippingAddress
order
[
"aptSuitNo"
]
=
aptSuiteNo
order
[
"city"
]
=
city
order
[
"state"
]
=
state
order
[
"zipCode"
]
=
zipCode
order
[
"cardNumber"
]
=
cardNumber
order
[
"cardHolderName"
]
=
cardHolderName
order
[
"expirationDate"
]
=
expirationDate
order
[
"cvv"
]
=
cvv
console
.
log
(
order
)
//
let order = {}
//
order["firstName"] = firstName
//
order["lastName"] = lastName
//
order["shippingAddress"] = shippingAddress
//
order["aptSuitNo"] = aptSuiteNo
//
order["city"] = city
//
order["state"] = state
//
order["zipCode"] = zipCode
//
order["cardNumber"] = cardNumber
//
order["cardHolderName"] = cardHolderName
//
order["expirationDate"] = expirationDate
//
order["cvv"] = cvv
//
console.log(order)
let
chrisSpec
=
{
"user"
:
{
...
...
@@ -155,6 +168,7 @@ export default function Checkout() {
}
}
dispatch
(
dispatchOrderInfo
(
chrisSpec
))
}
...
...
ecom-web/src/reducers/order_reducer.js
0 → 100644
View file @
a1529d06
import
{
SEND_USER_ORDER
}
from
'./../actions/checkout_actions'
const
initialState
=
{
orderResponse
:
{},
}
const
orderReducer
=
(
prevState
=
initialState
,
action
)
=>
{
Object
.
freeze
(
prevState
);
const
nextState
=
{...
prevState
};
switch
(
action
.
type
)
{
case
SEND_USER_ORDER
:
nextState
.
orderResponse
=
action
.
payload
return
nextState
default
:
return
nextState
}
}
export
default
orderReducer
\ No newline at end of file
ecom-web/src/reducers/root_reducer.js
View file @
a1529d06
import
{
combineReducers
}
from
'redux'
;
import
productsReducer
from
'./products_reducer'
;
import
orderReducer
from
'./order_reducer'
const
rootReducer
=
combineReducers
({
market
:
productsReducer
market
:
productsReducer
,
orderStatus
:
orderReducer
});
export
default
rootReducer
;
\ No newline at end of file
ecom-web/src/util/order-api.js
View file @
a1529d06
import
axios
from
'axios'
export
const
postOrder
=
(
order
)
=>
{
return
axios
.
post
(
"http://localhost:8080/api/users"
,
order
)
export
const
sendOrderPost
=
async
(
order
)
=>
{
const
response
=
await
axios
.
post
(
"http://localhost:8080/api/orders"
,
order
)
return
response
.
data
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment