From 08db9210d2ae4e42c467aec8e8e17b749e192e09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?junh=5Feee=28=EC=9D=B4=EC=A4=80=ED=9D=AC=29?= Date: Wed, 2 Nov 2022 10:59:59 +0900 Subject: [PATCH 1/4] =?UTF-8?q?=EA=B4=80=EC=A0=9C=20-=20=EC=8B=9D=EB=B3=84?= =?UTF-8?q?=EC=9E=A5=EC=B9=98=20=EC=9C=A0=EB=AC=B4=EC=97=90=20=EB=94=B0?= =?UTF-8?q?=EB=A5=B8=20=EB=B2=84=EA=B7=B8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/map/naver/dron/DronMarker.js | 5 ++++- src/modules/control/gp/sagas/controlGpSaga.ts | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/map/naver/dron/DronMarker.js b/src/components/map/naver/dron/DronMarker.js index 9ef8fa1..303b1e1 100644 --- a/src/components/map/naver/dron/DronMarker.js +++ b/src/components/map/naver/dron/DronMarker.js @@ -116,12 +116,15 @@ export const DronMarker = props => { const markerOption = {}; if (id.substring(0, 2) === 'PA') { - const pal = controlGroupAuthInfo.find( + const pal = controlGroupAuthInfo?.find( prev => prev.idntfNum === gps.objectId ); markerOption.url = pal ? DronIcon : FlightIcon; markerOption.type = pal ? 'DRONE' : 'FLIGHT'; } else { + // const etc = controlGpList?.filter( + // prev => prev.command === 이사람이 가입한 그룹의 command(가입한 그룹의 리스트를 여기로 불러와야 함) + // ) markerOption.url = FlightIcon; markerOption.type = 'FLIGHT'; } diff --git a/src/modules/control/gp/sagas/controlGpSaga.ts b/src/modules/control/gp/sagas/controlGpSaga.ts index 759f459..04884ae 100644 --- a/src/modules/control/gp/sagas/controlGpSaga.ts +++ b/src/modules/control/gp/sagas/controlGpSaga.ts @@ -26,7 +26,7 @@ function* getControlGpSaga( let gpsData: ControlGpData[] = []; //사용자가 등록한 기체(식별장치 포함)만 관제에서 볼 수 있게 필터처리 - if (controlGroupAuthInfo.length > 0) { + if (controlGroupAuthInfo?.length > 0) { controlGroupAuthInfo.forEach(auth => { if (gpsData.length > 0) return false; @@ -46,7 +46,7 @@ function* getControlGpSaga( data.forEach(gps => { if (gps.controlId && gps.objectId.substring(0, 2) === 'PA') { - const arcrft = controlGroupAuthInfo.find( + const arcrft = controlGroupAuthInfo?.find( auth => auth.idntfNum === gps.objectId ); From d49b6682f52d15f51e3bc1c9398703d5dd5a9082 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?kimjh=28=EA=B9=80=EC=9E=A5=ED=98=84=29?= Date: Wed, 2 Nov 2022 12:40:09 +0900 Subject: [PATCH 2/4] =?UTF-8?q?console=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/map/naver/dron/DronMarker.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/map/naver/dron/DronMarker.js b/src/components/map/naver/dron/DronMarker.js index 9ef8fa1..6c5e21f 100644 --- a/src/components/map/naver/dron/DronMarker.js +++ b/src/components/map/naver/dron/DronMarker.js @@ -253,7 +253,6 @@ export const DronMarker = props => { //마커를 셋팅 한다. const markerInit = () => { if (controlGpList) { - console.log(controlGpList); allRemoveMarkers(); controlGpList.map(item => { let position = new naver.maps.LatLng(item.lat, item.lng); From 204af06df53ddddd45579b51f0752dd826ac5971 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?junh=5Feee=28=EC=9D=B4=EC=A4=80=ED=9D=AC=29?= Date: Wed, 2 Nov 2022 17:10:28 +0900 Subject: [PATCH 3/4] =?UTF-8?q?=ED=84=B0=EB=AF=B8=EB=84=90ID=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=20=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../account/register/AccountRegisterForm.js | 61 +++++++++++++++++-- src/components/basis/group/BaisGroupForm.js | 28 ++++++++- .../group/BasisGroupApprovalContainer.js | 24 +++----- .../basis/group/BasisGroupDetailContainer.js | 2 + .../control/gp/models/controlGpModel.ts | 1 + 5 files changed, 95 insertions(+), 21 deletions(-) diff --git a/src/components/account/register/AccountRegisterForm.js b/src/components/account/register/AccountRegisterForm.js index 6aa000e..9b34e0e 100644 --- a/src/components/account/register/AccountRegisterForm.js +++ b/src/components/account/register/AccountRegisterForm.js @@ -203,7 +203,9 @@ export const AccountRegisterForm = ({ email: '', hpno: '', clncd: '+82', - crtfyNo: '' + crtfyNo: '', + company: '팔네트웍스', + trmnlId: 'SANDBOX-001' }, resolver: yupResolver(SignupSchema) }); @@ -289,9 +291,15 @@ export const AccountRegisterForm = ({ let hpno = ''; let brthdyDate = ''; + let trmnlId = ''; const onChangeHandler = e => { const { name, value } = e.target; + if (name === 'company') { + trmnlId = value; + setValue('trmnlId', trmnlId); + } + if (name === 'memberName') { setMemberName(value); } @@ -578,7 +586,7 @@ export const AccountRegisterForm = ({ */} -
+ @@ -597,8 +605,51 @@ export const AccountRegisterForm = ({ {errors && errors.userPswd && ( {errors.userPswd.message} )} -
-
+ + + + +
+ + + + + + + {errors && errors.company && ( + {errors.company.message} + )} + + + + {errors && errors.trmnlId && ( + {errors.trmnlId.message} + )} + +
+
+ + @@ -617,7 +668,7 @@ export const AccountRegisterForm = ({ {errors && errors.confirmUserPaswd && ( {errors.confirmUserPaswd.message} )} -
+
{ name='groupId' bsSize='sm' readOnly={true} - value={props.groupData.groupId || ''} + defaultValue={props.groupData.groupId || ''} placeholder='' /> @@ -107,6 +107,32 @@ export const BasisGroupForm = props => { + + + + + {errors && errors.trmnlId && ( + + {errors.trmnlId.message} + + )} + + + {/* diff --git a/src/containers/basis/group/BasisGroupApprovalContainer.js b/src/containers/basis/group/BasisGroupApprovalContainer.js index 2cffb8b..16c2ac7 100644 --- a/src/containers/basis/group/BasisGroupApprovalContainer.js +++ b/src/containers/basis/group/BasisGroupApprovalContainer.js @@ -170,6 +170,7 @@ export const BasisGroupApprovalContainer = props => { const [saveData, setSaveData] = useState({ cstmrGroupSno: '', + trmnlId: '', // aprvlYn: 'N', //가입은 USER 로만 aprvlYn: 'N', //가입은 NORMAL 로만 aprvUserId: '' @@ -259,14 +260,10 @@ export const BasisGroupApprovalContainer = props => { sortable: false, cell: (row, i) => { let disa = false; - + let trmnlId = ''; if (user.authId === 'ADMIN') { //모든 그룹 조회 가능 - const my = groupList?.find(prev => { - if (prev.groupId === row?.groupId) { - return prev; - } - }); + const my = groupList?.find(prev => prev.groupId === row?.groupId); if (my.myGroupAuthCd === 'NORMAL') { disa = true; } else if (!my.myGroupAuthCd) { @@ -274,11 +271,8 @@ export const BasisGroupApprovalContainer = props => { } } else if (user.authId === 'USER') { //본인 그룹 조회 가능 - const my = joinList?.find(prev => { - if (prev.groupId === row?.groupId) { - return prev; - } - }); + const my = joinList?.find(prev => prev.groupId === row?.groupId); + trmnlId = my?.trmnlId; if (my?.groupAuthCd === 'NORMAL') { disa = true; } @@ -288,7 +282,7 @@ export const BasisGroupApprovalContainer = props => { handlerAprvConfirm(row?.cstmrGroupSno)} + onClick={() => handlerAprvConfirm(row?.cstmrGroupSno, trmnlId)} disabled={disa} > 승인처리 @@ -327,19 +321,19 @@ export const BasisGroupApprovalContainer = props => { param.page = page; dispatch(Actions.APPROVAL_LIST.request({ searchParams: param })); }; - const handlerAprvConfirm = cstmrGroupSno => { + const handlerAprvConfirm = (cstmrGroupSno, trmnlId) => { setModal({ isOpen: true, title: '승인 확인', desc: '해당 사용자를 승인 처리 하시겠습니까?' }); - //승인처리 시 권한부여 O setSaveData({ cstmrGroupSno: cstmrGroupSno, aprvlYn: 'Y', aprvUserId: user?.userId, - groupAuthCd: 'NORMAL' + groupAuthCd: 'NORMAL', + trmnlId: trmnlId }); }; diff --git a/src/containers/basis/group/BasisGroupDetailContainer.js b/src/containers/basis/group/BasisGroupDetailContainer.js index 0bfc3c6..1c98391 100644 --- a/src/containers/basis/group/BasisGroupDetailContainer.js +++ b/src/containers/basis/group/BasisGroupDetailContainer.js @@ -38,6 +38,7 @@ export const BasisGroupDetailContainer = () => { useEffect(() => { setGroupData({ + trmnlId: user?.trmnlId, groupId: newGroupId, groupNm: '', type: 'create', @@ -63,6 +64,7 @@ export const BasisGroupDetailContainer = () => { const handlerCreate = data => { const saveData = { + trmnlId: groupData.trmnlId, createDt: '', cstmrSno: groupData.cstmrSno, groupId: groupData.groupId, diff --git a/src/modules/control/gp/models/controlGpModel.ts b/src/modules/control/gp/models/controlGpModel.ts index 95ad85a..29719dd 100644 --- a/src/modules/control/gp/models/controlGpModel.ts +++ b/src/modules/control/gp/models/controlGpModel.ts @@ -118,6 +118,7 @@ export interface ControlGroupAuthData { arcrftSno: number; idntfNum: string; createUserId: string; + trmnlId: string; } export interface ControlGpFlightPlanDataList From 97d60e75a47191f7d653a60d6294096c337e9022 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?hagjoon=28=EC=9D=B4=ED=95=99=EC=A4=80=29?= Date: Thu, 3 Nov 2022 10:55:00 +0900 Subject: [PATCH 4/4] =?UTF-8?q?=EB=B9=84=ED=96=89=EA=B3=84=ED=9A=8D?= =?UTF-8?q?=EC=84=9C=20=EB=82=A0=EC=94=A8(=ED=8F=BC=EC=B6=94=EA=B0=80)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flight/plan/FlightPlanAreaDetailForm.js | 189 +++++++++++++++++- 1 file changed, 187 insertions(+), 2 deletions(-) diff --git a/src/components/basis/flight/plan/FlightPlanAreaDetailForm.js b/src/components/basis/flight/plan/FlightPlanAreaDetailForm.js index 381eb34..147082e 100644 --- a/src/components/basis/flight/plan/FlightPlanAreaDetailForm.js +++ b/src/components/basis/flight/plan/FlightPlanAreaDetailForm.js @@ -4,11 +4,25 @@ import { CardBody, Col, FormGroup, - Input, Label, Row, - Button + Button, + InputGroupAddon, + InputGroup, + Input, + Table } from 'reactstrap'; +import { + Search, + Compass, + Sun, + CloudLightning, + Cloud, + CloudRain, + CloudDrizzle, + CloudSnow, + Navigation2 +} from 'react-feather'; const FlightPlanAreaDetailForm = ({ handleSave, @@ -247,6 +261,177 @@ const FlightPlanAreaDetailForm = ({ 닫기
+
+
+
+
+
+ 검색하신 지역의 날씨 정보입니다. + + 인천광역시 부평구 안남로 272 + +
+ {/* 탭메뉴or탭내용 활성화 active */} +
+
    +
  • 오늘
  • +
  • 주간
  • +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
시각날씨기온풍향풍속
10시 + + 27℃ + + 2m/s
12시 + + 30℃ + + 3m/s
14시 + + 28℃ + + 4m/s
16시 + + 27℃ + + 7m/s
18시 + + 25℃ + + 2m/s
20시 + + 26℃ + + 2m/s
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
날짜날씨기온
06.19.(토) 오전 + + 최저 27℃
06.19.(토) 오후 + + 30℃
06.20.(일) 오전 + + 30℃
06.20.(일) 오후 + + 30℃
06.21.(월) 오전 + + 30℃
06.21.(월) 오후 + + 30℃
06.22.(화) 오전 + + 30℃
06.2.(화) 오후 + + 30℃
+
+
+
+
+