diff --git a/src/components/basis/flight/schedule/FlightScheduleGrid.js b/src/components/basis/flight/schedule/FlightScheduleGrid.js index 1c05f18..aac29e6 100644 --- a/src/components/basis/flight/schedule/FlightScheduleGrid.js +++ b/src/components/basis/flight/schedule/FlightScheduleGrid.js @@ -5,8 +5,6 @@ import FlightScheduleRealTime from './FlightScheduleRealTime'; import { useSelector } from 'react-redux'; import moment from 'moment'; -const KR_TIME_DIFF = 9 * 60 * 60 * 1000; - /** * 비행 전 : B * 비행 중 : F @@ -67,7 +65,7 @@ function FlightScheduleGrid() { minWidth: '150px', sortable: true, cell: row => { - return moment(row.schFltStDt).format('HH:mm'); + return moment(row.schFltStDt).format('YYYY-MM-DD HH:mm'); } }, { @@ -85,7 +83,7 @@ function FlightScheduleGrid() { minWidth: '150px', sortable: true, cell: row => { - return moment(row.schFltEndDt).format('HH:mm'); + return moment(row.schFltEndDt).format('YYYY-MM-DD HH:mm'); } }, { @@ -94,23 +92,14 @@ function FlightScheduleGrid() { minWidth: '150px', sortable: true, cell: row => { - const endDate = new Date(row.schFltEndDt); - const startDate = new Date(row.schFltStDt); - - const timeDiff = endDate - startDate; + const endDate = moment(row.schFltEndDt); + const startDate = moment(row.schFltStDt); - let hours = fillZero( - 2, - String( - Math.floor((timeDiff % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)) - ) - ); - let minute = fillZero( - 2, - String(Math.floor((timeDiff % (1000 * 60 * 60)) / (1000 * 60))) - ); + const hours = moment.duration(endDate.diff(startDate)).asHours(); + const minute = + moment.duration(endDate.diff(startDate)).asMinutes() % 60; - return `${hours}:${minute}`; + return `${fillZero(2, String(hours))} : ${fillZero(2, String(minute))}`; } }, { @@ -130,13 +119,6 @@ function FlightScheduleGrid() { } } ]; - /** - * 비행상태가 완료이면 회색 - - 비행전 || 비행중 - 비행시작시간이 현재시간 10분 지연이거나 || 비행종료시간이 현재시간 10분 초과시 - 노란색 - */ const conditionalRowStyles = [ { @@ -262,7 +244,10 @@ function FlightScheduleGrid() { } // 비행중 체크 if (row.statusCd === 'F') { - if (currTime - itemEndTime >= 39) { + if (currDay - itemEndDay < 0) { + return false; + } + if (currTime - itemEndTime > 30) { return true; } return false; diff --git a/src/containers/basis/group/BasisGroupApprovalContainer.js b/src/containers/basis/group/BasisGroupApprovalContainer.js index 8b39008..33d2b8b 100644 --- a/src/containers/basis/group/BasisGroupApprovalContainer.js +++ b/src/containers/basis/group/BasisGroupApprovalContainer.js @@ -31,38 +31,38 @@ export const BasisGroupApprovalContainer = props => { const column = [ { - name: '생성일시', - selector: row => row?.createDt, + name: '그룹명', + selector: row => row.groupNm, + minWidth: '102px', sortable: true, cell: row => { - return row?.createDt ? row.createDt : '-'; + return row?.groupNm; + // return selectData; } }, { - name: '가입일시', - selector: row => row?.joinDt, + name: '그룹 코드', + selector: row => row.groupId, + minWidth: '102px', sortable: true, cell: row => { - return row?.joinDt ? row.joinDt : '-'; + return row?.groupId; } }, { - name: '그룹명', - selector: row => row.groupNm, - minWidth: '102px', + name: '생성일시', + selector: row => row?.createDt, sortable: true, cell: row => { - return row?.groupNm; - // return selectData; + return row?.createDt ? row.createDt : '-'; } }, { - name: '그룹 코드', - selector: row => row.groupId, - minWidth: '102px', + name: '가입일시', + selector: row => row?.joinDt, sortable: true, cell: row => { - return row?.groupId; + return row?.joinDt ? row.joinDt : '-'; } }, { @@ -266,8 +266,7 @@ export const BasisGroupApprovalContainer = props => { return prev; } }); - console.log(my); - if (my?.groupAuthCd === 'NORMAL') { + if (my.groupAuthCd === 'NORMAL') { disa = true; } else if (!my.groupAuthCd) { disa = true; @@ -284,30 +283,6 @@ export const BasisGroupApprovalContainer = props => { } } - // if (user.authId === 'ADMIN') { - // const join = groupList?.find(prev => { - // if (prev.cstmrSno === user.cstmrSno) { - // return prev; - // } - // }); - - // if (join) { - // //내 그룹 - // if (join.groupAuthCd === 'NORMAL') { - // disa = true; - // } - // } else { - // //내 그룹 아녀 - // disa = true; - // } - // } else if (user.authId === 'USER') { - // if (joinList[i].groupId === row?.groupId) { - // if (joinList[i].groupAuthCd === 'NORMAL') { - // disa = true; - // } - // } - // } - return row?.aprvlYn === 'N' ? ( { const columns = [ { - name: '생성일시', - selector: row => row?.createDt, + name: '그룹명', + selector: row => row.groupNm, + // minWidth: '102px', sortable: true, cell: row => { - return row?.createDt ? row.createDt : '-'; + return row?.groupNm; } }, { - name: '가입일시', - selector: row => row?.joinDt, + name: '그룹 코드', + selector: row => row.groupId, + // minWidth: '102px', sortable: true, cell: row => { - return row?.joinDt ? row.joinDt : '-'; + return row?.groupId; } }, { - name: '그룹명', - selector: row => row.groupNm, - // minWidth: '102px', + name: '생성일시', + selector: row => row?.createDt, sortable: true, cell: row => { - return row?.groupNm; + return row?.createDt ? row.createDt : '-'; } }, { - name: '그룹 코드', - selector: row => row.groupId, - // minWidth: '102px', + name: '가입일시', + selector: row => row?.joinDt, sortable: true, cell: row => { - return row?.groupId; + return row?.joinDt ? row.joinDt : '-'; } }, { @@ -125,16 +125,15 @@ export const BasisGroupUsersContainer = props => { return row?.groupNm; } }, - - { - name: '그룹 코드', - selector: row => row.groupId, - // minWidth: '102px', - sortable: true, - cell: row => { - return row?.groupId; - } - }, + // { + // name: '그룹 코드', + // selector: row => row.groupId, + // // minWidth: '102px', + // sortable: true, + // cell: row => { + // return row?.groupId; + // } + // }, { name: '사용자 명', selector: row => row.memberName, @@ -182,48 +181,33 @@ export const BasisGroupUsersContainer = props => { let leader = false; let normal = false; - if (user.authId === 'ADMIN') { - //모든 그룹 조회 가능 - const my = groupList?.find(prev => { + let my = ''; + if (groupList) { + my = groupList?.find(prev => { if (prev.groupId === row?.groupId) { return prev; } }); - // console.log(groupList); - if (my?.groupAuthCd === 'MASTER') { - if (row?.groupAuthCd === 'MASTER') { - // - } else if (row?.groupAuthCd === 'LEADER') { - leader = true; - } else if (row?.groupAuthCd === 'NORMAL') { - master = true; - normal = true; - } - } else if (my?.groupAuthCd === 'LEADER') { - if (row?.groupAuthCd === 'MASTER') { - master = true; - leader = true; - normal = true; - } else if (row?.groupAuthCd === 'LEADER') { - master = true; - leader = true; - } else if (row?.groupAuthCd === 'NORMAL') { - master = true; - normal = true; + } else if (joinList) { + my = joinList?.find(prev => { + if (prev.groupId === row?.groupId) { + return prev; } - } else if (my?.groupAuthCd === 'NORMAL') { - //아.. 내 그룹 아니면 권한 다 NORMAL로 임시부여했지.. + }); + } + + if (user.authId === 'SUPER') { + if (row?.groupAuthCd === 'MASTER') { master = true; leader = true; normal = true; + } else if (row?.groupAuthCd === 'LEADER') { + leader = true; + } else if (row?.groupAuthCd === 'NORMAL') { + master = true; + normal = true; } - } else if (user.authId === 'USER') { - //본인 그룹 조회 가능 - const my = joinList?.find(prev => { - if (prev.groupId === row?.groupId) { - return prev; - } - }); + } else if (user.authId === 'ADMIN' || user.authId === 'USER') { if (my?.groupAuthCd === 'MASTER') { if (row?.groupAuthCd === 'LEADER') { leader = true; @@ -244,6 +228,11 @@ export const BasisGroupUsersContainer = props => { master = true; normal = true; } + } else if (my?.groupAuthCd === 'NORMAL' || !my.groupAuthCd) { + //가입그룹에서 NORMAL / 미가입 그룹 + master = true; + leader = true; + normal = true; } } @@ -366,9 +355,6 @@ export const BasisGroupUsersContainer = props => { desc: '해당 사용자를 운영자 권한으로 변경 하시겠습니까?' }); - if (user.authId === 'SUPER' || user.authId === 'ADMIN') { - } - setSaveData({ cstmrGroupSno: cstmrGroupSno, joinYn: 'Y', @@ -403,18 +389,38 @@ export const BasisGroupUsersContainer = props => { desc: '해당 사용자에게 그룹장을 위임 하시겠습니까?' }); - setSaveData([ - { - cstmrGroupSno: row, - joinYn: 'Y', - groupAuthCd: 'MASTER' - }, - { - cstmrGroupSno: my, - joinYn: 'Y', - groupAuthCd: 'NORMAL' - } - ]); + if (user.authId === 'SUPER') { + const master = userList.find(prev => { + if (prev.groupAuthCd === 'MASTER') { + return prev; + } + }); + setSaveData([ + { + cstmrGroupSno: row, + joinYn: 'Y', + groupAuthCd: 'MASTER' + }, + { + cstmrGroupSno: master.cstmrGroupSno, + joinYn: 'Y', + groupAuthCd: 'NORMAL' + } + ]); + } else { + setSaveData([ + { + cstmrGroupSno: row, + joinYn: 'Y', + groupAuthCd: 'MASTER' + }, + { + cstmrGroupSno: my, + joinYn: 'Y', + groupAuthCd: 'NORMAL' + } + ]); + } }; const handlerAuthSave = async () => {