diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/schedule/EgovAdminScheduleDetail.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/schedule/EgovAdminScheduleDetail.jsx
deleted file mode 100644
index 5e23323..0000000
--- a/egovframe-template-simple-react-contribution/src/pages/admin/schedule/EgovAdminScheduleDetail.jsx
+++ /dev/null
@@ -1,202 +0,0 @@
-import React, { useState, useEffect } from 'react';
-import { Link, useLocation, useNavigate } from 'react-router-dom';
-
-import * as EgovNet from 'api/egovFetch';
-import URL from 'constants/url';
-import CODE from 'constants/code';
-
-import { default as EgovLeftNav } from 'components/leftmenu/EgovLeftNavAdmin';
-import EgovAttachFile from 'components/EgovAttachFile';
-
-function EgovAdminScheduleDetail(props) {
- console.group("EgovAdminScheduleDetail");
- console.log("[Start] EgovAdminScheduleDetail ------------------------------");
- console.log("EgovAdminScheduleDetail [props] : ", props);
-
- const navigate = useNavigate();
- const location = useLocation();
- console.log("EgovAdminScheduleDetail [location] : ", location);
-
- const [scheduleDetail, setScheduleDetail] = useState({});
- const [boardAttachFiles, setBoardAttachFiles] = useState();
- const [user, setUser] = useState({});
-
- const retrieveDetail = () => {
-
- const retrieveDetailURL = `/schedule/${location.state?.schdulId}`;
- const requestOptions = {
- method: "GET",
- headers: {
- 'Content-type': 'application/json',
- }
- }
- EgovNet.requestFetch(retrieveDetailURL,
- requestOptions,
- function (resp) {
- let rawScheduleDetail = resp.result.scheduleDetail;
- rawScheduleDetail.startDateTime = convertDate(rawScheduleDetail.schdulBgnde);
- rawScheduleDetail.endDateTime = convertDate(rawScheduleDetail.schdulEndde);
- rawScheduleDetail.reptitSeCodeNm = getCodeName(resp.result.reptitSeCode, resp.result.scheduleDetail.reptitSeCode);
- rawScheduleDetail.schdulIpcrCodeNm = getCodeName(resp.result.schdulIpcrCode, resp.result.scheduleDetail.schdulIpcrCode);
- rawScheduleDetail.schdulSeNm = getCodeName(resp.result.schdulSe, resp.result.scheduleDetail.schdulSe);
- setScheduleDetail(rawScheduleDetail);
- setUser(resp.result.user);
- setBoardAttachFiles(resp.result.resultFiles);
- }
- );
- }
- const convertDate = (str) => {
- let year = str.substring(0, 4);
- let month = str.substring(4, 6);
- let date = str.substring(6, 8);
- let hour = str.substring(8, 10);
- let minute = str.substring(10, 12);
- return {
- year: year,
- month: month,
- date: date,
- hour: hour,
- minute: minute,
- dateForm: year + "년 " + month + "월 " + date + "일 " + hour + "시 " + minute + "분 "
- }
- }
-
- const getCodeName = (codeArr, code) => {
- return (
- codeArr.map((codeObj) => {
- if (codeObj.code === code.trim()) return codeObj.codeNm
- else return "";
- })
- );
- };
-
- const onClickDeleteSchedule = (schdulId) => {
- const deleteBoardURL = `/schedule/${schdulId}`;
-
- const requestOptions = {
- method: "DELETE",
- headers: {
- 'Content-type': 'application/json',
- }
- }
-
- EgovNet.requestFetch(deleteBoardURL,
- requestOptions,
- (resp) => {
- console.log("====>>> Schdule delete= ", resp);
- if (Number(resp.resultCode) === Number(CODE.RCV_SUCCESS)) {
- alert("게시글이 삭제되었습니다.")
- navigate(URL.ADMIN_SCHEDULE ,{ replace: true });
- } else {
- // alert("ERR : " + resp.message);
- navigate({pathname: URL.ERROR}, {state: {msg : resp.resultMessage}});
- }
-
- }
- );
- }
-
- useEffect(function () {
- retrieveDetail();
- // eslint-disable-next-line react-hooks/exhaustive-deps
- }, []);
-
- console.log("------------------------------EgovAdminScheduleDetail [End]");
- console.groupEnd("EgovAdminScheduleDetail");
- return (
-
-
- {/* */}
-
- {/* */}
-
-
- {/* */}
-
- {/* */}
-
-
- {/* */}
-
-
-
사이트관리
-
-
-
일정관리 상세보기
-
- {/* */}
-
-
- - 일정구분
- - {scheduleDetail.schdulSeNm}
-
-
- - 중요도
- - {scheduleDetail.schdulIpcrCodeNm}
-
-
- - 부서
- - {scheduleDetail.schdulDeptName}
-
-
- - 일정명
- - {scheduleDetail.schdulNm}
-
-
- - 일정내용
- - {scheduleDetail.schdulCn}
-
-
- - 반복구분
- - {scheduleDetail.reptitSeCodeNm}
-
-
- - 날짜/시간
- - {scheduleDetail.startDateTime?.dateForm} ~ {scheduleDetail.endDateTime?.dateForm}
-
-
- - 담당자
- - {scheduleDetail.schdulChargerName}
-
-
-
-
- {/* */}
-
- {user.id &&
-
- 수정
-
-
-
- }
-
- 목록
-
-
- {/* */}
-
- {/* */}
-
- {/* */}
-
-
-
-
- );
-}
-
-export default EgovAdminScheduleDetail;
\ No newline at end of file
diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/schedule/EgovAdminScheduleEdit.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/schedule/EgovAdminScheduleEdit.jsx
deleted file mode 100644
index 11d59fe..0000000
--- a/egovframe-template-simple-react-contribution/src/pages/admin/schedule/EgovAdminScheduleEdit.jsx
+++ /dev/null
@@ -1,364 +0,0 @@
-import React, { useState, useEffect } from 'react';
-import { Link, useLocation, useNavigate } from 'react-router-dom';
-import DatePicker from "react-datepicker";
-
-import * as EgovNet from 'api/egovFetch';
-import URL from 'constants/url';
-import CODE from 'constants/code';
-
-import { default as EgovLeftNav } from 'components/leftmenu/EgovLeftNavAdmin';
-import EgovAttachFile from 'components/EgovAttachFile';
-import EgovRadioButtonGroup from 'components/EgovRadioButtonGroup';
-
-import 'react-datepicker/dist/react-datepicker.css';
-
-function EgovAdminScheduleEdit(props) {
- console.group("EgovAdminScheduleEdit");
- console.log("[Start] EgovAdminScheduleEdit ------------------------------");
- console.log("EgovAdminScheduleEdit [props] : ", props);
-
- const navigate = useNavigate();
- const location = useLocation();
- console.log("EgovAdminScheduleEdit [location] : ", location);
-
- const reptitSeCodeRadioGroup = [{ value: "1", label: "당일" }, { value: "2", label: "반복" }, { value: "3", label: "연속" }];
-
- const [modeInfo, setModeInfo] = useState({ mode: props.mode });
- const [scheduleDetail, setScheduleDetail] = useState({ schdulDeptName: "관리자부서", schdulChargerName: "관리자", schdulKindCode: 2, reptitSeCode: "1", startDate: new Date(), endDate: new Date() });
- const [boardAttachFiles, setBoardAttachFiles] = useState();
-
- const [schdulBgndeHH, setSchdulBgndeHH] = useState();
- const [schdulBgndeMM, setSchdulBgndeMM] = useState();
- const [schdulEnddeHH, setSchdulEnddeHH] = useState();
- const [schdulEnddeMM, setSchdulEnddeMM] = useState();
-
-
- const initMode = () => {
- switch (props.mode) {
- case CODE.MODE_CREATE:
- setModeInfo({
- ...modeInfo,
- modeTitle: "등록",
- method : "POST",
- editURL: '/schedule'
- });
- break;
- case CODE.MODE_MODIFY:
- setModeInfo({
- ...modeInfo,
- modeTitle: "수정",
- method : "PUT",
- editURL: '/schedule'
- });
- break;
- default:
- navigate({pathname: URL.ERROR}, {state: {msg : ""}});
- }
- retrieveDetail();
- }
-
- const convertDate = (str) => {
- let year = str.substring(0, 4);
- let month = str.substring(4, 6);
- let date = str.substring(6, 8);
- let hour = str.substring(8, 10);
- let minute = str.substring(10, 12);
- return new Date(year, month - 1, date, hour, minute)
- }
-
- const retrieveDetail = () => {
- if (modeInfo.mode === CODE.MODE_CREATE) {// 조회/등록이면 조회 안함
- setScheduleDetail({
- ...scheduleDetail,
- schdulBgnde: location.state.iUseDate,
- schdulEndde: location.state.iUseDate,
- startDate: convertDate(location.state.iUseDate),
- endDate: convertDate(location.state.iUseDate),
- });
- return;
- }
-
- const retrieveDetailURL = `/schedule/${location.state?.schdulId}`;
- const requestOptions = {
- method: "GET",
- headers: {
- 'Content-type': 'application/json'
- }
- }
- EgovNet.requestFetch(retrieveDetailURL,
- requestOptions,
- function (resp) {
- let rawScheduleDetail = resp.result.scheduleDetail;
- //기본값 설정
- setScheduleDetail({
- ...scheduleDetail,
- ...rawScheduleDetail,
- startDate: convertDate(rawScheduleDetail.schdulBgnde),
- endDate: convertDate(rawScheduleDetail.schdulEndde),
- atchFileId : rawScheduleDetail.atchFileId.trim(),
- });
- setBoardAttachFiles(resp.result.resultFiles);
- }
- );
- }
-
- const updateSchedule = () => {
- const formData = new FormData();
-
- for (let key in scheduleDetail) {
- formData.append(key, scheduleDetail[key]);
- console.log("scheduleDetail [%s] ", key, scheduleDetail[key]);
- }
-
- if (formValidator(formData)) {
- const requestOptions = {
- method: modeInfo.method,
- body: formData
- }
-
- if (modeInfo.mode === CODE.MODE_MODIFY) {
- modeInfo.editURL = `${modeInfo.editURL}/${location.state?.schdulId}`;
- }
- EgovNet.requestFetch(modeInfo.editURL,
- requestOptions,
- (resp) => {
- if (Number(resp.resultCode) === Number(CODE.RCV_SUCCESS)) {
- navigate({ pathname: URL.ADMIN_SCHEDULE });
- } else {
- navigate({pathname: URL.ERROR}, {state: {msg : resp.resultMessage}});
- }
- }
- );
- }
-
- }
-
- const formValidator = (formData) => {
- if (formData.get('schdulNm') === null || formData.get('schdulNm') === "") {
- alert("일정명은 필수 값입니다.");
- return false;
- }
- if (formData.get('schdulCn') === null || formData.get('schdulCn') === "") {
- alert("일정내용은 필수 값입니다.");
- return false;
- }
- if (formData.get('schdulSe') === null || formData.get('schdulSe') === "") {
- alert("일정구분은 필수 값입니다.");
- return false;
- }
- if (formData.get('schdulIpcrCode') === null || formData.get('schdulIpcrCode') === "") {
- alert("중요도는 필수 값입니다.");
- return false;
- }
- if (formData.get('reptitSeCode') === null ||formData.get('reptitSeCode') === "") {
- alert("반복구분은 필수 값입니다.");
- return false;
- }
- if (formData.get('schdulBgnde') > formData.get('schdulEndde')) {
- alert("종료일시는 시작일시보다 앞 설 수 없습니다.");
- return false;
- }
- return true;
- }
- const getDateFourteenDigit = (date) => {
- return getYYYYMMDD(date).toString() + makeTwoDigit(date.getHours()) + makeTwoDigit(date.getMinutes()) + makeTwoDigit(date.getSeconds());
- }
- const getYYYYMMDD = (date) => {
- return date.getFullYear().toString() + makeTwoDigit(Number(date.getMonth() + 1)) + makeTwoDigit(date.getDate());
- }
- const makeTwoDigit = (number) => {
- return number < 10 ? "0" + number : number.toString();
- }
-
- useEffect(function () {
- initMode();
- // eslint-disable-next-line react-hooks/exhaustive-deps
- }, []);
-
- console.log("------------------------------EgovAdminScheduleEdit [End]");
- console.groupEnd("EgovAdminScheduleEdit");
- return (
-
-
- {/* */}
-
- {/* */}
-
-
- {/* */}
-
- {/* */}
-
-
- {/* */}
-
-
-
사이트관리
-
-
-
일정관리 상세보기
-
- {/* */}
-
-
- - 일정구분필수
- -
-
-
-
-
- - 중요도필수
- -
-
-
-
-
- - 필수
- -
-
-
-
-
- - 필수
- -
- setScheduleDetail({ ...scheduleDetail, schdulNm: e.target.value })} />
-
-
-
- - 필수
- -
-
-
-
-
- - 반복구분필수
- -
- setScheduleDetail({ ...scheduleDetail, reptitSeCode: v })} />
-
-
-
- - 날짜/시간필수
- -
-
- {
- console.log("setStartDate : ", date);
- setScheduleDetail({ ...scheduleDetail, schdulBgnde: getDateFourteenDigit(date), schdulBgndeYYYMMDD: getYYYYMMDD(date), schdulBgndeHH: date.getHours(), schdulBgndeMM: date.getMinutes(), startDate: date });
- setSchdulBgndeHH(date.getHours());
- setSchdulBgndeMM(date.getMinutes());
- }} />
-
-
- ~
-
-
- {
- console.log("setEndDate: ", date);
- setScheduleDetail({ ...scheduleDetail, schdulEndde: getDateFourteenDigit(date), schdulEnddeYYYMMDD: getYYYYMMDD(date), schdulEnddeHH: date.getHours(), schdulEnddeMM: date.getMinutes(), endDate: date });
- setSchdulEnddeHH(date.getHours());
- setSchdulEnddeMM(date.getMinutes());
- }
- } />
-
-
-
-
-
-
- - 필수
- -
-
-
-
-
{
- console.log("====>>> Changed attachfile file = ", attachfile);
- const arrayConcat = { ...scheduleDetail}; // 기존 단일 파일 업로드에서 다중파일 객체 추가로 변환(아래 for문으로)
- for ( let i = 0; i < attachfile.length; i++) {
- arrayConcat[`file_${i}`] = attachfile[i];
- }
- setScheduleDetail(arrayConcat);
- }}
- fnDeleteFile={(deletedFile) => {
- console.log("====>>> Delete deletedFile = ", deletedFile);
- setBoardAttachFiles(deletedFile);
- }}
- boardFiles={boardAttachFiles}
- mode={props.mode} />
-
- {/* */}
-
-
-
-
삭제
-
-
-
- 목록
-
-
- {/* */}
-
- {/* */}
-
- {/* */}
-
-
-
-
- );
-}
-
-export default EgovAdminScheduleEdit;
\ No newline at end of file
diff --git a/egovframe-template-simple-react-contribution/src/routes/index.jsx b/egovframe-template-simple-react-contribution/src/routes/index.jsx
index 5e54288..b7b1d37 100644
--- a/egovframe-template-simple-react-contribution/src/routes/index.jsx
+++ b/egovframe-template-simple-react-contribution/src/routes/index.jsx
@@ -47,8 +47,8 @@ import EgovGalleryEdit from 'pages/inform/gallery/EgovGalleryEdit';
//ADMIN
import EgovAdminScheduleList from 'pages/admin/schedule/EgovAdminScheduleList';
-import EgovAdminScheduleDetail from 'pages/admin/schedule/EgovAdminScheduleDetail';
-import EgovAdminScheduleEdit from 'pages/admin/schedule/EgovAdminScheduleEdit';
+// import EgovAdminScheduleDetail from 'pages/admin/schedule/EgovAdminScheduleDetail';
+// import EgovAdminScheduleEdit from 'pages/admin/schedule/EgovAdminScheduleEdit';
import EgovAdminBoardList from 'pages/admin/board/EgovAdminBoardList';
import EgovAdminBoardEdit from 'pages/admin/board/EgovAdminBoardEdit';
@@ -94,7 +94,7 @@ import AdminContentsPopUp from 'pages/admin/contents/PopUp';
import AdminContentsPopUpEditor from 'pages/admin/contents/PopUp/PopupEditor'; // 관리자 - 컨텐츠 관리/팝업 관리/팝업 추가 또는 수정
import AdminContentsStandardResearch from 'pages/admin/contents/StandardResearch'; // 관리자 - 컨텐츠 관리/건설기준연구 관리
import AdminContentsStandardResearchEditor from 'pages/admin/contents/StandardResearch/StandardResearchEditor'; // 컨텐츠 관리/건설기준연구 관리/추가 또는 수정
-import AdminContentsTextMessages from 'pages/admin/contents/TextMessages'; // 관리자 - 컨텐츠 관리/문자 발송
+// import AdminContentsTextMessages from 'pages/admin/contents/TextMessages'; // 관리자 - 컨텐츠 관리/문자 발송
// 관리자 - 위원회 관리
import AdminCommitteeProgressStatus from 'pages/admin/committee/ProgressStatus'; // 관리자 - 위원회 관리/진행현황 관리
@@ -250,9 +250,9 @@ const SecondRoutes = () => {
{/* ADMIN */}
} />
} />
- } />
- } />
- } />
+ {/*} />*/}
+ {/*} />*/}
+ {/*} />*/}
} />
} />
@@ -306,7 +306,7 @@ const SecondRoutes = () => {
} />
} />
} />
- } />
+ {/*} />*/}
{/* 관리자 - 위원회 관리 */}
} />