diff --git a/src/components/flight/ControlApprovalsTable.js b/src/components/flight/ControlApprovalsTable.js index 5a32310b..11e2ced3 100644 --- a/src/components/flight/ControlApprovalsTable.js +++ b/src/components/flight/ControlApprovalsTable.js @@ -261,7 +261,7 @@ export default function ControlApprovalsTable(props) { ), dataIndex: 'areaList', align: 'center', - width: '85px', + width: '90px', render: areaList => { return areaList.length <= 1 ? ( <> @@ -291,6 +291,40 @@ export default function ControlApprovalsTable(props) { return text ? text : '-'; } }, + { + title: ( + <> + 요청
+ 반경 +
+ (m이내) + + ), + dataIndex: 'reqRadius', + align: 'center', + width: '80px', + editable: true, + render: (text, record) => { + return text ? text : '-'; + } + }, + { + title: ( + <> + 허용
+ 반경 +
+ (m이내) + + ), + dataIndex: 'fltElev', + align: 'center', + width: '80px', + editable: true, + render: (text, record) => { + return text ? text : '-'; + } + }, { title: ( <> @@ -300,7 +334,7 @@ export default function ControlApprovalsTable(props) { (m이하) ), - dataIndex: 'fltElev', + dataIndex: 'allowRadius', align: 'center', width: '80px', editable: true, @@ -313,12 +347,14 @@ export default function ControlApprovalsTable(props) { <> 최고비행
- 해발고도 (m) + 해발고도 +
+ (m) ), dataIndex: 'fltElevMax', align: 'center', - width: '80px', + width: '90px', render: (text, record) => { return text ? text : '-'; } @@ -586,7 +622,7 @@ export default function ControlApprovalsTable(props) { { align: 'center', - width: '85px', + width: '90px', dataIndex: ['lat', 'lon'], render: (text, record) => { const lat = record.lat; @@ -603,18 +639,42 @@ export default function ControlApprovalsTable(props) { dataIndex: 'bufferZone', align: 'center', editable: true, - width: '80px' + width: '80px', + render: text => { + return text ? text : <>-; + } + }, + { + dataIndex: 'reqRadius', + align: 'center', + editable: true, + width: '80px', + render: text => { + return text ? text : <>-; + } + }, + { + dataIndex: 'allowRadius', + align: 'center', + editable: true, + width: '80px', + render: text => { + return text ? text : <>-; + } }, { dataIndex: 'fltElev', align: 'center', editable: true, - width: '80px' + width: '80px', + render: text => { + return text ? text : <>-; + } }, { dataIndex: 'fltElevMax', align: 'center', - width: '80px', + width: '90px', render: text => { return text ? text : <>-; } @@ -737,6 +797,8 @@ export default function ControlApprovalsTable(props) { fltElev: item.fltElev, rm: item.rm, era: item.era, + reqRadius: item.reqRadius, + allowRadius: item.allowRadius, fltElevMax: item.fltElevMax, purpose: item.purpose, reviewedType: item.reviewedType, @@ -1124,6 +1186,7 @@ export default function ControlApprovalsTable(props) { await dispatch( updateLaancAprvReview({ planAreaSnoList, reviewedType: 'R' }) ); + setCheckList([]); await dispatch( getLaancAprvList({ searchStDt: props.startDate, @@ -1260,7 +1323,7 @@ export default function ControlApprovalsTable(props) { rowExpandable: record => record?.areaList?.length > 1 }} scroll={{ - x: 1600 + x: 1700 }} rowHoverable={false} expandIconColumnIndex={-1} diff --git a/src/components/flight/NewFlightApprovalsReport.js b/src/components/flight/NewFlightApprovalsReport.js index 9d63da5d..b60bfc13 100644 --- a/src/components/flight/NewFlightApprovalsReport.js +++ b/src/components/flight/NewFlightApprovalsReport.js @@ -83,8 +83,13 @@ export default function NewFlightApprovalsReport(props) { type='select' id='filterArea' bsSize='sm' - value={props.filterArea} - onChange={e => props.setFilterArea(e.target.value)} + value={props.filterArea.ctprvn} + onChange={e => + props.setFilterArea({ + ...props.filterArea, + ctprvn: e.target.value + }) + } > {Object.values(CityCategories).map(city => ( @@ -113,8 +123,13 @@ export default function NewFlightApprovalsReport(props) { type='text' bsSize='sm' placeholder='주소를 입력해주세요.' - value={props.filterId} - onChange={e => props.setFilterId(e.target.value)} + value={props.filterArea.address} + onChange={e => + props.setFilterArea({ + ...props.filterArea, + address: e.target.value + }) + } onKeyPress={handleKeyDown} /> diff --git a/src/containers/flight/ControlApprovalsContainer.js b/src/containers/flight/ControlApprovalsContainer.js index a08732cd..6a4096a7 100644 --- a/src/containers/flight/ControlApprovalsContainer.js +++ b/src/containers/flight/ControlApprovalsContainer.js @@ -64,11 +64,13 @@ export default function ControlApprovalsContainer({ mode }) { const [filterId, setFilterId] = useState(''); // 지역 - const [filterArea, setFilterArea] = useState('전체'); - - // 시군구 - const [district, setDistrict] = useState('전체'); + const [filterArea, setFilterArea] = useState({ + ctprvn: '전체', + sig: '전체', + address: '' + }); + console.log('>>>', filterArea); const { map, mapType } = useSelector(state => state.mapState); // popup @@ -77,7 +79,6 @@ export default function ControlApprovalsContainer({ mode }) { const popupRef = useRef(null); const rightMenuRef = useRef(null); const savedRightMenuRef = useRef(null); - const [clientX, setClientX] = useState(0); // 비행구역 데이터블록 const [dataBlocks, setDataBlocks] = useState([]); @@ -242,7 +243,9 @@ export default function ControlApprovalsContainer({ mode }) { getLaancAprvList({ searchStDt: searchDate.startDate, searchEndDt: searchDate.endDate, - selectZone: filterArea, + ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn, + sig: filterArea.sig === '전체' ? '' : filterArea.sig, + address: filterArea.address, approvalCd: search === '승인' ? 'S' @@ -258,7 +261,9 @@ export default function ControlApprovalsContainer({ mode }) { getLaancAprvList({ searchStDt: searchDate.startDate, searchEndDt: searchDate.endDate, - selectZone: filterArea, + ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn, + sig: filterArea.sig === '전체' ? '' : filterArea.sig, + address: filterArea.address, applyNo: search }) ); @@ -267,7 +272,9 @@ export default function ControlApprovalsContainer({ mode }) { getLaancAprvList({ searchStDt: searchDate.startDate, searchEndDt: searchDate.endDate, - selectZone: filterArea + ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn, + sig: filterArea.sig === '전체' ? '' : filterArea.sig, + address: filterArea.address }) ); } @@ -504,8 +511,6 @@ export default function ControlApprovalsContainer({ mode }) { handleDragEnd={handleDragEnd} filterId={filterId} setFilterId={setFilterId} - district={district} - setDistrict={setDistrict} filterArea={filterArea} setFilterArea={setFilterArea} /> diff --git a/src/containers/flight/OperationApprovalsContainer.js b/src/containers/flight/OperationApprovalsContainer.js index 8e34da6e..99cda963 100644 --- a/src/containers/flight/OperationApprovalsContainer.js +++ b/src/containers/flight/OperationApprovalsContainer.js @@ -76,10 +76,11 @@ export default function OperationApprovalsContainer({ mode }) { const [filterId, setFilterId] = useState(''); // 지역 - const [filterArea, setFilterArea] = useState('전체'); - - // 시군구 - const [district, setDistrict] = useState('전체'); + const [filterArea, setFilterArea] = useState({ + ctprvn: '전체', + sig: '전체', + address: '' + }); const { map, mapType } = useSelector(state => state.mapState); @@ -267,7 +268,9 @@ export default function OperationApprovalsContainer({ mode }) { getLaancAprvList({ searchStDt: searchDate.startDate, searchEndDt: searchDate.endDate, - selectZone: filterArea, + ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn, + sig: filterArea.sig === '전체' ? '' : filterArea.sig, + address: filterArea.address, approvalCd: search === '승인' ? 'S' @@ -283,7 +286,9 @@ export default function OperationApprovalsContainer({ mode }) { getLaancAprvList({ searchStDt: searchDate.startDate, searchEndDt: searchDate.endDate, - selectZone: filterArea, + ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn, + sig: filterArea.sig === '전체' ? '' : filterArea.sig, + address: filterArea.address, applyNo: search }) ); @@ -292,7 +297,9 @@ export default function OperationApprovalsContainer({ mode }) { getLaancAprvList({ searchStDt: searchDate.startDate, searchEndDt: searchDate.endDate, - selectZone: filterArea + ctprvn: filterArea.ctprvn === '전체' ? '' : filterArea.ctprvn, + sig: filterArea.sig === '전체' ? '' : filterArea.sig, + address: filterArea.address }) ); } @@ -879,8 +886,6 @@ export default function OperationApprovalsContainer({ mode }) { handleDragEnd={handleDragEnd} filterId={filterId} setFilterId={setFilterId} - district={district} - setDistrict={setDistrict} filterArea={filterArea} setFilterArea={setFilterArea} /> diff --git a/src/redux/features/laanc/laancSlice.ts b/src/redux/features/laanc/laancSlice.ts index 9d42f5b4..8878da89 100644 --- a/src/redux/features/laanc/laancSlice.ts +++ b/src/redux/features/laanc/laancSlice.ts @@ -413,12 +413,13 @@ const laancSlice = createSlice({ state.laancAprvList = action.payload as ILaancAprvListRs[]; state.laancAprvLoading = false; }); - builder.addCase(updateLaancAprvReview.pending, (state, action) => { - state.laancAprvLoading = true; - }); - builder.addCase(updateLaancAprvReview.fulfilled, (state, action) => { - state.laancAprvLoading = false; - }); + // builder.addCase(updateLaancAprvReview.pending, (state, action) => { + // state.laancAprvLoading = true; + // }); + // builder.addCase(updateLaancAprvReview.fulfilled, (state, action) => { + + // state.laancAprvLoading = false; + // }); } }); diff --git a/src/redux/features/laanc/laancState.ts b/src/redux/features/laanc/laancState.ts index df7ac81e..29f9872c 100644 --- a/src/redux/features/laanc/laancState.ts +++ b/src/redux/features/laanc/laancState.ts @@ -631,6 +631,9 @@ export interface ILaancAprvListRq { searchStDt: string; searchEndDt: string; approvalCd: string; + ctprvn?: string; + sig?: string; + adress?: string; } export interface ILaancAprvListRs { diff --git a/src/redux/features/laanc/laancThunk.ts b/src/redux/features/laanc/laancThunk.ts index ed80ef6d..fde38ee5 100644 --- a/src/redux/features/laanc/laancThunk.ts +++ b/src/redux/features/laanc/laancThunk.ts @@ -288,7 +288,8 @@ export const getLaancAprvList = createAsyncThunk( era: item.areaList[0].era, dtl: item.areaList[0].dtl, planAreaSno: item.areaList[0].planAreaSno, - + reqRadius: item.areaList[0].reqRadius, + allowRadius: item.areaList[0].allowRadius, fltElevMax: !item.areaList[0].fltElevMax && item.areaList[0].approvalCd === 'U' @@ -353,6 +354,7 @@ export const updateLaancAprvReview = createAsyncThunk( try { const data: { any } = await axios.patch(`api/bas/dos/plan/reviewed`, rq); console.log('>>', data); + return data; } catch (error) { openModal({