From 6986df6fbc8bee226b5752ac492e14e9e2e01e00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?sanguu516=28=EB=B0=95=EC=83=81=ED=98=84=29?= Date: Wed, 20 Sep 2023 16:49:11 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B9=84=ED=96=89=EC=9D=BC=EC=9E=90=20?= =?UTF-8?q?=EC=9C=A0=ED=9A=A8=EC=84=B1=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/laanc/FlightPlan.js | 6 ++++++ src/views/laanc/LeftMenu.js | 25 +++++++++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/src/views/laanc/FlightPlan.js b/src/views/laanc/FlightPlan.js index 93202a6e..e5e5af87 100644 --- a/src/views/laanc/FlightPlan.js +++ b/src/views/laanc/FlightPlan.js @@ -223,6 +223,9 @@ const FlightPlan = ({ handleChange, handlerNext, data, handlerWeather }) => { data-enable-time defaultValue={data.schFltStDt} value={data.schFltStDt} + options={{ + minDate: moment().format('YYYY-MM-DD') + }} onChange={date => { const value = moment(date[0]).format('YYYY-MM-DD HH:mm:ss') || @@ -250,6 +253,9 @@ const FlightPlan = ({ handleChange, handlerNext, data, handlerWeather }) => { data-enable-time defaultValue={data.schFltEndDt} value={data.schFltEndDt} + options={{ + minDate: moment().format('YYYY-MM-DD') + }} onChange={date => { const value = moment(date[0]).format('YYYY-MM-DD HH:mm:ss') || diff --git a/src/views/laanc/LeftMenu.js b/src/views/laanc/LeftMenu.js index 57774248..fa36cebb 100644 --- a/src/views/laanc/LeftMenu.js +++ b/src/views/laanc/LeftMenu.js @@ -14,6 +14,7 @@ import { } from '../../modules/basis/flight/models/basisFlightModel'; import { WeatherContainer } from '../../containers/basis/flight/plan/WeatherContainer'; import { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap'; +import moment from 'moment'; function LeftMenu() { const [step, setStep] = useState(1); const [detailData, setDetailData] = useState(initFlightBas.initDetail); @@ -106,6 +107,13 @@ function LeftMenu() { const check_num = /[0-9]/; const check_kor = /^[가-힣a-zA-Z0-9][^!@#$%^&*()+\=\[\]{};':"\\|,.<>\/?\s]*$/; + // 시작일자 + const schFltStDt = moment(detailData.schFltStDt, 'YYYY-MM-DD HH:mm:ss'); + // 종료일자 + const schFltEndDt = moment(detailData.schFltEndDt, 'YYYY-MM-DD HH:mm:ss'); + + const currentDate = moment(); // 현재 날짜와 시간을 가져옵니다. + if (!detailData.pilotList[0].memberName) { setModal2({ isOpen: true, @@ -128,6 +136,23 @@ function LeftMenu() { desc: '이메일을 확인해 주세요.' }); + return false; + } else if ( + !schFltStDt.isAfter(currentDate) || + !schFltEndDt.isAfter(currentDate) + ) { + setModal2({ + isOpen: true, + title: '필수값 입력 오류', + desc: '비행 일자가 이미 지난 일자입니다.' + }); + return false; + } else if (schFltStDt.isAfter(schFltEndDt)) { + setModal2({ + isOpen: true, + title: '필수값 입력 오류', + desc: '비행일자를 확인해주세요.' + }); return false; } else if (!detailData.fltPurpose) { setModal2({