Skip to content

Commit

Permalink
Change the approval status of denied item
Browse files Browse the repository at this point in the history
  • Loading branch information
KanzaTahreem committed May 28, 2023
1 parent c14ecff commit 21cf139
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 14 deletions.
32 changes: 23 additions & 9 deletions src/components/ApplicationList.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -56,23 +56,37 @@ const ApplicationList = ({displayPopup, closePopup}) => {
setModal(<></>);
}

const updateAllSelected = () => {
getClientsDataChecked().forEach((application) => {
dispatchApprovalStatusUpdate(application.serial, approvalStatusSelectedItem);
});
}

const openModal = (name) => {
if (name === "InvestChange") {
setModal(<Modal><Container><InvestChange onClose={closeInvestChange} /></Container></Modal>)
setModal(
<Modal>
<Container>
<InvestChange onClose={closeInvestChange} />
</Container>
</Modal>)
} else if (name === "RegisterReason") {
setModal(<Modal><Container><RegisterReason onClose={closeRegisterReason} /></Container></Modal>)
setModal(
<Modal>
<Container>
<RegisterReason onClose={closeRegisterReason} onApproval={updateAllSelected} />
</Container>
</Modal>
)
}
}

const updateSelectedItemAndClose = (changeItem) => {
if(changeItem) {
getClientsDataChecked().forEach((application) => {
if (approvalStatusSelectedItem === "승인거부") {
openModal("RegisterReason")
} else {
dispatchApprovalStatusUpdate(application.serial, approvalStatusSelectedItem)
}
});
if (approvalStatusSelectedItem === approvalStatus[1]) {
openModal("RegisterReason")
}
updateAllSelected();
setPrevApprovalStatusSelectedItem(approvalStatusSelectedItem);
} else {
setApprovalStatusSelectedItem(prevApprovalStatusSelectedItem)
Expand Down
12 changes: 9 additions & 3 deletions src/components/RegisterReason.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@ import styles from '../styles/modal.module.css';
import { useSelector, useDispatch } from 'react-redux';
import { resetRegisterModal, toggleCheckbox, updateTextarea } from '../redux/registerReducer';
import InputField from './InputField';
import { resolvePath } from 'react-router-dom';

const RegisterReason = ({ displayPopup, closePopup, onClose }) => {
const RegisterReason = ({ displayPopup, closePopup, onClose, onApproval }) => {
const dispatch = useDispatch();
const checkboxes = useSelector((state) => state.register.checkboxes);
const textarea = useSelector((state) => state.register.textarea)
Expand All @@ -21,6 +20,13 @@ const RegisterReason = ({ displayPopup, closePopup, onClose }) => {
dispatch(updateTextarea(value));
};

const closePopupEntirely = () => {
dispatch(resetRegisterModal())
onApproval();
closePopup();
onClose();
}

const handleSave = (event) => {
event.preventDefault();

Expand All @@ -29,7 +35,7 @@ const RegisterReason = ({ displayPopup, closePopup, onClose }) => {
if ((!isAnyCheckboxChecked && textarea.trim() === '') || (checkboxes['직접 입력'] && textarea.trim() === '')) {
displayPopup('Either checkboxes or textarea must be filled', closePopup, null);
} else {
displayPopup('Saved', closePopup, null);
displayPopup('Saved', closePopupEntirely, null);
}
};

Expand Down
4 changes: 2 additions & 2 deletions src/redux/registerReducer.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ const registerReasonReducer = (state = initialState, action) => {
case UPDATE_TEXTAREA:
return { ...state, textarea: action.payload };

case RESET_REGISTER_MODAL:
return initialState;
case RESET_REGISTER_MODAL:
return initialState;
default:
return state;
}
Expand Down

0 comments on commit 21cf139

Please sign in to comment.