Browse Source

기체정보-식별장치 정보(기본값 추가 기능)

pull/2/head
sanguu(박상현) 2 years ago
parent
commit
ecbc7ae710
  1. 3
      src/components/basis/dron/BasisIdntform.js
  2. 25
      src/containers/basis/dron/BasisIdntfContainer.js
  3. 9
      src/modules/basis/dron/sagas/basisDronSaga.ts

3
src/components/basis/dron/BasisIdntform.js

@ -17,6 +17,7 @@ import { X } from 'react-feather';
import Repeater from '@components/repeater'; import Repeater from '@components/repeater';
export const BasisIdntfForm = props => { export const BasisIdntfForm = props => {
return ( return (
<Row> <Row>
<Col> <Col>
@ -69,8 +70,8 @@ export const BasisIdntfForm = props => {
<Label for={`idntfNum.${i}`}>식별번호</Label> <Label for={`idntfNum.${i}`}>식별번호</Label>
<Input <Input
className='pa-input' className='pa-input'
value={'PA'}
type='text' type='text'
value='PA'
readOnly readOnly
bsSize='sm' bsSize='sm'
></Input> ></Input>

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

@ -14,6 +14,7 @@ export const BasisIdntfContainer = props => {
const [idntfData, setIdntfData] = useState({ const [idntfData, setIdntfData] = useState({
id: '', id: '',
idntfNum: '', idntfNum: '',
idntfNum2: '',
idntfTypeCd: 'DRON', idntfTypeCd: 'DRON',
ownerNm: '', ownerNm: '',
hpno: '', hpno: '',
@ -98,7 +99,7 @@ export const BasisIdntfContainer = props => {
const check_kor = const check_kor =
/^[가-힣a-zA-Z0-9][^!@#$%^&*()+\=\[\]{};':"\\|,.<>\/?\s]*$/; /^[가-힣a-zA-Z0-9][^!@#$%^&*()+\=\[\]{};':"\\|,.<>\/?\s]*$/;
if (idntf.idntfNum === 'PA') { if (idntf.idntfNum < 2) {
setModal({ setModal({
isOpen: true, isOpen: true,
title: '필수값 입력 오류', title: '필수값 입력 오류',
@ -156,11 +157,17 @@ export const BasisIdntfContainer = props => {
}); });
if (!checking) return false; if (!checking) return false;
//saveArr[0].idntfNum = 'PA' + saveArr[0].idntfNum
// saveArr = 'PA' + saveArr[0].idntfNum, saveArr
saveArr
dispatch( dispatch(
Actions.IDNTF_CREATE.request({ Actions.IDNTF_CREATE.request({
arcrftSno: detail?.arcrftSno, arcrftSno: detail?.arcrftSno,
data: saveArr data: saveArr.map((i) => ({
...i,
idntfNum: `PA${i.idntfNum}`
}))
}) })
); );
} else { } else {
@ -178,6 +185,7 @@ export const BasisIdntfContainer = props => {
}; };
const addData = () => { const addData = () => {
setIdntfDataList([...idntDataList, { ...idntfData, id: Math.random() }]); setIdntfDataList([...idntDataList, { ...idntfData, id: Math.random() }]);
}; };
@ -185,21 +193,18 @@ export const BasisIdntfContainer = props => {
if (!isSave) { if (!isSave) {
setIdntfDataList(idntDataList.filter(item => item.id !== id)); setIdntfDataList(idntDataList.filter(item => item.id !== id));
} else { } else {
dispatch(Actions.IDNTF_DELETE.request(id)); dispatch(Actions.IDNTF_DELETE.request(id));
} }
}; };
const handlerInput = (event, index) => { const handlerInput = (event, index) => {
const { name, value } = event.target; const { name, value } = event.target;
let newArr = [...idntDataList]; // copying the old datas array let newArr = [...idntDataList];
newArr[index] = { ...newArr[index], [name]: value }; newArr[index] = { ...newArr[index], [name]: value };
// if (newArr[index].idntfNum.length < 2) {
// setModal({ newArr[index] = { ...newArr[index] };
// isOpen: true,
// title: '필수값 입력 오류',
// desc: '식별 장치 기본값입니다.'
// });
newArr[index] = { ...newArr[index], idntfNum: 'PA' };
setIdntfDataList(newArr); setIdntfDataList(newArr);
}; };

9
src/modules/basis/dron/sagas/basisDronSaga.ts

@ -19,6 +19,7 @@ function* listSaga(action: ActionType<typeof Actions.LIST.request>) {
count, count,
errorCode errorCode
} = res; } = res;
if (errorCode) { if (errorCode) {
// 오류메시지 호출 // 오류메시지 호출
yield put( yield put(
@ -67,7 +68,12 @@ function* listIdntfSaga(action: ActionType<typeof Actions.IDNTF_LIST.request>) {
let dataArr = new Array(); let dataArr = new Array();
data?.map(item => { data?.map(item => {
dataArr.push({ ...item, isSave: true, id: item?.idntfNum }); dataArr.push({
...item,
isSave: true,
id: item?.idntfNum,
idntfNum: item.idntfNum.substring(2)
});
}); });
yield put( yield put(
@ -145,6 +151,7 @@ function* createIdntfSaga(
const res = yield call(Apis.dronAPI.idntfCreate, detail); const res = yield call(Apis.dronAPI.idntfCreate, detail);
const { data } = res; const { data } = res;
if (data.result) { if (data.result) {
yield put( yield put(
MessageActions.IS_MESSAGE({ MessageActions.IS_MESSAGE({

Loading…
Cancel
Save