From ffb4d14ed7ca02cd96df2b81cd3cdbd28df0f19d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?qkr7828=28=EB=B0=95=EC=9E=AC=EC=9A=B0=29?= Date: Sun, 17 Jul 2022 00:07:25 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B9=84=ED=96=89=EA=B3=84=ED=9A=8D=EC=84=9C?= =?UTF-8?q?=20=EC=8B=A0=EC=B2=AD=20=ED=8F=BC=20=EC=9E=91=EC=97=85(?= =?UTF-8?q?=EC=9E=91=EC=97=85=EC=A4=91......)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basis/flight/plan/FlightPlanForm.js | 29 ++++---- .../flight/plan/FlightPlanDetailContainer.js | 72 +++++++++++++++++-- .../basis/flight/actions/basisFlightAction.ts | 15 +++- .../basis/flight/models/basisFlightModel.ts | 15 +++- 4 files changed, 107 insertions(+), 24 deletions(-) diff --git a/src/components/basis/flight/plan/FlightPlanForm.js b/src/components/basis/flight/plan/FlightPlanForm.js index 27297353..77ad37c0 100644 --- a/src/components/basis/flight/plan/FlightPlanForm.js +++ b/src/components/basis/flight/plan/FlightPlanForm.js @@ -25,9 +25,9 @@ const FlightPlanForm = (props) => {
-
+ {/*

상세정보

-
+
*/}
{/* {props.type === 'update' ? ( 최종 수정일자 : {props.updateDt} @@ -41,16 +41,19 @@ const FlightPlanForm = (props) => {

신청인 정보

+ @@ -77,7 +80,7 @@ const FlightPlanForm = (props) => { name='hpno' size='sm' placeholder='010-0000-0000' - readOnly + />
@@ -500,8 +503,8 @@ const FlightPlanForm = (props) => { { { className='mr-1' color='primary' size='sm' - // onClick={ - // pageType === 'create' - // ? handleSubmit(handlerCreate) - // : handleSubmit(handlerUpdate) - // } + onClick={props.handlerSave} > 저장 diff --git a/src/containers/basis/flight/plan/FlightPlanDetailContainer.js b/src/containers/basis/flight/plan/FlightPlanDetailContainer.js index 3df9a61e..24e4be22 100644 --- a/src/containers/basis/flight/plan/FlightPlanDetailContainer.js +++ b/src/containers/basis/flight/plan/FlightPlanDetailContainer.js @@ -10,17 +10,38 @@ import { yupResolver } from '@hookform/resolvers/yup'; import * as Actions from '../../../../modules/basis/flight/actions/basisFlightAction'; import { useForm } from 'react-hook-form'; -const FlightPlanDetailContainer = () => { +const FlightPlanDetailContainer = props => { const dispatch = useDispatch(); const history = useHistory(); - + const [pageType, setPageType] = useState('create'); const { flightPlanArea } = useSelector(state => state.flightState); const [areaInfo, setAreaInfo] = useState(); const [modal, setModal] = useState({ isOpen: false, title: '', }); - + const { listFlightP, flightCount, isRefreshFlight } = useSelector( + state => state.flightState + ); + const [flightPlanData, setFlightPlanData] = useState({ + id: '', + memberName: '', + clncd: '', + hpno: '', + email:'', + createDt: '', + createUserId: '', + updateUserId: '', + updateDt: '' + }); + useEffect(() => { + console.log('isRefreshFlight>>>>', isRefreshFlight); + if (isRefreshFlight) { + console.log(isRefreshFlight); + handlerSearch(); + } + }, [isRefreshFlight]); + const [flightPlanDataList, setFlightPlanDataList] = useState([]); /* Form Validation Checking */ const validSchema = yup.object().shape({ }); @@ -31,29 +52,68 @@ const FlightPlanDetailContainer = () => { altitude_m: '', altitude_ft: '', }, - resolver: yupResolver(validSchema) + resolver: yupResolver(validSchema) }) const saveFlightPlanArea = () => { console.log('비행 구역 설정 저장'); } - + useEffect(() => { + if (props.id) { + handlerSearch(); + setPageType('update'); + } + // console.log(selectData); + }, []); + useEffect(() => { + let newArr = []; + + listFlightP?.map(item => { + newArr.push({ ...item }); + }); + setFlightPlanDataList(listFlightP); + }, [listFlightP]); const openModal = () => { setModal({ isOpen: true, title: '비행 구역 설정', }); } + const handlerCreate = async data => { + console.log('data>>>>>', data); + console.log('flightPlanData>>>',flightPlanData); + let saveArr = flightPlanData; + dispatch( + Actions.FLIGHT_PLAN_CREATE.request({ + data: saveArr + }) + ); + }; + const onChange = (e) => { + setFlightPlanData({ + ...flightPlanData, + [e.target.name]: e.target.value, + }); + }; + const handlerDelete = async data => { + // dispatch(Actions.IDNTF_DELETE.request(data.arcrftSno)); + }; useEffect(() => { setAreaInfo(flightPlanArea); }, [flightPlanArea]); - + return ( (); +export const FLIGHT_PLAN_CREATE = createAsyncAction( + FLIGHT_PLAN_CREATE_REQUEST, + FLIGHT_PLAN_CREATE_SUCCESS, + FLIGHT_PLAN_CREATE_FAILURE +)(); + const actions = { AREA_LIST, - FLIGHT_PLAN_AREA + FLIGHT_PLAN_AREA, + FLIGHT_PLAN_CREATE }; export type FlightAction = ActionType; \ No newline at end of file diff --git a/src/modules/basis/flight/models/basisFlightModel.ts b/src/modules/basis/flight/models/basisFlightModel.ts index abcedbcc..e0800537 100644 --- a/src/modules/basis/flight/models/basisFlightModel.ts +++ b/src/modules/basis/flight/models/basisFlightModel.ts @@ -15,7 +15,20 @@ export interface FlightPlanArea { altitude_ft : '', } +export interface FlightPlanData { + id: '', + memberName: '', + clncd: '', + hpno: '', + email:'', + createDt: '', + createUserId: '', + updateUserId: '', + updateDt: '' +} + export const initFlight = { areaList: undefined, - flightPlanArea: undefined + flightPlanArea: undefined, + flightPlanData: undefined }; \ No newline at end of file