33 lines
1.2 KiB
JavaScript
33 lines
1.2 KiB
JavaScript
import { all, call, takeLatest, select, put } from "redux-saga/effects";
|
|
import GetJobTarget from "../../util/GetJobTarget";
|
|
import { setSelectedJobTargetPcSuccess } from "./application.actions";
|
|
import ApplicationActionTypes from "./application.types";
|
|
|
|
export function* onSetTargetPc() {
|
|
yield takeLatest(
|
|
ApplicationActionTypes.SET_SELECTED_JOB_TARGET_PC,
|
|
CalculateTarget
|
|
);
|
|
}
|
|
export function* CalculateTarget({ payload }) {
|
|
const { group, v_age } = payload;
|
|
const targets = yield select((state) => state.user.bodyshop.targets);
|
|
|
|
yield put(setSelectedJobTargetPcSuccess(GetJobTarget(group, v_age, targets)));
|
|
// const targetsForGroup = targets.filter((t) => t.group === group);
|
|
// if (!targetsForGroup) return 0;
|
|
// const targetPc = targetsForGroup.filter(
|
|
// (t) => t.ageGte <= v_age && (t.ageLt ? t.ageLt > v_age : true)
|
|
// );
|
|
// if (targetPc.length === 0) yield put(setSelectedJobTargetPcSuccess(100));
|
|
// else if (targetPc.length === 1)
|
|
// yield put(setSelectedJobTargetPcSuccess(targetPc[0].target));
|
|
// else {
|
|
// yield put(setSelectedJobTargetPcSuccess(100));
|
|
// }
|
|
}
|
|
|
|
export function* applicationSagas() {
|
|
yield all([call(onSetTargetPc)]);
|
|
}
|