Browse Source

기체정보 - 식별번호 유효성체크

pull/2/head
이학준 2 years ago
parent
commit
5c01500b19
  1. 61
      src/containers/basis/dron/BasisIdntfContainer.js

61
src/containers/basis/dron/BasisIdntfContainer.js

@ -3,7 +3,7 @@ import { useDispatch, useSelector } from 'react-redux';
import { Card, CardBody, Col, Row } from 'reactstrap'; import { Card, CardBody, Col, Row } from 'reactstrap';
import { BasisIdntfForm } from '../../../components/basis/dron/BasisIdntform'; import { BasisIdntfForm } from '../../../components/basis/dron/BasisIdntform';
import * as Actions from '../../../modules/basis/dron/actions/basisDronAction'; import * as Actions from '../../../modules/basis/dron/actions/basisDronAction';
import { ErrorModal } from '../../../components/modal/ErrorModal';
export const BasisIdntfContainer = props => { export const BasisIdntfContainer = props => {
const { listIdntf, idntfCount, detail, isRefreshIdntf } = useSelector( const { listIdntf, idntfCount, detail, isRefreshIdntf } = useSelector(
state => state.dronState state => state.dronState
@ -18,6 +18,12 @@ export const BasisIdntfContainer = props => {
hpno:'', hpno:'',
isSave: false isSave: false
}); });
//모달 관련 설정
const [modal, setModal] = useState({
isOpen: false,
title: '',
desc: ''
});
const [idntDataList, setIdntfDataList] = useState([]); const [idntDataList, setIdntfDataList] = useState([]);
@ -50,16 +56,60 @@ export const BasisIdntfContainer = props => {
dispatch(Actions.IDNTF_LIST.request(props.id)); dispatch(Actions.IDNTF_LIST.request(props.id));
}; };
const handlerCreate = async data => { const handlerCreate = async () => {
console.log('idntDataList>>>', idntDataList); console.log('idntDataList>>>', idntDataList);
let saveArr = idntDataList.filter(item => item.isSave === false); let saveArr = idntDataList.filter(item => item.isSave === false);
if (saveArr.length > 0) {
let checking = true;
saveArr.forEach(idntf => {
if (!idntf.idntfNum && idntf.idntfNum === '') {
setModal({
isOpen: true,
title: '필수값 입력 오류',
desc: '식별번호를 입력해주세요.'
});
checking = false;
return false;
}
if(!idntf.ownerNm && idntf.ownerNm === '') {
setModal({
isOpen: true,
title: '필수값 입력 오류',
desc: '소유자명을 입력해주세요.'
});
checking = false;
return false;
}
if(!idntf.hpno && idntf.hpno === '') {
setModal({
isOpen: true,
title: '필수값 입력 오류',
desc: '연락처를 입력해주세요.'
});
checking = false;
return false;
}
});
if (!checking) return false;
dispatch( dispatch(
Actions.IDNTF_CREATE.request({ Actions.IDNTF_CREATE.request({
arcrftSno: detail?.arcrftSno, arcrftSno: detail?.arcrftSno,
data: saveArr data: saveArr
}) })
); );
} else {
setModal({
isOpen: true,
title: '필수값 입력 오류',
desc: '식별장치 정보를 입력해주세요.'
});
return false;
}
}; };
const handlerDelete = async data => { const handlerDelete = async data => {
@ -104,6 +154,8 @@ export const BasisIdntfContainer = props => {
</Col> </Col>
</Row> </Row>
) : ( ) : (
<Row>
<Col>
<BasisIdntfForm <BasisIdntfForm
data={idntDataList} data={idntDataList}
count={idntDataList?.length} count={idntDataList?.length}
@ -113,5 +165,8 @@ export const BasisIdntfContainer = props => {
handlerSave={handlerCreate} handlerSave={handlerCreate}
handlerDelete={handlerDelete} handlerDelete={handlerDelete}
/> />
<ErrorModal modal={modal} setModal={setModal} />
</Col>
</Row>
); );
}; };

Loading…
Cancel
Save