From 783336d0c31725bdf2938b9451a8cac5f831e3e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EB=B0=95=EC=83=81=ED=98=84?= Date: Fri, 8 Dec 2023 11:15:40 +0900 Subject: [PATCH] =?UTF-8?q?=EC=B6=A9=EB=8F=8C=20=EB=B3=91=ED=95=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 28 +- src/containers/laanc/LaancContainer.js | 7 +- src/containers/laanc/LaancPlanContainer.js | 307 --------------------- 3 files changed, 4 insertions(+), 338 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3932cd61..8afcb53f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6324,9 +6324,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001242", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001242.tgz", - "integrity": "sha512-KvNuZ/duufelMB3w2xtf9gEWCSxJwUgoxOx5b6ScLXC4kPc9xsczUVCPrQU26j5kOsHM4pSUL54tAZt5THQKug==" + "version": "1.0.30001566", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz", + "integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==" }, "capture-exit": { "version": "2.0.0", @@ -8487,14 +8487,6 @@ } } }, - "dom7": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/dom7/-/dom7-3.0.0.tgz", - "integrity": "sha512-oNlcUdHsC4zb7Msx7JN3K0Nro1dzJ48knvBOnDPKJ2GV9wl1i5vydJZUSyOfrkKFDZEud/jBsTk92S/VGSAe/g==", - "requires": { - "ssr-window": "^3.0.0-alpha.1" - } - }, "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", @@ -24397,11 +24389,6 @@ "tweetnacl": "~0.14.0" } }, - "ssr-window": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-3.0.0.tgz", - "integrity": "sha512-q+8UfWDg9Itrg0yWK7oe5p/XRCJpJF9OBtXfOPgSJl+u3Xd5KI328RUEvUqSMVM9CiQUEf1QdBzJMkYGErj9QA==" - }, "ssri": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", @@ -24943,15 +24930,6 @@ "resolved": "https://registry.npmjs.org/sweetalert2-react-content/-/sweetalert2-react-content-3.0.1.tgz", "integrity": "sha512-VBybIRTIzY2bTkUddcp2wMJ3mp3gfGGX6+BfW2dDrEv6bXM2WtzJpFkM2imFpcPhpkOIf2/J8gLxEu0jBZq0DQ==" }, - "swiper": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-6.0.4.tgz", - "integrity": "sha512-D+DBxgg81+uocgsvhmdzrpr4GHzhAt2yImArqzunrC80y7+/yCEAq/EJw1VASD+CBFNacF4F8FEIqJMLyDFM0g==", - "requires": { - "dom7": "^3.0.0-alpha.7", - "ssr-window": "^3.0.0-alpha.4" - } - }, "symbol-observable": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", diff --git a/src/containers/laanc/LaancContainer.js b/src/containers/laanc/LaancContainer.js index 6e0d4d7d..1acb2bd1 100644 --- a/src/containers/laanc/LaancContainer.js +++ b/src/containers/laanc/LaancContainer.js @@ -17,13 +17,11 @@ export default function LaancContainer() { const [currentParm, setCurrentParm] = useState(false); //LAANC 신청하기 모달 const [disabledAnimation, setDisabledAnimation] = useState(false); -<<<<<<< HEAD + // laanc 신청시 자동 검색 const [isSearch, setIsSearch] = useState(false); -======= // 마운트 시 지도 표출 여부 const location = useLocation(); ->>>>>>> 1ed9d9e3865eef0d42bac8f02dddb2a221ff8d58 const queryParams = new URLSearchParams(location.search); const mapParam = queryParams.get('map'); @@ -36,7 +34,6 @@ export default function LaancContainer() { setDisabledAnimation(mapParam != 'true' ? false : true); }, [location]); -<<<<<<< HEAD // Laanc 신청 이후 자동 검색 useEffect(() => { if (disabledAnimation) { @@ -44,8 +41,6 @@ export default function LaancContainer() { } else setIsSearch(true); }, [disabledAnimation]); -======= ->>>>>>> 1ed9d9e3865eef0d42bac8f02dddb2a221ff8d58 // LAANC 신청하기 버튼 클릭 헨들러 const handleApply = () => { dispatch(drawTypeChangeAction('')); diff --git a/src/containers/laanc/LaancPlanContainer.js b/src/containers/laanc/LaancPlanContainer.js index 14761b03..766ce36f 100644 --- a/src/containers/laanc/LaancPlanContainer.js +++ b/src/containers/laanc/LaancPlanContainer.js @@ -17,12 +17,8 @@ export default function LaancPlanContainer({ }) { const dispatch = useDispatch(); - // 비행 구역 정보 - const { areaCoordList } = useSelector(state => state.flightState); // 로그인 정보 const { user } = useSelector(state => state.authState); - // 관제권안 정보,고도 정보 - const { laancArea, laancElev } = useSelector(state => state.laancState); // laanc step const [step, setStep] = useState(1); // laanc 초기값 @@ -63,309 +59,6 @@ export default function LaancPlanContainer({ setStep(step); }; - // 날씨 핸들러 - const handlerWeather = () => { - setFormModal(!formModal); - }; - - // 비행계획서 작성 핸들러 - const handleChange = ({ name, value, type, index, pIndex }) => { - const arrName = `${type}List`; - - switch (type) { - case 'coord': - setDetailData(prevState => { - return { - ...prevState, - areaList: [ - { - ...prevState.areaList[0], - - coordList: value - } - ] - }; - }); - break; - case 'area': - if (name === 'fltMethod' && value != '직접입력') { - setDetailData(prevState => { - const arr = [...prevState[arrName]]; - const updateData = { - ...prevState[arrName][0], - [name]: value, - fltMothoeRm: '' - }; - arr[0] = updateData; - return { - ...prevState, - [arrName]: arr - }; - }); - } else if ( - detailData.areaList[0].areaType === 'LINE' || - name === 'bufferZone' - ) { - setDetailData(prevState => { - const arr = [...prevState[arrName]]; - const prevBufferZone = prevState[arrName][0].bufferZone; - const updateData = { - ...prevState[arrName][0], - [name]: value, - concatBufferZone: prevBufferZone - }; - arr[0] = updateData; - return { - ...prevState, - [arrName]: arr - }; - }); - } else { - setDetailData(prevState => { - const arr = [...prevState[arrName]]; - const updateData = { - ...prevState[arrName][0], - [name]: value - }; - arr[0] = updateData; - return { - ...prevState, - [arrName]: arr - }; - }); - } - break; - case 'pilot': - case 'arcrft': - { - setDetailData(prevState => { - const arr = [...prevState[arrName]]; - const updateData = { - ...prevState[arrName][0], - [name]: value - }; - arr[0] = updateData; - return { - ...prevState, - [arrName]: arr - }; - }); - } - break; - case 'plan': - default: - setDetailData(prevState => ({ - ...prevState, - [name]: value - })); - break; - } - }; - - // 스텝 1 다음 버튼 이벤트 - const handlerNext = () => { - // 시작일자 - 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(); // 현재 날짜와 시간을 가져옵니다. - - const validateAircraftWeightCode = - !detailData.arcrftList[0].arcrftTypeCd && - (detailData.commercial === 'COMMERCIAL' || - detailData.arcrftList[0].arcrftWghtCd == '9' || - detailData.arcrftList[0].arcrftWghtCd == '10' || - detailData.arcrftList[0].arcrftWghtCd == '11'); - - const validateidntfNumCode = - !detailData.arcrftList[0].idntfNum && - (detailData.commercial === 'COMMERCIAL' || - detailData.arcrftList[0].arcrftWghtCd == '9' || - detailData.arcrftList[0].arcrftWghtCd == '10' || - detailData.arcrftList[0].arcrftWghtCd == '11'); - - if (!detailData.fltType) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '비행 종류(상업/비상업)를 선택해주세요.' - }); - return false; - } else if ( - !schFltStDt.isAfter(currentDate) || - !schFltEndDt.isAfter(currentDate) - ) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '비행 일자가 이미 지난 일자입니다.' - }); - return false; - } else if (schFltStDt.isAfter(schFltEndDt)) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '비행일자를 확인해주세요.' - }); - return false; - } else if (schFltStDt.format('A h:mm') === 'PM 11:00') { - setIsErrorModal({ - isOpen: true, - title: '특별 비행', - desc: ( - <> - 야간 비행은 특별 비행에 해당됩니다. -
- 특별 비행의 경우 드론원스톱을 통해서 신청해주시기 바랍니다. - - ) - }); - return false; - } else if (schFltStDt.format('A h:mm') === 'PM 5:00') { - setIsErrorModal({ - isOpen: true, - title: '비행구역 및 비행일자 중복', - desc: ( - <> - 설정하신 비행구역 및 비행시간에 이미 승인완료된 신청건이 있습니다. -
다시 설정 부탁드립니다. - - ) - }); - return false; - } else if (!detailData.fltPurpose) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '비행목적을 선택해 주세요.' - }); - - return false; - } else if ( - !detailData.areaList[0].fltElev || - detailData.areaList[0].fltElev === 0 - ) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '고도를 입력해 주세요.' - }); - - return false; - } else if (!detailData.areaList[0].bufferZone) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '반경을 입력해 주세요.' - }); - - return false; - } else if ( - detailData.areaList[0].concatBufferZone != - detailData.areaList[0].bufferZone && - detailData.areaList[0].areaType === 'LINE' - ) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: <>적용 버튼을 누르지 않고 값을 변경 할 수 없습니다. - }); - // handleChange({ - // type: 'area', - // name: 'bufferZone', - // value: detailData.areaList[0].concatBufferZone - // }); - } else if (!detailData.areaList[0].fltMethod) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '비행방식를 입력해 주세요.' - }); - - return false; - } else if ( - detailData.areaList[0].fltMethod === '00' && - !detailData.areaList[0].fltMothoeRm - ) { - // 비행 방식 직접 입력칸 활성화 후 작성 시 조건문 - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '비행방식을 입력해 주세요.' - }); - return false; - } else if (validateAircraftWeightCode) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '기체 종류를 입력해 주세요.' - }); - - return false; - } else if (validateidntfNumCode) { - setIsErrorModal({ - isOpen: true, - title: '필수값 입력 오류', - desc: '기체 신고 번호를 입력해 주세요.' - }); - return false; - } else { - handlerLaanc(); - } - }; - - // 비행 구역 적용 버튼 핸들러 - const handlerBufferApply = async () => { - if (areaCoordList) { - if (areaCoordList[0].coordList.length > 0) { - // dispatch(LaancAction.LAANC_ALTITUDE.request(detailData.areaList)); - dispatch(LaancAction.LAANC_VALID_AREA.request(detailData.areaList)); - - const array = []; - const copy = { ...areaCoordList[0] }; - copy.bufferZone = detailData.areaList[0].bufferZone; - array.push(copy); - - dispatch(FLIGHT_PLAN_AREA_BUFFER_LIST.request(array)); - - try { - const elev = await axios.post( - `api/bas/laanc/valid/elev`, - detailData.areaList - ); - - if (elev.data[0] === 0) { - // dispatch(AREA_DETAIL_INIT()); - // dispatch(AreaAction.AREA_DETAIL_INIT()); - // dispatch(drawTypeChangeAction('')); - // dispatch(LaancAction.LAANC_APPROVAL_INIT()); - setIsErrorModal({ - title: '비행 불가 지역', - desc: ( - <> - 설정하신 비행구역 중 허용고도가 0m인 구역이 있습니다. -
- 버퍼존을 다시 확인해주시기 바랍니다. - - ), - isOpen: true - }); - } - dispatch(LaancAction.LAANC_ALTITUDE.success(elev.data)); - } catch (error) { - { - setIsErrorModal({ - isOpen: true, - title: '오류', - desc: '처리중 오류가 발생하였습니다' - }); - } - } - } - } - }; - // Laanc 승인 요청 취소 버튼 헨들러 const handlerLaancClose = () => { setStep(1);