Browse Source

Merge branch 'master' of http://gitea.palntour.com/pav/pav-home

pull/2/head
김지은 2 years ago
parent
commit
2a2e3e1e55
  1. 10
      src/@core/layouts/components/navbar/UserDropdown.js
  2. 6
      src/assets/css/custom.css
  3. 97
      src/components/map/naver/dron/DronMarker.js
  4. 1
      src/containers/analysis/history/AnalysisHistoryContainer.js
  5. 1
      src/containers/system/auth/SystemAuthContainer.js
  6. 1
      src/containers/system/code/SystemCodeContainer.js
  7. 1
      src/containers/system/menu/SystemMenuContainer.js
  8. 1
      src/containers/system/user/SystemUserContainer.js
  9. 2
      src/views/design/mypage/myinfo/DesignMyinfo1.js

10
src/@core/layouts/components/navbar/UserDropdown.js

@ -54,6 +54,14 @@ const UserDropdown = () => {
//** Vars
const userAvatar = (userData && userData.avatar) || defaultAvatar;
const movePage = url => {
history.push(url);
};
const profileInfo = () => {
history.push('/mypage/myinfo/sample1');
};
return (
<UncontrolledDropdown tag='li' className='dropdown-user nav-item'>
@ -70,7 +78,7 @@ const UserDropdown = () => {
<Avatar img={userAvatar} imgHeight='40' imgWidth='40' status='online' />
</DropdownToggle>
<DropdownMenu right>
<DropdownItem tag={Link} to='#' onClick={e => e.preventDefault()}>
<DropdownItem onClick={profileInfo}>
<User size={14} className='mr-75' />
<span className='align-middle'>Profile</span>
</DropdownItem>

6
src/assets/css/custom.css

@ -414,6 +414,12 @@ h1.logo span{display:block;color:#f4f4f4;font-weight:bold;letter-spacing:2px;fon
.tooltip-txt-list + .tooltip-txt-list{margin-top:4px;}
.tooltip-box .arrow {position:absolute;bottom:-10px;left:50%;transform: translateX(-50%);display:block;width: 0px;height: 0px;border-top:10px solid #283046;border-bottom:10px solid none;border-right: 10px solid transparent;border-left: 10px solid transparent;}
/* 데이터블록 */
.dblock-box{background:#283046;padding:10px;border-radius:6px;position:absolute;}
.dblock-box div{text-align:left;font-size:10px;color:#bbb;}
.dblock-ti span, .block-txt .ti{color:#f4f4f4;font-weight:500;display:block;}
.dblock-txt{padding-top:4px;}
/*회원가입*/
.pal-register .auth-wrapper.auth-v1 .auth-inner{max-width:1200px;}
.pal-register .content-header .sub-txt{display:block;margin-bottom:1rem;}

97
src/components/map/naver/dron/DronMarker.js

@ -23,7 +23,7 @@ export const DronMarker = props => {
let CustomOverlay;
useEffect(() => {
if(arrMarkers.length != 0) markerInfo(arrMarkers);
if(arrMarkers.length != 0) markerInfo();
}, [arrMarkers])
@ -99,7 +99,6 @@ export const DronMarker = props => {
anchor: new naver.maps.Point(15, 15),
}
});
marker.setMap(props.map);
// drone 정보 창
@ -151,23 +150,25 @@ export const DronMarker = props => {
//데이터가 없는 마커를 모두 삭제 한다.
const allRemoveMarkers = () => {
if (arrMarkers && controlGpList) {
arrMarkers.map(marker => {
const isExists = controlGpList.find(
item => item.objectId === marker.id
const isExists = controlGpList.find(
item => item.objectId === marker.id
);
if (!isExists) {
removeMarkers(marker);
const arrData = arrMarkers.filter(
item => item.id != marker.id
);
if (!isExists) {
removeMarkers(marker);
const arrData = arrMarkers.filter(
item => item.id != marker.id
);
removeArrMarkers(arrData);
dispatch(objectUnClickAction());
}
removeArrMarkers(arrData);
dispatch(objectUnClickAction());
}
});
arrInfos.map(info => {
const isExists = controlGpList.find(
item => item.objectId === info._id
const isExists = arrMarkers.find(
marker => marker.id === info._id
);
if (!isExists) {
removeInfos(info);
@ -176,9 +177,10 @@ export const DronMarker = props => {
);
removeArrInfos(arrData);
dispatch(objectUnClickAction());
// dispatch(objectUnClickAction());
}
});
}
};
@ -209,25 +211,34 @@ export const DronMarker = props => {
const infoInit = (marker, gps, idx) => {
CustomOverlay = function(options) {
this._element = $(`
<div class="tooltip-box" style="width: 150px;">
<div class="tooltip-ti">
<span>${marker.id}</span>
</div>
<div class="tooltip-txt>
<div class="tooltip-txt-list">
<div>
<span style="width: 120px; display: inline-block;">속도: ${gps.speed}${gps.speedType}</span>
</div>
<div>
<span style="width: 120px; display: inline-block;">고도: ${gps.elev}${gps.elevType}</span>
</div>
<div>
<span style="width: 120px; display: inline-block;">헤딩방향: ${gps.heading}</span>
</div>
<div class="dblock-box" style="width: 140px;">
<div class="dblock-ti">
<span>${marker?.id}</span>
<span>${gps?.speed}${gps?.speedType} | ${gps?.elev}${gps?.elevType} | ${gps?.heading}</span>
</div>
</div>
</div>
`)
// this._element = $(`
// <div class="tooltip-box" style="width: 150px;">
// <div class="tooltip-ti">
// <span>${marker?.id}</span>
// </div>
// <div class="tooltip-txt>
// <div class="tooltip-txt-list">
// <div>
// <span style="width: 120px; display: inline-block;">속도: ${gps?.speed}${gps?.speedType}</span>
// </div>
// <div>
// <span style="width: 120px; display: inline-block;">고도: ${gps?.elev}${gps?.elevType}</span>
// </div>
// <div>
// <span style="width: 120px; display: inline-block;">헤딩방향: ${gps?.heading}</span>
// </div>
// </div>
// </div>
// </div>
// `)
this.setPosition(options.position, idx);
this.setMap(options.map || null);
@ -255,15 +266,13 @@ export const DronMarker = props => {
position = this.getPosition(),
pixelPosition = projection.fromCoordToOffset(position);
let cnt = 0;
if(idx) {
let index = idx._idx;
cnt = index * 100;
this._element.css('left', pixelPosition.x)
this._element.css('top', pixelPosition.y + -cnt)
// let cnt = 0;
// let index = idx?._idx;
// cnt = index * 98;
this._element.css('left', pixelPosition.x)
this._element.css('top', pixelPosition.y)
// this._element.css('top', pixelPosition.y + -cnt)
}
};
CustomOverlay.prototype.onRemove = function() {
@ -308,16 +317,18 @@ export const DronMarker = props => {
setArrInfos(arrData);
};
const markerInfo = (arrMarkers) => {
const markerInfo = () => {
arrMarkers.forEach((marker, idx) => {
infoInit(marker, controlGpList[idx], idx);
if(controlGpList.length != 0) {
const info = new CustomOverlay({
position: new naver.maps.LatLng(controlGpList[idx].lat, controlGpList[idx].lng),
map: map,
position: new naver.maps.LatLng(controlGpList[idx]?.lat, controlGpList[idx]?.lng),
// map: map,
id: marker.id,
idx: idx
});
info.setMap(map);
// console.log(info)
setArrInfos(m => [...m, info]);
}

1
src/containers/analysis/history/AnalysisHistoryContainer.js

@ -150,7 +150,6 @@ export const AnalysisHistoryContainer = props => {
};
useEffect(() => {
console.log('changeParam >>>', params);
}, [params]);
const handlerSearch = () => {

1
src/containers/system/auth/SystemAuthContainer.js

@ -72,7 +72,6 @@ export const SystemAuthContainer = props => {
}, []);
useEffect(() => {
console.log('changeParam >>>', params);
}, [params]);
const handlerSearch = () => {
// dispatch(Actions.list.request({ searchParams: params }));

1
src/containers/system/code/SystemCodeContainer.js

@ -73,7 +73,6 @@ export const SystemCodeContainer = props => {
}, []);
useEffect(() => {
console.log('changeParam >>>', params);
}, [params]);
const handlerSearch = () => {
// dispatch(Actions.list.request({ searchParams: params }));

1
src/containers/system/menu/SystemMenuContainer.js

@ -73,7 +73,6 @@ export const SystemMenuContainer = props => {
}, []);
useEffect(() => {
console.log('changeParam >>>', params);
}, [params]);
const handlerSearch = () => {
// dispatch(Actions.list.request({ searchParams: params }));

1
src/containers/system/user/SystemUserContainer.js

@ -74,7 +74,6 @@ export const SystemUserContainer = props => {
}, []);
useEffect(() => {
console.log('changeParam >>>', params);
}, [params]);
const handlerSearch = () => {
// dispatch(Actions.list.request({ searchParams: params }));

2
src/views/design/mypage/myinfo/DesignMyinfo1.js

@ -57,7 +57,7 @@ const UserEdit = () => {
<Col className='list-input' md='3' sm='12'>
<FormGroup>
<Label for='test'>이름</Label>
<Input type='text' id='test' size='sm' placeholder='' value='홍길동' disabled />
<Input type='text' id='test' size='sm' placeholder='' value='홍길동' disabled/>
</FormGroup>
</Col>
<Col className='list-input' md='3' sm='12'>

Loading…
Cancel
Save