Browse Source

Merge branch 'master' into feature/auth

ctrlDraw
junh_eee(이준희) 2 years ago
parent
commit
a8315b6bd2
  1. 4
      src/components/account/find/AccountFindPassword.js
  2. 4
      src/components/account/find/AccountFindUserId.js
  3. 4
      src/components/account/register/AccountRegisterForm.js
  4. 32
      src/components/analysis/history/AnalysisHistoryGrid.js
  5. 4
      src/components/basis/group/BasisGroupGrid.js
  6. 77
      src/components/crud/grid/GridDatatable.js
  7. 2
      src/components/map/naver/feature/FeatureAirZone.js
  8. 2
      src/modules/control/gp/apis/controlGpApi.ts
  9. 3
      src/modules/control/gp/models/controlGpModel.ts
  10. 2
      src/views/control/alarm/ControlAlarmDetail.js
  11. 18
      src/views/control/report/ControlReportDetail.js

4
src/components/account/find/AccountFindPassword.js

@ -334,10 +334,8 @@ export const AccountFindPassword = props => {
<Col md='3' xs='12'> <Col md='3' xs='12'>
<Input type='select' placeholder='+(국가번호)'> <Input type='select' placeholder='+(국가번호)'>
{/* <option>+82</option> */} {/* <option>+82</option> */}
<option value={'+82'}>대한민국(+82)</option>
<option value={'+81'}>일본(+81)</option> <option value={'+81'}>일본(+81)</option>
<option value={'+82'} selected>
대한민국(+82)
</option>
<option value={'+86'}>중국(+86)</option> <option value={'+86'}>중국(+86)</option>
</Input> </Input>
</Col> </Col>

4
src/components/account/find/AccountFindUserId.js

@ -293,10 +293,8 @@ export const AccountFindUserId = props => {
placeholder='+(국가번호)' placeholder='+(국가번호)'
> >
{/* <option>+82</option> */} {/* <option>+82</option> */}
<option value={'+82'}>대한민국(+82)</option>
<option value={'+81'}>일본(+81)</option> <option value={'+81'}>일본(+81)</option>
<option value={'+82'} selected>
대한민국(+82)
</option>
<option value={'+86'}>중국(+86)</option> <option value={'+86'}>중국(+86)</option>
</Input> </Input>
</Col> </Col>

4
src/components/account/register/AccountRegisterForm.js

@ -447,10 +447,8 @@ export const AccountRegisterForm = ({
'is-invalid': errors.clncd 'is-invalid': errors.clncd
})} })}
> >
<option value={'+82'}>대한민국(+82)</option>
<option value={'+81'}>일본(+81)</option> <option value={'+81'}>일본(+81)</option>
<option value={'+82'} selected>
대한민국(+82)
</option>
<option value={'+86'}>중국(+86)</option> <option value={'+86'}>중국(+86)</option>
</Input> </Input>
{errors && errors.clncd && ( {errors && errors.clncd && (

32
src/components/analysis/history/AnalysisHistoryGrid.js

@ -1,27 +1,10 @@
import { GridDatabase } from '../../../components/crud/grid/GridDatatable'; import { GridDatabase } from '../../../components/crud/grid/GridDatatable';
import { import { Card, Spinner } from 'reactstrap';
Row,
Col,
Table,
Badge,
UncontrolledDropdown,
DropdownMenu,
DropdownItem,
DropdownToggle,
Card,
CardHeader,
CardBody,
CardTitle,
CardSubtitle,
ButtonGroup,
Button,
Input,
CustomInput,
FormGroup
} from 'reactstrap';
import { ExcelExportButton } from '../../crud/excel/ExcelExportButton'; import { ExcelExportButton } from '../../crud/excel/ExcelExportButton';
import { useSelector } from 'react-redux';
export const AnalysisHistoryGrid = props => { export const AnalysisHistoryGrid = props => {
const { loading } = useSelector(state => state.loadingReducer);
return ( return (
// <div className='pal-card-box'> // <div className='pal-card-box'>
// <Row> // <Row>
@ -46,6 +29,15 @@ export const AnalysisHistoryGrid = props => {
{/* <div className='no-dataTable'> {/* <div className='no-dataTable'>
표시할 데이터가 없습니다. 표시할 데이터가 없습니다.
</div> */} </div> */}
{loading ? (
<div className='grid-loading'>
<div>
<Spinner color='primary' />
<span>Loading...</span>
</div>
</div>
) : null}
<GridDatabase <GridDatabase
title={'비행이력'} title={'비행이력'}
data={props.data} data={props.data}

4
src/components/basis/group/BasisGroupGrid.js

@ -44,9 +44,9 @@ export const BasisGroupGrid = props => {
</div> </div>
<div className='invoice-list-wrapper'> <div className='invoice-list-wrapper'>
<Card> <Card>
<div className='grid-loading'> {/* <div className='grid-loading'>
<div><Spinner color='primary' /><span>Loading...</span></div> <div><Spinner color='primary' /><span>Loading...</span></div>
</div> </div> */}
<div className='invoice-list-dataTable'> <div className='invoice-list-dataTable'>
<GridDatabase <GridDatabase
title={'비행이력'} title={'비행이력'}

77
src/components/crud/grid/GridDatatable.js

@ -7,57 +7,38 @@ import {
File, File,
ChevronDown ChevronDown
} from 'react-feather'; } from 'react-feather';
import { useSelector } from 'react-redux';
import LoadingSpinner from '../../../@core/components/spinner/Loading-spinner';
import { Spinner } from 'reactstrap';
export const GridDatabase = props => {
const { loading } = useSelector(state => state.loadingReducer);
export const GridDatabase = props => {
return props[`${props.handlerPageChange ? 'total' : 'count'}`] <= 0 ? ( return props[`${props.handlerPageChange ? 'total' : 'count'}`] <= 0 ? (
<div className='no-dataTable'>표시할 데이터가 없습니다.</div> <div className='no-dataTable'>표시할 데이터가 없습니다.</div>
) : ( ) : (
<DataTable <>
noHeader <DataTable
pagination={props.pagination} noHeader
paginationTotalRows={props.total} pagination={props.pagination}
// paginationServer paginationTotalRows={props.total}
subHeader={false} // paginationServer
columns={props.columns} subHeader={false}
responsive={true} columns={props.columns}
sortIcon={<ChevronDown />} responsive={true}
className='react-dataTable pal-dateTable' sortIcon={<ChevronDown />}
// defaultSortField='invoiceId' className='react-dataTable pal-dateTable'
// paginationDefaultPage={currentPage} // defaultSortField='invoiceId'
// paginationComponent={CustomPagination} // paginationDefaultPage={currentPage}
data={props.data} // paginationComponent={CustomPagination}
paginationServer={ data={props.data}
props.pagination && props.handlerPageChange ? true : false paginationServer={
} props.pagination && props.handlerPageChange ? true : false
onSelectedRowsChange={ }
props.onSelectedRowsChange ? props.onSelectedRowsChange : null onSelectedRowsChange={
} props.onSelectedRowsChange ? props.onSelectedRowsChange : null
selectableRows={props.selectableRows} }
onChangePage={props.pagination ? props.handlerPageChange : null} selectableRows={props.selectableRows}
paginationComponentOptions={{ onChangePage={props.pagination ? props.handlerPageChange : null}
noRowsPerPage: props.handlerPageChange ? true : false paginationComponentOptions={{
}} noRowsPerPage: props.handlerPageChange ? true : false
progressPending={props.handlerPageChange ? loading : false} }}
progressComponent={ />
<div </>
style={{
width: '100%',
height: '504px',
backgroundColor: 'rgba(35, 41, 58, 0.7)'
}}
>
<div className='grid-loading'>
<div>
<Spinner color='primary' />
<span>Loading...</span>
</div>
</div>
</div>
}
/>
); );
}; };

2
src/components/map/naver/feature/FeatureAirZone.js

@ -122,7 +122,7 @@ export const FeatureAirZone = props => {
const featureAirEvent = () => { const featureAirEvent = () => {
props.map.data.addListener('click', function (e) { props.map.data.addListener('click', function (e) {
// e.feature.setProperty('isColorful', true); // e.feature.setProperty('isColorful', true);
console.log(e.feature.property_name); // console.log(e.feature.property_name);
}); });
props.map.data.addListener('mouseover', function (e) { props.map.data.addListener('mouseover', function (e) {

2
src/modules/control/gp/apis/controlGpApi.ts

@ -24,7 +24,7 @@ export const controlGpApi = {
} }
const { data }: ResponseControlGpWarnLog = await axios.get( const { data }: ResponseControlGpWarnLog = await axios.get(
`api/ctr/cntrl/warn/list/${id}` `api/ctr/cntrl/warn/detail/${id}`
); );
return data; return data;

3
src/modules/control/gp/models/controlGpModel.ts

@ -133,8 +133,9 @@ export interface ControlGpFlightPlanData {
export interface ControlGpWarnLogData { export interface ControlGpWarnLogData {
warnLogSno: number; warnLogSno: number;
cntrlId: String; cntrlId: String;
createDt: String; createDt: String;
idntfNum: String;
} }
export interface ControlGpWarnLogList extends Array<ControlGpWarnLogData> {}; export interface ControlGpWarnLogList extends Array<ControlGpWarnLogData> {};

2
src/views/control/alarm/ControlAlarmDetail.js

@ -19,6 +19,7 @@ const ControlAlarmDetail = ({ historyModal, setHistoryModal, controlGpWarnLog })
<table className='table pal-table'> <table className='table pal-table'>
<tr> <tr>
<th>번호</th> <th>번호</th>
<th>식별번호</th>
<th>날짜</th> <th>날짜</th>
<th>내용</th> <th>내용</th>
</tr> </tr>
@ -27,6 +28,7 @@ const ControlAlarmDetail = ({ historyModal, setHistoryModal, controlGpWarnLog })
return ( return (
<tr key={i}> <tr key={i}>
<th>{i + 1}</th> <th>{i + 1}</th>
<th>{p.idntfNum}</th>
<th>{p.createDt}</th> <th>{p.createDt}</th>
<th>{p.warnType}</th> <th>{p.warnType}</th>
</tr> </tr>

18
src/views/control/report/ControlReportDetail.js

@ -103,7 +103,7 @@ const ControlReportDetail = props => {
{GET_ARCTFT_TYPE_CD(controlDetail?.arcrftTypeCd)} {GET_ARCTFT_TYPE_CD(controlDetail?.arcrftTypeCd)}
</div> </div>
</dt> </dt>
<dt> {/* <dt>
<div className='list-left-txt'>배터리 잔량</div> <div className='list-left-txt'>배터리 잔량</div>
<div className='list-right-txt'> <div className='list-right-txt'>
{controlGpDetail?.betteryLevel} % {controlGpDetail?.betteryLevel} %
@ -114,7 +114,7 @@ const ControlReportDetail = props => {
<div className='list-right-txt'> <div className='list-right-txt'>
{controlGpDetail?.betteryVoltage} volt {controlGpDetail?.betteryVoltage} volt
</div> </div>
</dt> </dt> */}
</dl> </dl>
</div> </div>
</div> </div>
@ -136,7 +136,7 @@ const ControlReportDetail = props => {
<div className='list-left-txt'>시작시간</div> <div className='list-left-txt'>시작시간</div>
<div className='list-right-txt'> <div className='list-right-txt'>
{moment( {moment(
controlGpDetail?.controlStartDt, controlGpDetail?.controlStDt,
'YYYYMMDDHHmmss' 'YYYYMMDDHHmmss'
).format('MM-DD HH:mm:ss')} ).format('MM-DD HH:mm:ss')}
</div> </div>
@ -160,30 +160,30 @@ const ControlReportDetail = props => {
</div> </div>
</dt> </dt>
<dt> <dt>
<div className='list-left-txt'>좌표</div> <div className='list-left-txt'>좌표(위도/경도)</div>
<div className='list-right-txt'> <div className='list-right-txt'>
{controlGpDetail?.lat} , {controlGpDetail?.lng} {controlGpDetail?.lat} / {controlGpDetail?.lng}
</div> </div>
</dt> </dt>
<dt> {/* <dt>
<div className='list-left-txt'>비행거리</div> <div className='list-left-txt'>비행거리</div>
<div className='list-right-txt'> <div className='list-right-txt'>
{nullMessage(controlGpDetail?.moveDistance)}{' '} {nullMessage(controlGpDetail?.moveDistance)}{' '}
{controlGpDetail?.moveDistanceType} {controlGpDetail?.moveDistanceType}
</div> </div>
</dt> </dt> */}
<dt> <dt>
<div className='list-left-txt'>헤딩 방위각</div> <div className='list-left-txt'>헤딩 방위각</div>
<div className='list-right-txt'> <div className='list-right-txt'>
{controlGpDetail?.heading} ° {controlGpDetail?.heading} °
</div> </div>
</dt> </dt>
<dt> {/* <dt>
<div className='list-left-txt'>상태</div> <div className='list-left-txt'>상태</div>
<div className='list-right-txt'> <div className='list-right-txt'>
{nullMessage(controlGpDetail?.dronStatus)} {nullMessage(controlGpDetail?.dronStatus)}
</div> </div>
</dt> </dt> */}
<dt> <dt>
<div className='list-left-txt'>위치정보 수신 시간</div> <div className='list-left-txt'>위치정보 수신 시간</div>
<div className='list-right-txt'> <div className='list-right-txt'>

Loading…
Cancel
Save