diff --git a/src/components/map/mapbox/dron/DronMarker.js b/src/components/map/mapbox/dron/DronMarker.js index e83ab899..f7e9672e 100644 --- a/src/components/map/mapbox/dron/DronMarker.js +++ b/src/components/map/mapbox/dron/DronMarker.js @@ -15,7 +15,7 @@ import { objectClickAction, objectUnClickAction } from '../../../../modules/control/map/actions/controlMapActions'; -import { JOIN_LIST } from '../../../../modules/basis/group/actions'; +import { getJoinGroupList } from '../../../../modules/basis/group/actions'; export const DronMarker = props => { const dispatch = useDispatch(); @@ -51,7 +51,7 @@ export const DronMarker = props => { // 유저가 속한 그룹 리스트 알아냄 useEffect(() => { dispatch( - JOIN_LIST.request({ + getJoinGroupList.request({ cstmrSno: user?.cstmrSno }) ); diff --git a/src/containers/analysis/history/AnalysisHistoryContainer.js b/src/containers/analysis/history/AnalysisHistoryContainer.js index b670c6d1..bbb7228b 100644 --- a/src/containers/analysis/history/AnalysisHistoryContainer.js +++ b/src/containers/analysis/history/AnalysisHistoryContainer.js @@ -7,7 +7,10 @@ import { AnalysisHistorySearch } from '../../../components/analysis/history/Anal import { CustomMainLayout } from '../../../components/layout/CustomMainLayout'; import * as Actions from '../../../modules/analysis/history'; import FlightPlanGroupGrid from '../../../components/basis/flight/plan/FlightPlanGroupGrid'; -import { JOIN_LIST, GROUP_LIST } from '../../../modules/basis/group/actions'; +import { + getJoinGroupList, + getGroupList +} from '../../../modules/basis/group/actions'; import { Col, Row, @@ -84,10 +87,10 @@ export const AnalysisHistoryContainer = props => { useEffect(() => { if (user?.cstmrSno) { if (user.authId === 'SUPER' || user.authId === 'ADMIN') { - dispatch(GROUP_LIST.request({ cstmrSno: user?.cstmrSno })); + dispatch(getGroupList.request({ cstmrSno: user?.cstmrSno })); } else { dispatch( - JOIN_LIST.request({ + getJoinGroupList.request({ cstmrSno: user?.cstmrSno }) ); diff --git a/src/containers/basis/dron/BasisDronContainer.js b/src/containers/basis/dron/BasisDronContainer.js index 61f97a9f..f3e02425 100644 --- a/src/containers/basis/dron/BasisDronContainer.js +++ b/src/containers/basis/dron/BasisDronContainer.js @@ -162,10 +162,12 @@ export const BasisDronContainer = props => { cstmrSno: user?.cstmrSno }); if (user.authId === 'SUPER' || user.authId === 'ADMIN') { - dispatch(GroupActions.GROUP_LIST.request({ cstmrSno: user?.cstmrSno })); + dispatch( + GroupActions.getGroupList.request({ cstmrSno: user?.cstmrSno }) + ); } else { dispatch( - GroupActions.JOIN_LIST.request({ + GroupActions.getJoinGroupList.request({ cstmrSno: user?.cstmrSno }) ); diff --git a/src/containers/basis/group/BasisGroupApprovalContainer.js b/src/containers/basis/group/BasisGroupApprovalContainer.js index 600eb4fc..3cf67b6c 100644 --- a/src/containers/basis/group/BasisGroupApprovalContainer.js +++ b/src/containers/basis/group/BasisGroupApprovalContainer.js @@ -239,10 +239,10 @@ export const BasisGroupApprovalContainer = props => { aprvYn: '' }); if (user.authId === 'SUPER' || user.authId === 'ADMIN') { - dispatch(Actions.GROUP_LIST.request({ cstmrSno: user?.cstmrSno })); + dispatch(Actions.getGroupList.request({ cstmrSno: user?.cstmrSno })); } else { dispatch( - Actions.JOIN_LIST.request({ + Actions.getJoinGroupList.request({ cstmrSno: user?.cstmrSno, // groupId: selectData?.groupId groupId: aprvSelect?.groupId @@ -263,9 +263,7 @@ export const BasisGroupApprovalContainer = props => { (user.authId === 'USER' && aprvlYn === 'Y' && groupAuthCd === 'LEADER') ) { // dispatch(Actions.SELECT({ groupId: groupId, groupNm: groupNm })); - dispatch( - Actions.GROUP_APRV_SELECT({ groupId: groupId, groupNm: groupNm }) - ); + dispatch(Actions.selectAprvGroup({ groupId: groupId, groupNm: groupNm })); if (user?.cstmrSno) { setParams({ @@ -275,7 +273,7 @@ export const BasisGroupApprovalContainer = props => { }); dispatch( - Actions.APPROVAL_LIST.request({ + Actions.getApprovalList.request({ searchParams: { ...params, cstmrSno: user?.cstmrSno, @@ -298,7 +296,7 @@ export const BasisGroupApprovalContainer = props => { // 상세보기 선택취소 시 const handlerCancel = () => { // dispatch(Actions.SELECT()); - dispatch(Actions.GROUP_APRV_SELECT()); + dispatch(Actions.selectAprvGroup()); setParams({ ...params, @@ -318,14 +316,14 @@ export const BasisGroupApprovalContainer = props => { const handlerSearch = () => { const param = params; param.page = 1; - dispatch(Actions.APPROVAL_LIST.request({ searchParams: param })); + dispatch(Actions.getApprovalList.request({ searchParams: param })); }; // 승인관리 페이지 이동 시 새 목록 요청 const onChangePage = page => { const param = params; param.page = page; - dispatch(Actions.APPROVAL_LIST.request({ searchParams: param })); + dispatch(Actions.getApprovalList.request({ searchParams: param })); }; // 사용자 승인처리 @@ -347,7 +345,7 @@ export const BasisGroupApprovalContainer = props => { // 사용자 승인처리 요청 const handlerAprvSave = () => { - dispatch(Actions.APPROVAL_UPDATE.request(saveData)); + dispatch(Actions.updateApproval.request(saveData)); }; // 사용자 승인취소 diff --git a/src/containers/basis/group/BasisGroupContainer.js b/src/containers/basis/group/BasisGroupContainer.js index 0f282ffe..07033121 100644 --- a/src/containers/basis/group/BasisGroupContainer.js +++ b/src/containers/basis/group/BasisGroupContainer.js @@ -158,8 +158,8 @@ export const BasisGroupContainer = props => { // 그룹목록, 참여그룹목록 요청 const handlerSearch = () => { if (user?.cstmrSno) { - dispatch(Actions.MY_LIST.request({ cstmrSno: user?.cstmrSno })); - dispatch(Actions.JOIN_LIST.request({ cstmrSno: user?.cstmrSno })); + dispatch(Actions.getMyGroupList.request({ cstmrSno: user?.cstmrSno })); + dispatch(Actions.getJoinGroupList.request({ cstmrSno: user?.cstmrSno })); } }; @@ -184,7 +184,7 @@ export const BasisGroupContainer = props => { // 그룹 탈퇴 확인 const handlerWithDrawalConfirm = () => { - dispatch(Actions.GROUP_JOIN_UPDATE.request(saveParams)); + dispatch(Actions.leaveGroup.request(saveParams)); }; // 그룹 가입 페이지로 이동 diff --git a/src/containers/basis/group/BasisGroupDetailContainer.js b/src/containers/basis/group/BasisGroupDetailContainer.js index 13a40bd0..9fc4c6b1 100644 --- a/src/containers/basis/group/BasisGroupDetailContainer.js +++ b/src/containers/basis/group/BasisGroupDetailContainer.js @@ -63,12 +63,12 @@ export const BasisGroupDetailContainer = () => { // 그룹 랜덤 ID 생성 요청 const handlerCreateId = () => { - dispatch(Actions.GROUP_CREATEID.request()); + dispatch(Actions.createGroupId.request()); }; // 그룹 상세정보 요청 const handlerSearch = () => { - dispatch(Actions.GROUP_DETAIL.request(id)); + dispatch(Actions.getGroupDetail.request(id)); }; // 그룹 생성 @@ -83,8 +83,8 @@ export const BasisGroupDetailContainer = () => { type: groupData.type, updateDt: '' }; - // dispatch(Actions.GROUP_CREATE.request(groupData)); - dispatch(Actions.GROUP_CREATE.request(saveData)); + // dispatch(Actions.createGroup.request(groupData)); + dispatch(Actions.createGroup.request(saveData)); }; // 그룹 수정 @@ -98,13 +98,13 @@ export const BasisGroupDetailContainer = () => { type: groupData.type, updateDt: groupData.updateDt }; - // dispatch(Actions.GROUP_UPDATE.request(groupData)); - dispatch(Actions.GROUP_UPDATE.request(saveData)); + // dispatch(Actions.updateGroup.request(groupData)); + dispatch(Actions.updateGroup.request(saveData)); }; // 그룹 삭제 const handlerDelete = () => { - dispatch(Actions.GROUP_DELETE.request(groupData.groupId)); + dispatch(Actions.deleteGroup.request(groupData.groupId)); }; // 삭제 버튼 클릭시 모달 표출 diff --git a/src/containers/basis/group/BasisGroupDetailJoinContainer.js b/src/containers/basis/group/BasisGroupDetailJoinContainer.js index 3c7e3b24..21ae9691 100644 --- a/src/containers/basis/group/BasisGroupDetailJoinContainer.js +++ b/src/containers/basis/group/BasisGroupDetailJoinContainer.js @@ -132,7 +132,7 @@ export const BasisGroupDetailJoinContainer = props => { useEffect(() => { if (params.cstmrSno && user?.cstmrSno) { dispatch( - Actions.GROUP_JOINLIST.request({ + Actions.getAvailGroupList.request({ searchParams: { cstmrSno: user?.cstmrSno } }) ); @@ -148,7 +148,7 @@ export const BasisGroupDetailJoinContainer = props => { // 그룹 검색 핸들러 const handlerSearch = () => { - dispatch(Actions.GROUP_JOINLIST.request({ searchParams: params })); + dispatch(Actions.getAvailGroupList.request({ searchParams: params })); }; // 가입 버튼 클릭시 모달 표출 @@ -168,7 +168,7 @@ export const BasisGroupDetailJoinContainer = props => { // 그룹 가입 const handlerConfirm = () => { - dispatch(Actions.GROUP_JOIN.request(joinData)); + dispatch(Actions.joinGroup.request(joinData)); }; // 검색조건 입력 diff --git a/src/containers/basis/group/BasisGroupUsersContainer.js b/src/containers/basis/group/BasisGroupUsersContainer.js index d428a19b..ccf9fb8a 100644 --- a/src/containers/basis/group/BasisGroupUsersContainer.js +++ b/src/containers/basis/group/BasisGroupUsersContainer.js @@ -310,10 +310,10 @@ export const BasisGroupUsersContainer = props => { cstmrSno: user?.cstmrSno }); if (user.authId === 'SUPER' || user.authId === 'ADMIN') { - dispatch(Actions.GROUP_LIST.request({ cstmrSno: user?.cstmrSno })); + dispatch(Actions.getGroupList.request({ cstmrSno: user?.cstmrSno })); } else { dispatch( - Actions.JOIN_LIST.request({ + Actions.getJoinGroupList.request({ cstmrSno: user.cstmrSno, // groupId: selectData?.groupId groupId: userSelect?.groupId @@ -329,7 +329,7 @@ export const BasisGroupUsersContainer = props => { const handlerSearch = () => { if (params.cstmrSno && user?.cstmrSno) { dispatch( - Actions.USER_LIST.request({ + Actions.getUserList.request({ searchParams: params, cstmrSno: user?.cstmrSno }) @@ -344,14 +344,14 @@ export const BasisGroupUsersContainer = props => { */ const handlerDetail = (groupId, groupNm) => { //권한 상관없이 조회 가능 - dispatch(Actions.GROUP_USER_SELECT({ groupId: groupId, groupNm, groupNm })); + dispatch(Actions.selectUserGroup({ groupId: groupId, groupNm, groupNm })); const param = params; param.groupId = groupId; param.memberNm = ''; param.page = 1; dispatch( - Actions.USER_LIST.request({ + Actions.getUserList.request({ searchParams: param }) ); @@ -362,7 +362,7 @@ export const BasisGroupUsersContainer = props => { */ const handlerCancel = () => { // dispatch(Actions.SELECT()); - dispatch(Actions.GROUP_USER_SELECT()); + dispatch(Actions.selectUserGroup()); setParams({ ...params, groupId: '', @@ -463,9 +463,9 @@ export const BasisGroupUsersContainer = props => { */ const handlerAuthSave = async () => { if (saveData.length === 2) { - dispatch(Actions.USER_DELEGATE.request(saveData)); + dispatch(Actions.delegateUser.request(saveData)); } else { - dispatch(Actions.USER_UPDATE.request(saveData)); + dispatch(Actions.updateUserAccess.request(saveData)); } }; @@ -496,7 +496,7 @@ export const BasisGroupUsersContainer = props => { const handlerPageChange = page => { const param = params; param.page = page; - dispatch(Actions.USER_LIST.request({ searchParams: param })); + dispatch(Actions.getUserList.request({ searchParams: param })); }; return ( diff --git a/src/containers/cstmrService/inquiry/UserInquiryContainer.js b/src/containers/cstmrService/inquiry/UserInquiryContainer.js index f3966eea..543282cd 100644 --- a/src/containers/cstmrService/inquiry/UserInquiryContainer.js +++ b/src/containers/cstmrService/inquiry/UserInquiryContainer.js @@ -52,7 +52,7 @@ export default function UserInquiryContainer({ memberName }) { useEffect(() => { dispatch( - Actions.USER_LIST.request({ category: '', searchType: '', word: '' }) + Actions.getUserList.request({ category: '', searchType: '', word: '' }) ); }, []); @@ -268,7 +268,7 @@ export default function UserInquiryContainer({ memberName }) { dispatch(Actions.USER_INQUIRY.request(form)); } else if (type === 'edit') { dispatch( - Actions.USER_UPDATE.request({ + Actions.updateUserAccess.request({ qnaSno, category, contact, diff --git a/src/modules/_sample/actions/index.ts b/src/modules/_sample/actions/index.ts index a9e764c2..39bffb44 100644 --- a/src/modules/_sample/actions/index.ts +++ b/src/modules/_sample/actions/index.ts @@ -19,6 +19,7 @@ import { createAsyncAction, ActionType, createAction } from 'typesafe-actions'; * [Action 함수] * 카멜케이스를 사용하여 작성한다. * 작성한 Action 타입을 참고하여 작성한다. (Ex. GET_DRONE_LIST_REQUEST -> getDroneList) + * 비동기 Action 함수는.. dispatch.. 빼줄까? 너무길어요.. * 비동기 요청 액션이 아닐 땐 createAction을 사용한다. */ @@ -42,7 +43,7 @@ export const getDroneList = createAsyncAction( GET_DRONE_LIST_FAILURE )(); -export const dispatchMapType = createAction(DISPATCH_MAPTYPE)(); +export const mapType = createAction(DISPATCH_MAPTYPE)(); const actions = { getDroneList diff --git a/src/modules/basis/drone/sagas/index.ts b/src/modules/basis/drone/sagas/index.ts index 3f834878..0f3b2da4 100644 --- a/src/modules/basis/drone/sagas/index.ts +++ b/src/modules/basis/drone/sagas/index.ts @@ -143,7 +143,7 @@ function* createDroneSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_CREATE.failure(error)); + // yield put(Actions.createGroup.failure(error)); } } @@ -200,7 +200,7 @@ function* createIdntfSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_CREATE.failure(error)); + // yield put(Actions.createGroup.failure(error)); } } @@ -246,7 +246,7 @@ function* updateDroneSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_UPDATE.failure(error)); + // yield put(Actions.updateGroup.failure(error)); } } @@ -280,7 +280,7 @@ function* deleteDroneSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_DELETE.failure(error)); + // yield put(Actions.deleteGroup.failure(error)); } } @@ -315,7 +315,7 @@ function* deleteIdntfSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_DELETE.failure(error)); + // yield put(Actions.deleteGroup.failure(error)); } } diff --git a/src/modules/basis/group/actions/index.ts b/src/modules/basis/group/actions/index.ts index 1695a560..98035e8a 100644 --- a/src/modules/basis/group/actions/index.ts +++ b/src/modules/basis/group/actions/index.ts @@ -1,7 +1,7 @@ import { AxiosError } from 'axios'; import { createAsyncAction, ActionType, createAction } from 'typesafe-actions'; import { - GroupData, + Group, JoinGroupData, AprvGroupData, UserGroupData, @@ -10,227 +10,221 @@ import { SelectData } from '../models'; -//# 나의 그룹 목록 조회 -const MY_LIST_REQUEST = 'basis/group/MY_LIST_REQUEST'; -const MY_LIST_SUCCESS = 'basis/group/MY_LIST_SUCCESS'; -const MY_LIST_FAILURE = 'basis/group/MY_LIST_FAILURE'; - -//# 참여 그룹 목록 조회 -const JOIN_LIST_REQUEST = 'basis/group/JOIN_LIST_REQUEST'; -const JOIN_LIST_SUCCESS = 'basis/group/JOIN_LIST_SUCCESS'; -const JOIN_LIST_FAILURE = 'basis/group/JOIN_LIST_FAILURE'; - -//# 그룹 상세 조회 -const GROUP_DETAIL_REQUEST = 'basis/group/GROUP_DETAIL_REQUEST'; -const GROUP_DETAIL_SUCCESS = 'basis/group/GROUP_DETAIL_SUCCESS'; -const GROUP_DETAIL_FAILURE = 'basis/group/GROUP_DETAIL_FAILURE'; - -//## 그룹 생성 -const GROUP_CREATE_REQUEST = 'basis/group/GROUP_CREATE_REQUEST'; -const GROUP_CREATE_SUCCESS = 'basis/group/GROUP_CREATE_SUCCESS'; -const GROUP_CREATE_FAILURE = 'basis/group/GROUP_CREATE_FAILURE'; - -//## 그룹 수정 -const GROUP_UPDATE_REQUEST = 'basis/group/GROUP_UPDATE_REQUEST'; -const GROUP_UPDATE_SUCCESS = 'basis/group/GROUP_UPDATE_SUCCESS'; -const GROUP_UPDATE_FAILURE = 'basis/group/GROUP_UPDATE_FAILURE'; - -//## 그룹 삭제 -const GROUP_DELETE_REQUEST = 'basis/group/GROUP_DELETE_REQUEST'; -const GROUP_DELETE_SUCCESS = 'basis/group/GROUP_DELETE_SUCCESS'; -const GROUP_DELETE_FAILURE = 'basis/group/GROUP_DELETE_FAILURE'; - -//## 그룹 전체 조회 -const GROUP_LIST_REQUEST = 'basis/group/GROUP_LIST_REQUEST'; -const GROUP_LIST_SUCCESS = 'basis/group/GROUP_LIST_SUCCESS'; -const GROUP_LIST_FAILURE = 'basis/group/GROUP_LIST_FAILURE'; - -//# 그룹코드 발급 -const GROUP_CREATEID_REQUEST = 'basis/group/GROUP_CREATEID_REQUEST'; -const GROUP_CREATEID_SUCCESS = 'basis/group/GROUP_CREATEID_SUCCESS'; -const GROUP_CREATEID_FAILURE = 'basis/group/GROUP_CREATEID_FAILURE'; - -//# 참여가능 그룹 목록 조회 -const GROUP_JOINLIST_REQUEST = 'basis/group/GROUP_JOINLIST_REQUEST'; -const GROUP_JOINLIST_SUCCESS = 'basis/group/GROUP_JOINLIST_SUCCESS'; -const GROUP_JOINLIST_FAILURE = 'basis/group/GROUP_JOINLIST_FAILURE'; - -//# 나의 그룹 목록 조회 -const GROUP_MYLIST_REQUEST = 'basis/group/GROUP_MYLIST_REQUEST'; -const GROUP_MYLIST_SUCCESS = 'basis/group/GROUP_MYLIST_SUCCESS'; -const GROUP_MYLIST_FAILURE = 'basis/group/GROUP_MYLIST_FAILURE'; - -//# 그룹 가입처리 -const GROUP_JOIN_REQUEST = 'basis/group/GROUP_JOIN_REQUEST'; -const GROUP_JOIN_SUCCESS = 'basis/group/GROUP_JOIN_SUCCESS'; -const GROUP_JOIN_FAILURE = 'basis/group/GROUP_JOIN_FAILURE'; - -//# 그룹 가입 탈퇴 / 취소 처리 -const GROUP_JOIN_UPDATE_REQUEST = 'basis/group/GROUP_JOIN_UPDATE_REQUEST'; -const GROUP_JOIN_UPDATE_SUCCESS = 'basis/group/GROUP_JOIN_UPDATE_SUCCESS'; -const GROUP_JOIN_UPDATE_FAILURE = 'basis/group/GROUP_JOIN_UPDATE_FAILURE'; - -//# 승인요청 조회 -const APPROVAL_LIST_REQUEST = 'basis/group/APPROVAL_LIST_REQUEST'; -const APPROVAL_LIST_SUCCESS = 'basis/group/APPROVAL_LIST_SUCCESS'; -const APPROVAL_LIST_FAILURE = 'basis/group/APPROVAL_LIST_FAILURE'; - -//# 승인처리 / 취소 처리 -const APPROVAL_UPDATE_REQUEST = 'basis/group/APPROVAL_UPDATE_REQUEST'; -const APPROVAL_UPDATE_SUCCESS = 'basis/group/APPROVAL_UPDATE_SUCCESS'; -const APPROVAL_UPDATE_FAILURE = 'basis/group/APPROVAL_UPDATE_FAILURE'; - -//# 그룹사용자 조회 -const USER_LIST_REQUEST = 'basis/group/USER_LIST_REQUEST'; -const USER_LIST_SUCCESS = 'basis/group/USER_LIST_SUCCESS'; -const USER_LIST_FAILURE = 'basis/group/USER_LIST_FAILURE'; - -//# 사용자 권한 수정 / 블럭 처리 -const USER_UPDATE_REQUEST = 'basis/group/USER_UPDATE_REQUEST'; -const USER_UPDATE_SUCCESS = 'basis/group/USER_UPDATE_SUCCESS'; -const USER_UPDATE_FAILURE = 'basis/group/USER_UPDATE_FAILURE'; - -//# 그룹장 권한 위임 -const USER_DELEGATE_REQUEST = 'basis/group/USER_DELEGATE_REQUEST'; -const USER_DELEGATE_SUCCESS = 'basis/group/USER_DELEGATE_SUCCESS'; -const USER_DELEGATE_FAILURE = 'basis/group/USER_DELEGATE_FAILURE'; +// 나와 관련된 그룹 목록 조회 +const GET_GROUP_LIST_REQUEST = 'basis/group/GET_GROUP_LIST_REQUEST'; +const GET_GROUP_LIST_SUCCESS = 'basis/group/GET_GROUP_LIST_SUCCESS'; +const GET_GROUP_LIST_FAILURE = 'basis/group/GET_GROUP_LIST_FAILURE'; + +// 가입 가능한 그룹 목록 조회 +const GET_AVAIL_GROUP_LIST_REQUEST = 'basis/group/GET_AVAIL_GROUP_LIST_REQUEST'; +const GET_AVAIL_GROUP_LIST_SUCCESS = 'basis/group/GET_AVAIL_GROUP_LIST_SUCCESS'; +const GET_AVAIL_GROUP_LIST_FAILURE = 'basis/group/GET_AVAIL_GROUP_LIST_FAILURE'; + +// 생성한 그룹 목록 조회 +const GET_MY_GROUP_LIST_REQUEST = 'basis/group/GET_MY_GROUP_LIST_REQUEST'; +const GET_MY_GROUP_LIST_SUCCESS = 'basis/group/GET_MY_GROUP_LIST_SUCCESS'; +const GET_MY_GROUP_LIST_FAILURE = 'basis/group/GET_MY_GROUP_LIST_FAILURE'; + +// 가입한 그룹 목록 조회 +const GET_JOIN_GROUP_LIST_REQUEST = 'basis/group/GET_JOIN_GROUP_LIST_REQUEST'; +const GET_JOIN_GROUP_LIST_SUCCESS = 'basis/group/GET_JOIN_GROUP_LIST_SUCCESS'; +const GET_JOIN_GROUP_LIST_FAILURE = 'basis/group/GET_JOIN_GROUP_LIST_FAILURE'; + +// 그룹 상세 조회 +const GET_GROUP_DETAIL_REQUEST = 'basis/group/GET_GROUP_DETAIL_REQUEST'; +const GET_GROUP_DETAIL_SUCCESS = 'basis/group/GET_GROUP_DETAIL_SUCCESS'; +const GET_GROUP_DETAIL_FAILURE = 'basis/group/GET_GROUP_DETAIL_FAILURE'; + +// 그룹 생성 +const CREATE_GROUP_REQUEST = 'basis/group/CREATE_GROUP_REQUEST'; +const CREATE_GROUP_SUCCESS = 'basis/group/CREATE_GROUP_SUCCESS'; +const CREATE_GROUP_FAILURE = 'basis/group/CREATE_GROUP_FAILURE'; + +// 그룹 수정 +const UPDATE_GROUP_REQUEST = 'basis/group/UPDATE_GROUP_REQUEST'; +const UPDATE_GROUP_SUCCESS = 'basis/group/UPDATE_GROUP_SUCCESS'; +const UPDATE_GROUP_FAILURE = 'basis/group/UPDATE_GROUP_FAILURE'; + +// 그룹 삭제 +const DELETE_GROUP_REQUEST = 'basis/group/DELETE_GROUP_REQUEST'; +const DELETE_GROUP_SUCCESS = 'basis/group/DELETE_GROUP_SUCCESS'; +const DELETE_GROUP_FAILURE = 'basis/group/DELETE_GROUP_FAILURE'; + +// 그룹코드 발급 +const CREATE_GROUPID_REQUEST = 'basis/group/CREATE_GROUPID_REQUEST'; +const CREATE_GROUPID_SUCCESS = 'basis/group/CREATE_GROUPID_SUCCESS'; +const CREATE_GROUPID_FAILURE = 'basis/group/CREATE_GROUPID_FAILURE'; + +// 그룹 가입 +const JOIN_GROUP_REQUEST = 'basis/group/JOIN_GROUP_REQUEST'; +const JOIN_GROUP_SUCCESS = 'basis/group/JOIN_GROUP_SUCCESS'; +const JOIN_GROUP_FAILURE = 'basis/group/JOIN_GROUP_FAILURE'; + +// 그룹 가입 탈퇴 / 취소 +const LEAVE_GROUP_REQUEST = 'basis/group/LEAVE_GROUP_REQUEST'; +const LEAVE_GROUP_SUCCESS = 'basis/group/LEAVE_GROUP_SUCCESS'; +const LEAVE_GROUP_FAILURE = 'basis/group/LEAVE_GROUP_FAILURE'; + +// 승인요청 조회 +const GET_APPROVAL_LIST_REQUEST = 'basis/group/GET_APPROVAL_LIST_REQUEST'; +const GET_APPROVAL_LIST_SUCCESS = 'basis/group/GET_APPROVAL_LIST_SUCCESS'; +const GET_APPROVAL_LIST_FAILURE = 'basis/group/GET_APPROVAL_LIST_FAILURE'; + +// 승인처리 / 취소 처리 +const UPDATE_APPROVAL_REQUEST = 'basis/group/UPDATE_APPROVAL_REQUEST'; +const UPDATE_APPROVAL_SUCCESS = 'basis/group/UPDATE_APPROVAL_SUCCESS'; +const UPDATE_APPROVAL_FAILURE = 'basis/group/UPDATE_APPROVAL_FAILURE'; + +// 그룹사용자 조회 +const GET_USER_LIST_REQUEST = 'basis/group/GET_USER_LIST_REQUEST'; +const GET_USER_LIST_SUCCESS = 'basis/group/GET_USER_LIST_SUCCESS'; +const GET_USER_LIST_FAILURE = 'basis/group/GET_USER_LIST_FAILURE'; + +// 사용자 권한 수정 / 블럭 처리 +const UPDATE_USER_ACCESS_REQUEST = 'basis/group/UPDATE_USER_ACCESS_REQUEST'; +const UPDATE_USER_ACCESS_SUCCESS = 'basis/group/UPDATE_USER_ACCESS_SUCCESS'; +const UPDATE_USER_ACCESS_FAILURE = 'basis/group/UPDATE_USER_ACCESS_FAILURE'; + +// 그룹장 권한 위임 +const DELEGATE_USER_REQUEST = 'basis/group/DELEGATE_USER_REQUEST'; +const DELEGATE_USER_SUCCESS = 'basis/group/DELEGATE_USER_SUCCESS'; +const DELEGATE_USER_FAILURE = 'basis/group/DELEGATE_USER_FAILURE'; // 그룹 선택 -const APRV_GROUP_SELECT = 'basis/group/APRV_GROUP_SELECT'; -const USER_GROUP_SELECT = 'basis/group/USER_GROUP_SELECT'; - -export const MY_LIST = createAsyncAction( - MY_LIST_REQUEST, - MY_LIST_SUCCESS, - MY_LIST_FAILURE -)(); - -export const JOIN_LIST = createAsyncAction( - JOIN_LIST_REQUEST, - JOIN_LIST_SUCCESS, - JOIN_LIST_FAILURE -)(); +const DISPATCH_SELECT_APRV_GROUP = 'basis/group/DISPATCH_SELECT_APRV_GROUP'; +const DISPATCH_SELECT_USER_GROUP = 'basis/group/DISPATCH_SELECT_USER_GROUP'; + +export const getGroupList = createAsyncAction( + GET_GROUP_LIST_REQUEST, + GET_GROUP_LIST_SUCCESS, + GET_GROUP_LIST_FAILURE + // )(); +)(); + +export const getAvailGroupList = createAsyncAction( + GET_AVAIL_GROUP_LIST_REQUEST, + GET_AVAIL_GROUP_LIST_SUCCESS, + GET_AVAIL_GROUP_LIST_FAILURE +)(); + +export const getMyGroupList = createAsyncAction( + GET_MY_GROUP_LIST_REQUEST, + GET_MY_GROUP_LIST_SUCCESS, + GET_MY_GROUP_LIST_FAILURE +)(); -export const GROUP_MYLIST = createAsyncAction( - GROUP_MYLIST_REQUEST, - GROUP_MYLIST_SUCCESS, - GROUP_MYLIST_FAILURE +export const getJoinGroupList = createAsyncAction( + GET_JOIN_GROUP_LIST_REQUEST, + GET_JOIN_GROUP_LIST_SUCCESS, + GET_JOIN_GROUP_LIST_FAILURE )(); -export const GROUP_DETAIL = createAsyncAction( - GROUP_DETAIL_REQUEST, - GROUP_DETAIL_SUCCESS, - GROUP_DETAIL_FAILURE -)(); - -export const GROUP_CREATE = createAsyncAction( - GROUP_CREATE_REQUEST, - GROUP_CREATE_SUCCESS, - GROUP_CREATE_FAILURE -)(); -export const GROUP_UPDATE = createAsyncAction( - GROUP_UPDATE_REQUEST, - GROUP_UPDATE_SUCCESS, - GROUP_UPDATE_FAILURE -)(); -export const GROUP_DELETE = createAsyncAction( - GROUP_DELETE_REQUEST, - GROUP_DELETE_SUCCESS, - GROUP_DELETE_FAILURE +export const getGroupDetail = createAsyncAction( + GET_GROUP_DETAIL_REQUEST, + GET_GROUP_DETAIL_SUCCESS, + GET_GROUP_DETAIL_FAILURE +)(); + +export const createGroup = createAsyncAction( + CREATE_GROUP_REQUEST, + CREATE_GROUP_SUCCESS, + CREATE_GROUP_FAILURE +)(); + +export const updateGroup = createAsyncAction( + UPDATE_GROUP_REQUEST, + UPDATE_GROUP_SUCCESS, + UPDATE_GROUP_FAILURE +)(); + +export const deleteGroup = createAsyncAction( + DELETE_GROUP_REQUEST, + DELETE_GROUP_SUCCESS, + DELETE_GROUP_FAILURE )(); -export const GROUP_LIST = createAsyncAction( - GROUP_LIST_REQUEST, - GROUP_LIST_SUCCESS, - GROUP_LIST_FAILURE - // )(); -)(); - -export const GROUP_CREATEID = createAsyncAction( - GROUP_CREATEID_REQUEST, - GROUP_CREATEID_SUCCESS, - GROUP_CREATEID_FAILURE +export const createGroupId = createAsyncAction( + CREATE_GROUPID_REQUEST, + CREATE_GROUPID_SUCCESS, + CREATE_GROUPID_FAILURE )(); -export const GROUP_JOINLIST = createAsyncAction( - GROUP_JOINLIST_REQUEST, - GROUP_JOINLIST_SUCCESS, - GROUP_JOINLIST_FAILURE -)(); - -export const GROUP_JOIN = createAsyncAction( - GROUP_JOIN_REQUEST, - GROUP_JOIN_SUCCESS, - GROUP_JOIN_FAILURE +export const joinGroup = createAsyncAction( + JOIN_GROUP_REQUEST, + JOIN_GROUP_SUCCESS, + JOIN_GROUP_FAILURE )(); -export const GROUP_JOIN_UPDATE = createAsyncAction( - GROUP_JOIN_UPDATE_REQUEST, - GROUP_JOIN_UPDATE_SUCCESS, - GROUP_JOIN_UPDATE_FAILURE +export const leaveGroup = createAsyncAction( + LEAVE_GROUP_REQUEST, + LEAVE_GROUP_SUCCESS, + LEAVE_GROUP_FAILURE )(); -export const APPROVAL_LIST = createAsyncAction( - APPROVAL_LIST_REQUEST, - APPROVAL_LIST_SUCCESS, - APPROVAL_LIST_FAILURE +export const getApprovalList = createAsyncAction( + GET_APPROVAL_LIST_REQUEST, + GET_APPROVAL_LIST_SUCCESS, + GET_APPROVAL_LIST_FAILURE )< GroupState, { data: AprvGroupData[]; count: number; total: number }, AxiosError >(); -export const APPROVAL_UPDATE = createAsyncAction( - APPROVAL_UPDATE_REQUEST, - APPROVAL_UPDATE_SUCCESS, - APPROVAL_UPDATE_FAILURE +export const updateApproval = createAsyncAction( + UPDATE_APPROVAL_REQUEST, + UPDATE_APPROVAL_SUCCESS, + UPDATE_APPROVAL_FAILURE )(); -export const USER_LIST = createAsyncAction( - USER_LIST_REQUEST, - USER_LIST_SUCCESS, - USER_LIST_FAILURE +export const getUserList = createAsyncAction( + GET_USER_LIST_REQUEST, + GET_USER_LIST_SUCCESS, + GET_USER_LIST_FAILURE )< GroupState, { data: UserGroupData[]; count: number; total: number }, AxiosError >(); -export const USER_UPDATE = createAsyncAction( - USER_UPDATE_REQUEST, - USER_UPDATE_SUCCESS, - USER_UPDATE_FAILURE +export const updateUserAccess = createAsyncAction( + UPDATE_USER_ACCESS_REQUEST, + UPDATE_USER_ACCESS_SUCCESS, + UPDATE_USER_ACCESS_FAILURE )(); -export const USER_DELEGATE = createAsyncAction( - USER_DELEGATE_REQUEST, - USER_DELEGATE_SUCCESS, - USER_DELEGATE_FAILURE +export const delegateUser = createAsyncAction( + DELEGATE_USER_REQUEST, + DELEGATE_USER_SUCCESS, + DELEGATE_USER_FAILURE )(); -export const GROUP_APRV_SELECT = createAction(APRV_GROUP_SELECT)(); -export const GROUP_USER_SELECT = createAction(USER_GROUP_SELECT)(); +export const selectAprvGroup = createAction( + DISPATCH_SELECT_APRV_GROUP +)(); +export const selectUserGroup = createAction( + DISPATCH_SELECT_USER_GROUP +)(); const actions = { - MY_LIST, - JOIN_LIST, - GROUP_DETAIL, - GROUP_CREATE, - GROUP_UPDATE, - GROUP_DELETE, - GROUP_LIST, - GROUP_CREATEID, - GROUP_JOINLIST, - GROUP_JOIN, - GROUP_JOIN_UPDATE, - APPROVAL_LIST, - APPROVAL_UPDATE, - USER_LIST, - USER_UPDATE, - USER_DELEGATE, - GROUP_MYLIST, - GROUP_APRV_SELECT, - GROUP_USER_SELECT + getMyGroupList, + getJoinGroupList, + getGroupDetail, + createGroup, + updateGroup, + deleteGroup, + getGroupList, + createGroupId, + getAvailGroupList, + joinGroup, + leaveGroup, + getApprovalList, + updateApproval, + getUserList, + updateUserAccess, + delegateUser, + selectAprvGroup, + selectUserGroup }; export type GroupAction = ActionType; diff --git a/src/modules/basis/group/apis/index.ts b/src/modules/basis/group/apis/index.ts index 9cc6cf29..61976c90 100644 --- a/src/modules/basis/group/apis/index.ts +++ b/src/modules/basis/group/apis/index.ts @@ -3,48 +3,56 @@ import axios from '../../../utils/customAxiosUtil'; import qs from 'qs'; import { AprvGroupData, - GroupData, + Group, JoinGroupData, UserGroupData, UserGroupState } from '../models'; export const groupAPI = { - // 내가 생성한 그룹 조회 - listMyGroup: async (data: string) => { + // 나와 관련된 그룹 조회(생성 + 참여) + // super, admin은 모든 그룹 조회 + getGroupList: async (data: string) => { + const id = qs.stringify(data, { + addQueryPrefix: true, + arrayFormat: 'repeat' + }); + return await axios.get(`api/bas/group/grouplist${id}`); + }, + // 가입 가능한 그룹 목록 조회 + getAvailGroupList: async (data: string) => { const queryString = qs.stringify(data, { addQueryPrefix: true, arrayFormat: 'repeat' }); - return await axios.get(`api/bas/group/mylist${queryString}`); + return await axios.get(`api/bas/group/join/list${queryString}`); }, - // 내가 참여한 그룹 조회 - listMyGroupJoin: async (data: string) => { + // 생성한 그룹 목록 조회 + getMyGroupList: async (data: string) => { const queryString = qs.stringify(data, { addQueryPrefix: true, arrayFormat: 'repeat' }); - return await axios.get(`api/bas/group/joinlist${queryString}`); + return await axios.get(`api/bas/group/mylist${queryString}`); }, - // 나와 관련된 모든 그룹 조회(생성 + 참여) - // super, admin은 모든 그룹 조회 - grouplist: async (data: string) => { - const id = qs.stringify(data, { + // 가입한 그룹 목록 조회 + getJoinGroupList: async (data: string) => { + const queryString = qs.stringify(data, { addQueryPrefix: true, arrayFormat: 'repeat' }); - return await axios.get(`api/bas/group/grouplist${id}`); + return await axios.get(`api/bas/group/joinlist${queryString}`); }, // 그룹 상세 조회 - detailGroup: async (id: string) => { + getGroupDetail: async (id: string) => { return await axios.get(`api/bas/group/detail/${id}`); }, // 그룹 생성 - createGroup: async (data: GroupData) => { + createGroup: async (data: Group) => { return await axios.post('api/bas/group/create', data); }, // 그룹 수정 - updateGroup: async (data: GroupData) => { + updateGroup: async (data: Group) => { return await axios.put('api/bas/group/update', data); }, // 그룹 삭제 @@ -52,27 +60,20 @@ export const groupAPI = { return await axios.delete(`api/bas/group/delete/${id}`); }, // 그룹 코드 생성 - createid: async () => { + createGroupId: async () => { return await axios.get('api/bas/group/createid'); }, - // 내가 가입할 그룹 목록 조회 - listGroupJoin: async (data: string) => { - const queryString = qs.stringify(data, { - addQueryPrefix: true, - arrayFormat: 'repeat' - }); - return await axios.get(`api/bas/group/join/list${queryString}`); - }, + // 그룹 가입 요청 - createJoinGroup: async (data: JoinGroupData) => { + joinGroup: async (data: JoinGroupData) => { return await axios.post('api/bas/group/join/create', data); }, // 가입한 그룹 상태값 변경 - updateJoinGroup: async (data: JoinGroupData) => { + leaveGroup: async (data: JoinGroupData) => { return await axios.put('api/bas/group/join/update', data); }, // 승인관리 목록 - listGroupAprv: async (data: string, page: number) => { + getApprovalList: async (data: string, page: number) => { const queryString = qs.stringify(data, { addQueryPrefix: true, arrayFormat: 'repeat' @@ -80,11 +81,11 @@ export const groupAPI = { return await axios.get(`api/bas/group/aprv/list${queryString}`); }, // 승인처리 - updateAprvGroup: async (data: AprvGroupData) => { + updateApproval: async (data: AprvGroupData) => { return await axios.put('api/bas/group/aprv/update', data); }, // 사용자관리 목록 - listGroupUser: async (data: string) => { + getUserList: async (data: string) => { const queryString = qs.stringify(data, { addQueryPrefix: true, arrayFormat: 'repeat' @@ -92,7 +93,7 @@ export const groupAPI = { return await axios.get(`api/bas/group/user/list${queryString}`); }, // 사용자 권한 수정 - updateUser: async (data: UserGroupData) => { + updateUserAccess: async (data: UserGroupData) => { return await axios.put('api/bas/group/user/update', data); }, // master 권한 위임 diff --git a/src/modules/basis/group/models/index.ts b/src/modules/basis/group/models/index.ts index a977a3f3..edda7e94 100644 --- a/src/modules/basis/group/models/index.ts +++ b/src/modules/basis/group/models/index.ts @@ -1,10 +1,40 @@ import { ErrorModel } from '../../../models/ComnModel'; +export const initialState: GroupState = { + groupList: undefined, + groupListCount: 0, + + myList: undefined, + myListCount: 0, + + joinList: undefined, + joinListCount: 0, + + aprvList: undefined, + aprvCount: 0, + aprvSelect: undefined, + + userList: undefined, + userCount: 0, + userSelect: undefined, + + groupId: '', + newGroupId: '', + + groupDetail: undefined, + + searchParams: '', + count: 0, + total: 0, + page: 1, + error: undefined +}; + export interface GroupState { - groupList: GroupData[] | undefined; + groupList: Group[] | undefined; groupListCount: number | 0; - myList: GroupData[] | undefined; + myList: Group[] | undefined; myListCount: number | 0; joinList: JoinGroupData[] | undefined; @@ -21,7 +51,7 @@ export interface GroupState { groupId: string | ''; newGroupId: String | ''; - groupDetail: GroupData | undefined; + groupDetail: Group | undefined; searchParams: string | ''; count: number | 0; @@ -35,7 +65,7 @@ export interface GroupSearchData { groupNm: string; } -export interface GroupData { +export interface Group { groupId: string; groupNm: string; groupTypeCd: string; @@ -61,68 +91,15 @@ export interface JoinGroupData { groupAuthCd: string; } -export interface AprvGroupData { - cstmrGroupSno: number; - groupId: string; - groupNm: string; - groupTypeCd: string; - cstmrSno: number; - aprvlYn: string; - joinYn: string; +export interface AprvGroupData extends JoinGroupData { memberName: string; userId: string; - aprvlDt: Date; - joinDt: Date; - groupAuthCd: string; - aprvlUserId: String; -} - -export interface UserGroupState { - userGroupData: UserGroupData[] | undefined; } - -export interface UserGroupData { - cstmrGroupSno: number; - groupId: string; - groupNm: string; - groupTypeCd: string; - cstmrSno: number; - aprvlYn: string; - joinYn: string; +export interface UserGroupData extends JoinGroupData { memberName: string; userId: string; - aprvlDt: Date; - joinDt: Date; - groupAuthCd: string; - aprvlUserId: String; } -export const initGroup = { - groupList: undefined, - groupListCount: 0, - - myList: undefined, - myListCount: 0, - - joinList: undefined, - joinListCount: 0, - - aprvList: undefined, - aprvCount: 0, - aprvSelect: undefined, - - userList: undefined, - userCount: 0, - userSelect: undefined, - - groupId: '', - newGroupId: '', - - groupDetail: undefined, - - searchParams: '', - count: 0, - total: 0, - page: 1, - error: undefined -}; +export interface UserGroupState { + userGroupData: UserGroupData[] | undefined; +} diff --git a/src/modules/basis/group/reducers/index.ts b/src/modules/basis/group/reducers/index.ts index e1d6a931..5a69deb2 100644 --- a/src/modules/basis/group/reducers/index.ts +++ b/src/modules/basis/group/reducers/index.ts @@ -2,19 +2,19 @@ import { createReducer } from 'typesafe-actions'; import produce from 'immer'; import * as Actions from '../actions'; -import { GroupState, initGroup } from '../models'; +import { GroupState, initialState } from '../models'; export const groupReducer = createReducer( - initGroup + initialState ) - .handleAction(Actions.MY_LIST.success, (state, action) => + .handleAction(Actions.getMyGroupList.success, (state, action) => produce(state, draft => { const { data, count } = action.payload; draft.myList = data; draft.myListCount = count; }) ) - .handleAction(Actions.JOIN_LIST.success, (state, action) => + .handleAction(Actions.getJoinGroupList.success, (state, action) => produce(state, draft => { const { data } = action.payload; @@ -27,43 +27,34 @@ export const groupReducer = createReducer( draft.joinListCount = agreeList.length; }) ) - - .handleAction(Actions.GROUP_MYLIST.success, (state, action) => - produce(state, draft => { - const { data, count } = action.payload; - - draft.joinList = data; - draft.joinListCount = count; - }) - ) - .handleAction(Actions.GROUP_CREATEID.success, (state, action) => + .handleAction(Actions.createGroupId.success, (state, action) => produce(state, draft => { const result = action.payload; draft.newGroupId = result; }) ) - .handleAction(Actions.GROUP_DETAIL.success, (state, action) => + .handleAction(Actions.getGroupDetail.success, (state, action) => produce(state, draft => { const data = action.payload; draft.groupDetail = data; }) ) - .handleAction(Actions.GROUP_LIST.success, (state, action) => + .handleAction(Actions.getGroupList.success, (state, action) => produce(state, draft => { const { data, count } = action.payload; draft.groupList = data; draft.groupListCount = count; }) ) - .handleAction(Actions.GROUP_JOINLIST.success, (state, action) => + .handleAction(Actions.getAvailGroupList.success, (state, action) => produce(state, draft => { const { data, count } = action.payload; draft.joinList = data; draft.joinListCount = count; }) ) - .handleAction(Actions.APPROVAL_LIST.success, (state, action) => + .handleAction(Actions.getApprovalList.success, (state, action) => produce(state, draft => { const { data, count, total } = action.payload; @@ -72,7 +63,7 @@ export const groupReducer = createReducer( draft.total = total; }) ) - .handleAction(Actions.USER_LIST.success, (state, action) => + .handleAction(Actions.getUserList.success, (state, action) => produce(state, draft => { const { data, count, total } = action.payload; draft.userList = data; @@ -80,13 +71,13 @@ export const groupReducer = createReducer( draft.total = total; }) ) - .handleAction(Actions.GROUP_APRV_SELECT, (state, action) => + .handleAction(Actions.selectAprvGroup, (state, action) => produce(state, draft => { const selectData = action.payload; draft.aprvSelect = selectData; }) ) - .handleAction(Actions.GROUP_USER_SELECT, (state, action) => + .handleAction(Actions.selectUserGroup, (state, action) => produce(state, draft => { const selectData = action.payload; draft.userSelect = selectData; diff --git a/src/modules/basis/group/sagas/index.ts b/src/modules/basis/group/sagas/index.ts index 2f7e42bd..0cd0dbea 100644 --- a/src/modules/basis/group/sagas/index.ts +++ b/src/modules/basis/group/sagas/index.ts @@ -1,8 +1,8 @@ import { call, put, takeEvery } from '@redux-saga/core/effects'; import { ActionType } from 'typesafe-actions'; -import * as Actions from '../actions'; import * as MessageActions from '../../../comn/message/actions/comnMessageAction'; +import * as Actions from '../actions'; import * as Apis from '../apis'; import { DELETE_MESSAGE, @@ -10,10 +10,12 @@ import { SAVE_MESSAGE } from '../../../../configs/constants'; -function* listMyGroupSaga(action: ActionType) { +function* getMyGroupListSaga( + action: ActionType +) { try { const params = action.payload; - const res = yield call(Apis.groupAPI.listMyGroup, params); + const res = yield call(Apis.groupAPI.getMyGroupList, params); const { data, count, errorCode, errorMessage } = res; if (errorCode) { // 오류메시지 호출 @@ -29,21 +31,23 @@ function* listMyGroupSaga(action: ActionType) { return; } yield put( - Actions.MY_LIST.success({ + Actions.getMyGroupList.success({ data: data, count: count }) ); } catch (error: any) { - yield put(Actions.MY_LIST.failure(error)); + yield put(Actions.getMyGroupList.failure(error)); } } -function* listMyJoinSaga(action: ActionType) { +function* getJoinGroupListSaga( + action: ActionType +) { try { const params = action.payload; - const res = yield call(Apis.groupAPI.listMyGroupJoin, params); + const res = yield call(Apis.groupAPI.getJoinGroupList, params); const { data, count, errorCode, errorMessage } = res; if (errorCode) { @@ -61,77 +65,46 @@ function* listMyJoinSaga(action: ActionType) { } yield put( - Actions.JOIN_LIST.success({ + Actions.getJoinGroupList.success({ data: data, count: count }) ); } catch (error: any) { - yield put(Actions.JOIN_LIST.failure(error)); + yield put(Actions.getJoinGroupList.failure(error)); } } -function* myJoinSaga(action: ActionType) { - try { - const params = action.payload; - - const res = yield call(Apis.groupAPI.listMyGroupJoin, params); - const { data, count, errorCode, errorMessage } = res; - - if (errorCode) { - // 오류메시지 호출 - yield put( - MessageActions.IS_ERROR({ - errorCode: errorCode, - errorMessage: '처리중 오류가 발생하였습니다', - isHistoryBack: false, - isRefresh: false - }) - ); - - return; - } - - yield put( - Actions.GROUP_MYLIST.success({ - data: data, - count: count - }) - ); - } catch (error: any) { - yield put(Actions.GROUP_MYLIST.failure(error)); - } -} -function* createIdSaga( - action: ActionType +function* createGroupIdSaga( + action: ActionType ) { try { const params = action.payload; - const { data } = yield call(Apis.groupAPI.createid); + const { data } = yield call(Apis.groupAPI.createGroupId); - yield put(Actions.GROUP_CREATEID.success(data.result)); + yield put(Actions.createGroupId.success(data.result)); } catch (error: any) { - yield put(Actions.GROUP_CREATEID.failure(error)); + yield put(Actions.createGroupId.failure(error)); } } -function* detailGroupSaga( - action: ActionType +function* getGroupDetailSaga( + action: ActionType ) { try { const id = action.payload; - const res = yield call(Apis.groupAPI.detailGroup, id); + const res = yield call(Apis.groupAPI.getGroupDetail, id); const { data } = res; - yield put(Actions.GROUP_DETAIL.success(data)); + yield put(Actions.getGroupDetail.success(data)); } catch (error: any) { - yield put(Actions.GROUP_DETAIL.failure(error)); + yield put(Actions.getGroupDetail.failure(error)); } } function* createGroupSaga( - action: ActionType + action: ActionType ) { try { const groupDetail = action.payload; @@ -171,12 +144,12 @@ function* createGroupSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_CREATE.failure(error)); + // yield put(Actions.createGroup.failure(error)); } } function* updateGroupSaga( - action: ActionType + action: ActionType ) { try { const groupDetail = action.payload; @@ -217,12 +190,12 @@ function* updateGroupSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_UPDATE.failure(error)); + // yield put(Actions.updateGroup.failure(error)); } } function* deleteGroupSaga( - action: ActionType + action: ActionType ) { try { const groupId = action.payload; @@ -251,52 +224,52 @@ function* deleteGroupSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_DELETE.failure(error)); + // yield put(Actions.deleteGroup.failure(error)); } } -function* listGroupSaga(action: ActionType) { +function* getGroupListSaga( + action: ActionType +) { try { const id = action.payload; - const res = yield call(Apis.groupAPI.grouplist, id); + const res = yield call(Apis.groupAPI.getGroupList, id); const { data, count } = res; yield put( - Actions.GROUP_LIST.success({ + Actions.getGroupList.success({ data: data, count: count }) ); } catch (error: any) { - yield put(Actions.GROUP_LIST.failure(error)); + yield put(Actions.getGroupList.failure(error)); } } -function* groupJoinListSaga( - action: ActionType +function* getAvailGroupListSaga( + action: ActionType ) { try { const { searchParams } = action.payload; - const res = yield call(Apis.groupAPI.listGroupJoin, searchParams); + const res = yield call(Apis.groupAPI.getAvailGroupList, searchParams); const { data, count } = res; yield put( - Actions.GROUP_JOINLIST.success({ + Actions.getAvailGroupList.success({ data: data, count: count }) ); } catch (error: any) { - yield put(Actions.GROUP_JOINLIST.failure(error)); + yield put(Actions.getAvailGroupList.failure(error)); } } -function* createJoinGroupSaga( - action: ActionType -) { +function* joinGroupSaga(action: ActionType) { try { const groupDetail = action.payload; - const res = yield call(Apis.groupAPI.createJoinGroup, groupDetail); + const res = yield call(Apis.groupAPI.joinGroup, groupDetail); const { data } = res; @@ -321,16 +294,16 @@ function* createJoinGroupSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_UPDATE.failure(error)); + // yield put(Actions.updateGroup.failure(error)); } } -function* updateJoinGroupSaga( - action: ActionType +function* leaveGroupSaga( + action: ActionType ) { try { const groupDetail = action.payload; - const res = yield call(Apis.groupAPI.updateJoinGroup, groupDetail); + const res = yield call(Apis.groupAPI.leaveGroup, groupDetail); const { data } = res; @@ -355,39 +328,39 @@ function* updateJoinGroupSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_UPDATE.failure(error)); + // yield put(Actions.updateGroup.failure(error)); } } -function* aprvListSaga( - action: ActionType +function* getApprovalListSaga( + action: ActionType ) { try { const { searchParams, page } = action.payload; - const res = yield call(Apis.groupAPI.listGroupAprv, searchParams, page); + const res = yield call(Apis.groupAPI.getApprovalList, searchParams, page); const { data: { items, total }, count } = res; yield put( - Actions.APPROVAL_LIST.success({ + Actions.getApprovalList.success({ data: items, count, total }) ); } catch (error: any) { - yield put(Actions.APPROVAL_LIST.failure(error)); + yield put(Actions.getApprovalList.failure(error)); } } -function* updateAprvSaga( - action: ActionType +function* updateApprovalSaga( + action: ActionType ) { try { const saveData = action.payload; - const res = yield call(Apis.groupAPI.updateAprvGroup, saveData); + const res = yield call(Apis.groupAPI.updateApproval, saveData); const { data } = res; @@ -412,22 +385,24 @@ function* updateAprvSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_UPDATE.failure(error)); + // yield put(Actions.updateGroup.failure(error)); } } //사용자 관리 - 사용자 목록 -function* userListSaga(action: ActionType) { +function* getUserListSaga( + action: ActionType +) { try { const { searchParams } = action.payload; - const res = yield call(Apis.groupAPI.listGroupUser, searchParams); + const res = yield call(Apis.groupAPI.getUserList, searchParams); // const { data } = res; const { data: { items, total }, count } = res; yield put( - Actions.USER_LIST.success({ + Actions.getUserList.success({ // data: data.items, // count: data.total data: items, @@ -436,16 +411,16 @@ function* userListSaga(action: ActionType) { }) ); } catch (error: any) { - yield put(Actions.USER_LIST.failure(error)); + yield put(Actions.getUserList.failure(error)); } } -function* updateUserSaga( - action: ActionType +function* updateUserAccessSaga( + action: ActionType ) { try { const saveData = action.payload; - const res = yield call(Apis.groupAPI.updateUser, saveData); + const res = yield call(Apis.groupAPI.updateUserAccess, saveData); const { data } = res; @@ -470,12 +445,12 @@ function* updateUserSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_UPDATE.failure(error)); + // yield put(Actions.updateGroup.failure(error)); } } function* delegateUserSaga( - action: ActionType + action: ActionType ) { try { const saveData = action.payload; @@ -504,26 +479,25 @@ function* delegateUserSaga( isRefresh: false }) ); - // yield put(Actions.GROUP_UPDATE.failure(error)); + // yield put(Actions.updateGroup.failure(error)); } } export function* basGroupSaga() { - yield takeEvery(Actions.MY_LIST.request, listMyGroupSaga); - yield takeEvery(Actions.JOIN_LIST.request, listMyJoinSaga); - yield takeEvery(Actions.GROUP_MYLIST.request, myJoinSaga); - yield takeEvery(Actions.GROUP_DETAIL.request, detailGroupSaga); - yield takeEvery(Actions.GROUP_CREATE.request, createGroupSaga); - yield takeEvery(Actions.GROUP_UPDATE.request, updateGroupSaga); - yield takeEvery(Actions.GROUP_DELETE.request, deleteGroupSaga); - yield takeEvery(Actions.GROUP_CREATEID.request, createIdSaga); - yield takeEvery(Actions.GROUP_LIST.request, listGroupSaga); - yield takeEvery(Actions.GROUP_JOINLIST.request, groupJoinListSaga); - yield takeEvery(Actions.APPROVAL_LIST.request, aprvListSaga); - yield takeEvery(Actions.USER_LIST.request, userListSaga); - yield takeEvery(Actions.GROUP_JOIN.request, createJoinGroupSaga); - yield takeEvery(Actions.GROUP_JOIN_UPDATE.request, updateJoinGroupSaga); - yield takeEvery(Actions.APPROVAL_UPDATE.request, updateAprvSaga); - yield takeEvery(Actions.USER_UPDATE.request, updateUserSaga); - yield takeEvery(Actions.USER_DELEGATE.request, delegateUserSaga); + yield takeEvery(Actions.getMyGroupList.request, getMyGroupListSaga); + yield takeEvery(Actions.getJoinGroupList.request, getJoinGroupListSaga); + yield takeEvery(Actions.getGroupDetail.request, getGroupDetailSaga); + yield takeEvery(Actions.createGroup.request, createGroupSaga); + yield takeEvery(Actions.updateGroup.request, updateGroupSaga); + yield takeEvery(Actions.deleteGroup.request, deleteGroupSaga); + yield takeEvery(Actions.createGroupId.request, createGroupIdSaga); + yield takeEvery(Actions.getGroupList.request, getGroupListSaga); + yield takeEvery(Actions.getAvailGroupList.request, getAvailGroupListSaga); + yield takeEvery(Actions.getApprovalList.request, getApprovalListSaga); + yield takeEvery(Actions.getUserList.request, getUserListSaga); + yield takeEvery(Actions.joinGroup.request, joinGroupSaga); + yield takeEvery(Actions.leaveGroup.request, leaveGroupSaga); + yield takeEvery(Actions.updateApproval.request, updateApprovalSaga); + yield takeEvery(Actions.updateUserAccess.request, updateUserAccessSaga); + yield takeEvery(Actions.delegateUser.request, delegateUserSaga); } diff --git a/src/modules/cstmrService/inquiry/actions/index.ts b/src/modules/cstmrService/inquiry/actions/index.ts index de18d68b..ab2cdc90 100644 --- a/src/modules/cstmrService/inquiry/actions/index.ts +++ b/src/modules/cstmrService/inquiry/actions/index.ts @@ -111,7 +111,7 @@ export const ADMIN_DELETE = createAsyncAction( AxiosError >(); -export const USER_LIST = createAsyncAction( +export const getUserList = createAsyncAction( USER_LIST_REQUEST, USER_LIST_SUCCESS, USER_LIST_FAILURE @@ -131,7 +131,7 @@ export const USER_DETAIL = createAsyncAction( export const USER_DETAIL_INITAL = createAction(USER_DETAIL_INITAL_ACTION)(); -export const USER_UPDATE = createAsyncAction( +export const updateUserAccess = createAsyncAction( USER_UPDATE_REQUEST, USER_UPDATE_SUCCESS, USER_UPDATE_FAILURE @@ -156,11 +156,11 @@ const actions = { ADMIN_ANSWER, ADMIN_FILE_DOWN, ADMIN_DELETE, - USER_LIST, + getUserList, USER_INQUIRY, USER_DETAIL, USER_DETAIL_INITAL, - USER_UPDATE, + updateUserAccess, USER_DELETE }; diff --git a/src/modules/cstmrService/inquiry/reducers/index.ts b/src/modules/cstmrService/inquiry/reducers/index.ts index 9cdb7ea5..98689f06 100644 --- a/src/modules/cstmrService/inquiry/reducers/index.ts +++ b/src/modules/cstmrService/inquiry/reducers/index.ts @@ -27,7 +27,7 @@ export const qnaReducer = createReducer( }) ) // 사용자 목록 - .handleAction(Actions.USER_LIST.success, (state, action) => + .handleAction(Actions.getUserList.success, (state, action) => produce(state, draft => { const data = action.payload; draft.userList = data || []; diff --git a/src/modules/cstmrService/inquiry/sagas/index.ts b/src/modules/cstmrService/inquiry/sagas/index.ts index 47cb2608..582121f4 100644 --- a/src/modules/cstmrService/inquiry/sagas/index.ts +++ b/src/modules/cstmrService/inquiry/sagas/index.ts @@ -157,7 +157,9 @@ function* adminDeleteSaga( } } -function* userListSaga(action: ActionType) { +function* getUserListSaga( + action: ActionType +) { try { const payload = action.payload; const res = yield call(Apis.qnaAPI.userList, payload); @@ -176,9 +178,9 @@ function* userListSaga(action: ActionType) { return; } - yield put(Actions.USER_LIST.success(data)); + yield put(Actions.getUserList.success(data)); } catch (error) { - yield put(Actions.USER_LIST.failure(error)); + yield put(Actions.getUserList.failure(error)); } } @@ -213,7 +215,7 @@ function* userInquirySaga( ); } yield put( - Actions.USER_LIST.request({ category: '', searchType: '', word: '' }) + Actions.getUserList.request({ category: '', searchType: '', word: '' }) ); // yield put(Actions.USER_INQUIRY.success(data)); } catch (error) { @@ -249,7 +251,7 @@ function* userDetailSaga( } function* userUpdateSaga( - action: ActionType + action: ActionType ) { try { const payload = action.payload; @@ -279,11 +281,11 @@ function* userUpdateSaga( ); } yield put( - Actions.USER_LIST.request({ category: '', searchType: '', word: '' }) + Actions.getUserList.request({ category: '', searchType: '', word: '' }) ); // yield put(Actions.USER_INQUIRY_UPDATE.success(data)); } catch (error) { - yield put(Actions.USER_UPDATE.failure(error)); + yield put(Actions.updateUserAccess.failure(error)); } } @@ -321,7 +323,7 @@ function* userDeleteSaga( } yield put( - Actions.USER_LIST.request({ category: '', searchType: '', word: '' }) + Actions.getUserList.request({ category: '', searchType: '', word: '' }) ); } catch (error) { yield put(Actions.USER_DELETE.failure(error)); @@ -334,9 +336,9 @@ export function* qnaSaga() { yield takeEvery(Actions.ADMIN_ANSWER.request, adminAnswerSaga); yield takeEvery(Actions.ADMIN_FILE_DOWN.request, adminFileDownSaga); yield takeEvery(Actions.ADMIN_DELETE.request, adminDeleteSaga); - yield takeEvery(Actions.USER_LIST.request, userListSaga); + yield takeEvery(Actions.getUserList.request, getUserListSaga); yield takeEvery(Actions.USER_INQUIRY.request, userInquirySaga); yield takeEvery(Actions.USER_DETAIL.request, userDetailSaga); - yield takeEvery(Actions.USER_UPDATE.request, userUpdateSaga); + yield takeEvery(Actions.updateUserAccess.request, userUpdateSaga); yield takeEvery(Actions.USER_DELETE.request, userDeleteSaga); } diff --git a/src/modules/main/dash/actions/mainDashAction.ts b/src/modules/main/dash/actions/mainDashAction.ts index 9a7b4eec..ae6f8e7f 100644 --- a/src/modules/main/dash/actions/mainDashAction.ts +++ b/src/modules/main/dash/actions/mainDashAction.ts @@ -48,7 +48,7 @@ export const STCS_AREA = createAsyncAction( STCS_AREA_FAILURE )(); -export const GROUP_LIST = createAsyncAction( +export const getGroupList = createAsyncAction( GROUP_LIST_REQUEST, GROUP_LIST_SUCCESS, GROUP_LIST_FAILURE @@ -75,7 +75,7 @@ export const DRON_OPERRATION_LIST = createAsyncAction( const actions = { STCS_DAY, STCS_AREA, - GROUP_LIST, + getGroupList, DRON_LIST, DASHBOARD_DATA, DRON_OPERRATION_LIST diff --git a/src/modules/main/dash/reducers/mainDashReducer.ts b/src/modules/main/dash/reducers/mainDashReducer.ts index dfbde684..3fa896d1 100644 --- a/src/modules/main/dash/reducers/mainDashReducer.ts +++ b/src/modules/main/dash/reducers/mainDashReducer.ts @@ -19,7 +19,7 @@ export const mainDahReducer = createReducer< draft.stcsAreaList = data; }) ) - .handleAction(Actions.GROUP_LIST.success, (state, action) => + .handleAction(Actions.getGroupList.success, (state, action) => produce(state, draft => { const { data } = action.payload; draft.groupList = data; diff --git a/src/modules/main/dash/sagas/mainDashSaga.ts b/src/modules/main/dash/sagas/mainDashSaga.ts index 246f96cd..256de2fa 100644 --- a/src/modules/main/dash/sagas/mainDashSaga.ts +++ b/src/modules/main/dash/sagas/mainDashSaga.ts @@ -62,7 +62,7 @@ function* listStcsArea(action: ActionType) { } } -function* listGroup(action: ActionType) { +function* listGroup(action: ActionType) { try { const params = action.payload; const res = yield call(Apis.mainDashAPI.groupList, params); @@ -81,12 +81,12 @@ function* listGroup(action: ActionType) { return; } yield put( - Actions.GROUP_LIST.success({ + Actions.getGroupList.success({ data: data }) ); } catch (error) { - yield put(Actions.GROUP_LIST.failure(error)); + yield put(Actions.getGroupList.failure(error)); } } @@ -202,7 +202,7 @@ function* dronOperationList( export function* mainDashSaga() { yield takeEvery(Actions.STCS_DAY.request, listStcsDay); yield takeEvery(Actions.STCS_AREA.request, listStcsArea); - yield takeEvery(Actions.GROUP_LIST.request, listGroup); + yield takeEvery(Actions.getGroupList.request, listGroup); yield takeEvery(Actions.DRON_LIST.request, listDron); yield takeEvery(Actions.DASHBOARD_DATA.request, dashboardData); yield takeEvery(Actions.DRON_OPERRATION_LIST.request, dronOperationList);