Browse Source

.

pull/2/head
노승철 2 years ago
parent
commit
0e548907cc
  1. 136
      src/components/basis/flight/plan/FlightPlanPilot.js
  2. 41
      src/containers/basis/flight/plan/FlightPlanPilotContainer.js

136
src/components/basis/flight/plan/FlightPlanPilot.js

@ -0,0 +1,136 @@
import React from 'react';
import {Button, Card, CardBody, Col, CustomInput, Row, FormGroup, Input, Label} from 'reactstrap';
import {Search} from 'react-feather';
import {GridDatabase} from '../../../crud/grid/GridDatatable';
const FlightPlanPilot = ({ pilotList, handleSelectPilot }) => {
const columns = [
{id: 'groupNm', name: '그룹 명', cell: row => (<div>{row.groupNm}</div>)},
{id: 'memberName', name: '성명', cell: row => (<div>{row.memberName}</div>)},
{id: 'hpno', name: '핸드폰 번호', cell: row => (<div>{row.hpno}</div>)},
{id: 'email', name: '이메일', cell: row => (<div>{row.email}</div>)},
{
id: 'selectPilot', name: '선택', cell: row => {
return <Button.Ripple color='primary' size='sm' onClick={() => {
handleSelectPilot(row.cstmrSno)
}
}>선택</Button.Ripple>;
}
}
];
return (
<>
<div className='pal-card-box'>
<Row>
<Col>
<div
className='cont-ti d-flex justify-content-between align-items-sm-center align-items-start flex-sm-row'>
<div>
<h4>검색조건</h4>
</div>
<div className='d-flex align-items-center'>
<Button.Ripple
color='primary'
size='sm'
// onClick={handleClickSearch}
>
<Search size={16}/>
검색
</Button.Ripple>
</div>
</div>
<Card>
<CardBody className='pal-card-body'>
<div className='search-cont'>
<dl>
<dt>
<div className='search-box'>
<div className='search-list-ti'>그룹 </div>
<div className='search-list'>
<div className='search-list-cont'>
<Row>
<Col className='list-input' xl='4' md='4' sm='12'>
<FormGroup className='form-label-group'>
<Input
type='text'
id='groupNm'
name='groupNm'
// value={props.params.groupNm}
// onChange={props.handlerInput}
size='sm'
// onKeyPress={props.onKeyPress}
placeholder='그룹명을 입력하세요'
/>
<Label for='test'>그룹 </Label>
</FormGroup>
</Col>
</Row>
</div>
</div>
</div>
<div className='search-box'>
<div className='search-list-ti'>성명</div>
<div className='search-list'>
<div className='search-list-cont'>
<Row>
<Col className='list-input' xl='4' md='4' sm='12'>
<FormGroup className='form-label-group'>
<Input
type='text'
id='groupNm'
name='groupNm'
// value={props.params.groupNm}
// onChange={props.handlerInput}
size='sm'
// onKeyPress={props.onKeyPress}
placeholder='성명을 입력하세요'
/>
<Label for='test'>성명</Label>
</FormGroup>
</Col>
</Row>
</div>
</div>
</div>
</dt>
</dl>
</div>
</CardBody>
</Card>
</Col>
</Row>
</div>
<div className='pal-card-box'>
<Row>
<Col>
<div className='cont-ti d-flex justify-content-between align-items-sm-center align-items-start flex-sm-row'>
<div>
<h4>조종사 목록</h4>
<span className='search-case'>검색결과 {!!pilotList ? pilotList.length : 0}</span>
</div>
</div>
<div className='invoice-list-wrapper'>
<Card>
<div className='invoice-list-dataTable'>
<GridDatabase
title={'조종사목록'}
data={pilotList}
// count={0}
columns={columns}
// pagination={props.pagination}
/>
{/* 검색된 데이터가 없습니다. */}
</div>
</Card>
</div>
</Col>
</Row>
</div>
</>
)
}
export default FlightPlanPilot;

41
src/containers/basis/flight/plan/FlightPlanPilotContainer.js

@ -0,0 +1,41 @@
import React, {useEffect, useState} from 'react';
import {useDispatch, useSelector} from 'react-redux';
import * as Actions from '../../../../modules/basis/flight/actions/basisFlightAction';
import FlightPlanPilot from '../../../../components/basis/flight/plan/FlightPlanPilot';
const FlightPlanPilotContainer = ({handleModal, type}) => {
const dispatch = useDispatch();
const { pilotList } = useSelector(state => state.flightState);
/* 조종사 조회 */
const handleSearch = () => {
// group id 하드코딩
dispatch(Actions.FLIGHT_PLAN_PILOT_LIST.request("D1682A"));
}
/* 조종사 선택 */
const handleSelectPilot = (cstmrSno) => {
handleModal({target: 'area', isOpen: false});
const pilot = pilotList.find(pilot => {
return pilot.cstmrSno === cstmrSno;
});
/* 파일럿 정보 Redux 저장 */
dispatch(Actions.PILOT_SELECT(pilot));
}
useEffect(() => {
handleSearch();
}, [])
return (
<FlightPlanPilot
pilotList = {pilotList}
handleSelectPilot={handleSelectPilot}
/>
)
}
export default FlightPlanPilotContainer;
Loading…
Cancel
Save