diff --git a/components/screen-tech-sign-in/screen-tech-sign-in.component.jsx b/components/screen-tech-sign-in/screen-tech-sign-in.component.jsx index 6c257db..1680bb3 100644 --- a/components/screen-tech-sign-in/screen-tech-sign-in.component.jsx +++ b/components/screen-tech-sign-in/screen-tech-sign-in.component.jsx @@ -5,20 +5,30 @@ import { Button, TextInput } from "react-native-paper"; import { useTranslation } from "react-i18next"; import { connect } from "react-redux"; - +import { signInEmployeeStart } from "../../redux/employee/employee.actions"; +import { createStructuredSelector } from "reselect"; +import { + selectCurrentEmployee, selectSigningIn +} from "../../redux/employee/employee.selectors"; //TODO JF add props -const mapStateToProps = (state) => ({}); +const mapStateToProps = createStructuredSelector({ + currentEmployee: selectCurrentEmployee, + signingIn: selectSigningIn, +}); //TODO JF add prop functions to call dispatch with actions -const mapDispatchToProps = {}; +const mapDispatchToProps = (dispatch) => ({ + signInEmployeeStart: (employeeId, pin) => + dispatch(signInEmployeeStart({ employeeId, pin })), +}); -export function TechSignIn({ employeeSignInStart, employeeSigningIn }) { +export function TechSignIn({ signInEmployeeStart, employeeSigningIn }) { const { t } = useTranslation(); //TODO add call to dispatch action const formSubmit = (values) => { const { employeeId, pin } = values; - // techSignInStart(employeeId, pin); + signInEmployeeStart(employeeId, pin); }; return ( diff --git a/redux/employee/employee.actions.js b/redux/employee/employee.actions.js index c140d23..1f58d0e 100644 --- a/redux/employee/employee.actions.js +++ b/redux/employee/employee.actions.js @@ -27,3 +27,9 @@ export function loginEmployeeSuccess(technician) { payload: technician } } +export function loginEmployeeFal(error) { + return { + type: EmployeeActionTypes.AUTHORIZING_EMPLOYEE_FALURE, + error: error + } +} diff --git a/redux/root.reducer.js b/redux/root.reducer.js index 8ef298d..dc89441 100644 --- a/redux/root.reducer.js +++ b/redux/root.reducer.js @@ -4,6 +4,7 @@ import { persistReducer } from "redux-persist"; import appReducer from "./app/app.reducer"; import photosReducer from "./photos/photos.reducer"; import userReducer from "./user/user.reducer"; +import employeeReducer from './employee/employee.reducer'; const persistConfig = { key: "root", @@ -12,10 +13,12 @@ const persistConfig = { blacklist: ["user"], }; +//ADDED JF employee: employeeReducer const rootReducer = combineReducers({ user: userReducer, app: appReducer, photos: photosReducer, + employee: employeeReducer, }); export default persistReducer(persistConfig, rootReducer); diff --git a/redux/root.saga.js b/redux/root.saga.js index b2e2da1..c217084 100644 --- a/redux/root.saga.js +++ b/redux/root.saga.js @@ -2,7 +2,8 @@ import { all, call } from "redux-saga/effects"; import { appSagas } from "./app/app.sagas"; import { photosSagas } from "./photos/photos.sagas"; import { userSagas } from "./user/user.sagas"; +import { employeeSagas } from "./employee/employee.sagas"; export default function* rootSaga() { - yield all([call(userSagas), call(appSagas), call(photosSagas)]); + yield all([call(userSagas), call(appSagas), call(photosSagas), call(employeeSagas)]); }