diff --git a/src/components/flight/NewFlightApprovalsReport.js b/src/components/flight/NewFlightApprovalsReport.js
index bb3ee5cd..f2079355 100644
--- a/src/components/flight/NewFlightApprovalsReport.js
+++ b/src/components/flight/NewFlightApprovalsReport.js
@@ -3,7 +3,11 @@ import Flatpickr from 'react-flatpickr';
import { Button, Input, CustomInput, Col, Row } from '@component/ui';
import { Search, Calendar } from 'react-feather';
import dayjs from 'dayjs';
-import { CityCategories, DistrictCategories } from '@configs/constants';
+import {
+ CityCategories,
+ DistrictCategories,
+ FlightCategory
+} from '@configs/constants';
import { useLocation } from 'react-router-dom';
export default function NewFlightApprovalsReport(props) {
@@ -47,7 +51,7 @@ export default function NewFlightApprovalsReport(props) {
비행승인 신청 검토결과 현황
- 검색일자 또는 신청번호/검토결과를 입력해주세요.
+ 검색일자 또는 신청번호/검토결과 또는 확인결과를 입력해주세요.
@@ -81,6 +85,27 @@ export default function NewFlightApprovalsReport(props) {
onKeyPress={handleKeyDown}
/>
+
+ props.setReviewedType(e.target.value)}
+ onKeyPress={handleKeyDown}
+ >
+ {Object.values(
+ props.pageName === 'control'
+ ? FlightCategory.Control
+ : FlightCategory.Operation
+ ).map(item => (
+
+ ))}
+
+
diff --git a/src/configs/constants.ts b/src/configs/constants.ts
index 1b418a24..d1db29c3 100644
--- a/src/configs/constants.ts
+++ b/src/configs/constants.ts
@@ -233,3 +233,22 @@ export const DistrictCategories = {
export type DistrictCategory =
| typeof DistrictCategories['control'][CityCategory][number]
| typeof DistrictCategories['operation'][CityCategory][number];
+
+// 비행 확인 상태
+export const FlightCategory = {
+ Control: {
+ 전체: '전체',
+ 검토완료: '검토완료',
+ 검토대기: '검토대기',
+ 재검토: '재검토'
+ },
+ Operation: {
+ 전체: '전체',
+ 검토완료: '검토완료',
+ 검토대기: '검토대기',
+ 재검토: '재검토',
+ 검토불필요: '검토불필요'
+ }
+};
+
+export type FlightCategoryType = keyof typeof FlightCategory;
diff --git a/src/containers/flight/ControlApprovalsContainer.js b/src/containers/flight/ControlApprovalsContainer.js
index 1a38c59f..d43480c6 100644
--- a/src/containers/flight/ControlApprovalsContainer.js
+++ b/src/containers/flight/ControlApprovalsContainer.js
@@ -57,6 +57,9 @@ export default function ControlApprovalsContainer({ mode }) {
// 식별번호
const [filterId, setFilterId] = useState('');
+ // 검토 상태값
+ const [reviewedType, setReviewedType] = useState('전체');
+
// 지역
const [filterArea, setFilterArea] = useState({
ctprvn: '전체',
@@ -120,7 +123,6 @@ export default function ControlApprovalsContainer({ mode }) {
if (e.data.type) {
const { type } = e.data;
const { payload } = e.data;
- console.log(payload);
switch (type) {
case 'search':
const { search, searchDate, filterArea } = payload;
@@ -232,6 +234,14 @@ export default function ControlApprovalsContainer({ mode }) {
return 'C';
case '조건부 승인':
return 'C';
+ case '검토완료':
+ return 'R';
+ case '재검토':
+ return 'A';
+ case '검토대기':
+ return 'W';
+ case '검토불필요':
+ return 'U';
}
};
@@ -257,6 +267,17 @@ export default function ControlApprovalsContainer({ mode }) {
approvalCd: checkSearch(search)
})
);
+ } else if (reviewedType !== '전체') {
+ dispatch(
+ getLaancAprvList({
+ searchStDt: searchDate.startDate,
+ searchEndDt: searchDate.endDate,
+ ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn,
+ sig: filterArea.sig === '전체' ? '' : filterArea.sig,
+ address: filterArea.address,
+ reviewedType: checkSearch(reviewedType)
+ })
+ );
} else if (search != '') {
dispatch(
getLaancAprvList({
@@ -704,6 +725,8 @@ export default function ControlApprovalsContainer({ mode }) {
setFilterId={setFilterId}
filterArea={filterArea}
setFilterArea={setFilterArea}
+ setReviewedType={setReviewedType}
+ reviewedType={reviewedType}
pageName='control'
/>
{
setStartDate(searchDate.startDate);
setEndDate(searchDate.endDate);
@@ -302,6 +312,17 @@ export default function OperationApprovalsContainer({ mode }) {
approvalCd: checkSearch(search)
})
);
+ } else if (reviewedType !== '전체') {
+ dispatch(
+ getLaancAprvList({
+ searchStDt: searchDate.startDate,
+ searchEndDt: searchDate.endDate,
+ ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn,
+ sig: filterArea.sig === '전체' ? '' : filterArea.sig,
+ address: filterArea.address,
+ reviewedType: checkSearch(reviewedType)
+ })
+ );
} else if (search != '') {
dispatch(
getLaancAprvList({
@@ -809,6 +830,8 @@ export default function OperationApprovalsContainer({ mode }) {
setFilterId={setFilterId}
filterArea={filterArea}
setFilterArea={setFilterArea}
+ setReviewedType={setReviewedType}
+ reviewedType={reviewedType}
pageName='operation'
/>
{
@@ -71,12 +74,35 @@ function ControlApprovalsPopupContainer() {
}
};
+ const checkSearch = text => {
+ switch (text) {
+ case '승인':
+ return 'S';
+ case '미승인':
+ return 'F';
+ case '비대상':
+ return 'U';
+ case '조건부승인':
+ return 'C';
+ case '조건부 승인':
+ return 'C';
+ case '검토완료':
+ return 'R';
+ case '재검토':
+ return 'A';
+ case '검토대기':
+ return 'W';
+ case '검토불필요':
+ return 'U';
+ }
+ };
+
const handlerSearch = (search, searchDate, filterArea) => {
setStartDate(searchDate.startDate);
setEndDate(searchDate.endDate);
setFilter(search);
if (
- search !== '' &&
+ search != '' &&
(search === '승인' ||
search === '미승인' ||
search === '비대상' ||
@@ -90,14 +116,18 @@ function ControlApprovalsPopupContainer() {
ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn,
sig: filterArea.sig === '전체' ? '' : filterArea.sig,
address: filterArea.address,
- approvalCd:
- search === '승인'
- ? 'S'
- : search === '미승인'
- ? 'F'
- : search === '조건부승인' || search === '조건부 승인'
- ? 'C'
- : 'U'
+ approvalCd: checkSearch(search)
+ })
+ );
+ } else if (reviewedType !== '전체') {
+ dispatch(
+ getLaancAprvList({
+ searchStDt: searchDate.startDate,
+ searchEndDt: searchDate.endDate,
+ ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn,
+ sig: filterArea.sig === '전체' ? '' : filterArea.sig,
+ address: filterArea.address,
+ reviewedType: checkSearch(reviewedType)
})
);
} else if (search != '') {
@@ -158,6 +188,8 @@ function ControlApprovalsPopupContainer() {
setFilterId={setFilterId}
filterArea={filterArea}
setFilterArea={setFilterArea}
+ reviewedType={reviewedType}
+ setReviewedType={setReviewedType}
pageName='control'
/>
{
@@ -94,12 +98,35 @@ function OperationApprovalsPopupContainer() {
}
};
+ const checkSearch = text => {
+ switch (text) {
+ case '승인':
+ return 'S';
+ case '미승인':
+ return 'F';
+ case '비대상':
+ return 'U';
+ case '조건부승인':
+ return 'C';
+ case '조건부 승인':
+ return 'C';
+ case '검토완료':
+ return 'R';
+ case '재검토':
+ return 'A';
+ case '검토대기':
+ return 'W';
+ case '검토불필요':
+ return 'U';
+ }
+ };
+
const handlerSearch = (search, searchDate, filterArea) => {
setStartDate(searchDate.startDate);
setEndDate(searchDate.endDate);
setFilter(search);
if (
- search !== '' &&
+ search != '' &&
(search === '승인' ||
search === '미승인' ||
search === '비대상' ||
@@ -113,14 +140,18 @@ function OperationApprovalsPopupContainer() {
ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn,
sig: filterArea.sig === '전체' ? '' : filterArea.sig,
address: filterArea.address,
- approvalCd:
- search === '승인'
- ? 'S'
- : search === '미승인'
- ? 'F'
- : search === '조건부승인' || search === '조건부 승인'
- ? 'C'
- : 'U'
+ approvalCd: checkSearch(search)
+ })
+ );
+ } else if (reviewedType !== '전체') {
+ dispatch(
+ getLaancAprvList({
+ searchStDt: searchDate.startDate,
+ searchEndDt: searchDate.endDate,
+ ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn,
+ sig: filterArea.sig === '전체' ? '' : filterArea.sig,
+ address: filterArea.address,
+ reviewedType: checkSearch(reviewedType)
})
);
} else if (search != '') {
@@ -192,6 +223,8 @@ function OperationApprovalsPopupContainer() {
setFilterId={setFilterId}
filterArea={filterArea}
setFilterArea={setFilterArea}
+ reviewedType={reviewedType}
+ setReviewedType={setReviewedType}
pageName='operation'
/>