|
@@ -1,4 +1,3 @@
|
|
|
-
|
|
|
function reducer(state, {type, ШО, СКОКА, БАБЛО}){
|
|
|
if (!state){
|
|
|
return {
|
|
@@ -22,11 +21,21 @@ function reducer(state, {type, ШО, СКОКА, БАБЛО}){
|
|
|
|
|
|
switch({type, ШО, СКОКА, БАБЛО}.type) {
|
|
|
case 'КУПИТЬ':
|
|
|
- return {
|
|
|
- ...state,
|
|
|
- [ШО]: {...state[ШО], колличество: state[ШО].колличество >= СКОКА ? state[ШО].колличество - СКОКА : (state.ЧЕК = 0) || state[ШО].колличество},
|
|
|
- КАССА: state.ЧЕК <= БАБЛО ? state.ЧЕК : 0,
|
|
|
- СДАЧА: (БАБЛО >= state.ЧЕК) ? БАБЛО - state.ЧЕК : turningIn.value = 'Не хватает БАБЛА!'
|
|
|
+ if (state[ШО].колличество <= СКОКА){
|
|
|
+ alert(`Товара ${[ШО]} нет в таком колличестве, есть только ${state[ШО].колличество}`)
|
|
|
+ }
|
|
|
+
|
|
|
+ if (БАБЛО < state.ЧЕК ) {
|
|
|
+ alert(`Не хватает ${state.ЧЕК - БАБЛО}. Приходи, когда будет БАБЛО!`)
|
|
|
+ }
|
|
|
+
|
|
|
+ else {
|
|
|
+ return {
|
|
|
+ ...state,
|
|
|
+ [ШО]: {...state[ШО], колличество: state[ШО].колличество >= СКОКА ? state[ШО].колличество - СКОКА : state[ШО].колличество},
|
|
|
+ КАССА: БАБЛО >= state.ЧЕК && state[ШО].колличество >= СКОКА ? state.ЧЕК : 0,
|
|
|
+ СДАЧА: БАБЛО >= state.ЧЕК && state[ШО].колличество >= СКОКА ? БАБЛО - state.ЧЕК : 0
|
|
|
+ }
|
|
|
}
|
|
|
case 'СУММА ПОКУПКИ':
|
|
|
return {
|
|
@@ -38,9 +47,6 @@ function reducer(state, {type, ШО, СКОКА, БАБЛО}){
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
function createStore(reducer){
|
|
|
let state = reducer(undefined, {})
|
|
|
let cbs = []
|