diff --git a/package-lock.json b/package-lock.json
index 3932cd6..8afcb53 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 6e0d4d7..1acb2bd 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 14761b0..766ce36 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);