diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/committee/Schedules/Edit.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/committee/Schedules/Edit.jsx
index 8ebf408..25939fc 100644
--- a/egovframe-template-simple-react-contribution/src/pages/admin/committee/Schedules/Edit.jsx
+++ b/egovframe-template-simple-react-contribution/src/pages/admin/committee/Schedules/Edit.jsx
@@ -64,7 +64,10 @@ function SchedulesEdit(props) {
//${location.state?.schdulId
const getDateFourteenDigit = (date) => {
- return `${getYYYY_MM_DD(date).toString()} ${makeTwoDigit(date.getHours())}:${makeTwoDigit(date.getMinutes())}:${makeTwoDigit(date.getSeconds())}`;
+ 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 getYYYY_MM_DD = (date) => {
return `${date.getFullYear().toString()}-${makeTwoDigit(Number(date.getMonth() + 1))}-${makeTwoDigit(date.getDate())}`;
@@ -249,14 +252,11 @@ function SchedulesEdit(props) {
if (formData.get('contents') === null ||formData.get('contents') === "") {
alert("내용을 입력해 주세요.");
return false;
- }
-
- /*
- if (formData.get('contents') > formData.get('schdulEndde')) {
+ }
+ if (formData.get('schdulBgnde') > formData.get('schdulEndde')) {
alert("종료일시는 시작일시보다 앞 설 수 없습니다.");
- return false;
+ //return false;
}
- */
return true;
}
@@ -285,6 +285,31 @@ function SchedulesEdit(props) {
}, [scheduleDetail && scheduleDetail.upCommittee]);
+ 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__COMMITTEE__SCHEDULES ,{ replace: true });
+ } else {
+ navigate({pathname: URL.ERROR}, {state: {msg : resp.resultMessage}});
+ }
+
+ }
+ );
+ }
+
console.log("------------------------------EgovAdminScheduleEdit [End]");
console.groupEnd("EgovAdminScheduleEdit");
return (
@@ -389,7 +414,7 @@ function SchedulesEdit(props) {
showTimeInput
onChange={(date) => {
console.log("setStartDate : ", date);
- setScheduleDetail({ ...scheduleDetail, startDate: date });
+ setScheduleDetail({ ...scheduleDetail, schdulBgnde: getDateFourteenDigit(date), schdulBgndeYYYMMDD: getYYYYMMDD(date), schdulBgndeHH: date.getHours(), schdulBgndeMM: date.getMinutes(), startDate: date });
setSchdulBgndeHH(date.getHours());
setSchdulBgndeMM(date.getMinutes());
}} />
@@ -407,7 +432,7 @@ function SchedulesEdit(props) {
minDate={scheduleDetail.startDate}
onChange={(date) => {
console.log("setEndDate: ", date);
- setScheduleDetail({ ...scheduleDetail, endDate: date });
+ setScheduleDetail({ ...scheduleDetail, schdulEndde: getDateFourteenDigit(date), schdulEnddeYYYMMDD: getYYYYMMDD(date), schdulEnddeHH: date.getHours(), schdulEnddeMM: date.getMinutes(), endDate: date });
setSchdulEnddeHH(date.getHours());
setSchdulEnddeMM(date.getMinutes());
}
@@ -433,7 +458,13 @@ function SchedulesEdit(props) {
- 삭제
+ {modeInfo.mode === CODE.MODE_MODIFY &&
+
+ }
+
diff --git a/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx b/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx
index b923ebd..2f80d88 100644
--- a/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx
+++ b/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx
@@ -129,81 +129,81 @@ function EgovMain(props) {
-
-
-
-
-
+ {/*
*/}
+ {/*
*/}
+ {/*
*/}
+ {/* - 공지사항
*/}
+ {/* - 갤러리
*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
공지사항
*/}
+ {/*
*/}
+ {/* {noticeListTag}*/}
+ {/*
*/}
+ {/*
더보기*/}
+ {/*
*/}
-
-
-
+ {/*
*/}
+ {/*
갤러리
*/}
+ {/*
*/}
+ {/* {gallaryListTag}*/}
+ {/*
*/}
+ {/*
더보기*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
*/}
-
-
- 자료실
- 다양한 자료를
다운로드 받으실 수 있습니다.
-
-
- 국가건설기준센터
- 국가건설기준센터의
약도 등의 정보를 제공합니다.
-
-
-
+ {/*
*/}
+ {/* */}
+ {/* 자료실*/}
+ {/* 다양한 자료를
다운로드 받으실 수 있습니다.*/}
+ {/* */}
+ {/* */}
+ {/* 국가건설기준센터*/}
+ {/* 국가건설기준센터의
약도 등의 정보를 제공합니다.*/}
+ {/* */}
+ {/*
*/}
+ {/*
*/}
-
-
-
-
주요사업 소개
-
국가건설기준센터가 제공하는
- 주요 사업을 소개합니다.
-
-
자세히 보기
-
-
-
-
대표서비스 소개
-
국가건설기준센터 실행환경의
- 서비스 그룹에서 제공하는
- 대표서비스입니다.
-
-
자세히 보기
-
-
-
-
서비스 신청
-
국가건설기준센터 경량환경
- 홈페이지의 다양한 서비스를
- 신청 하실 수 있습니다.
-
-
자세히 보기
-
-
-
-
일정 현황
-
국가건설기준센터 경량환경
- 홈페이지의 전체적인 일정
- 현황을 조회하실 수 있습니다.
-
-
자세히 보기
-
-
+ {/**/}
+ {/*
*/}
+ {/*
*/}
+ {/*
주요사업 소개
*/}
+ {/*
국가건설기준센터가 제공하는
*/}
+ {/* 주요 사업을 소개합니다.
*/}
+ {/*
*/}
+ {/*
자세히 보기*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
대표서비스 소개
*/}
+ {/*
국가건설기준센터 실행환경의
*/}
+ {/* 서비스 그룹에서 제공하는
*/}
+ {/* 대표서비스입니다.
*/}
+ {/*
*/}
+ {/*
자세히 보기*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
서비스 신청
*/}
+ {/*
국가건설기준센터 경량환경
*/}
+ {/* 홈페이지의 다양한 서비스를
*/}
+ {/* 신청 하실 수 있습니다.
*/}
+ {/*
*/}
+ {/*
자세히 보기*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
*/}
+ {/*
일정 현황
*/}
+ {/*
국가건설기준센터 경량환경
*/}
+ {/* 홈페이지의 전체적인 일정
*/}
+ {/* 현황을 조회하실 수 있습니다.
*/}
+ {/*
*/}
+ {/*
자세히 보기*/}
+ {/*
*/}
+ {/*
*/}
diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/controller/SchedulesApiController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/controller/SchedulesApiController.java
index d53336d..fc43ef9 100644
--- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/controller/SchedulesApiController.java
+++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/controller/SchedulesApiController.java
@@ -79,7 +79,7 @@ public class SchedulesApiController {
try {
resultVO = egovIndvdlSchdulManageService.createSchedule(resultVO, request, createScheduleVO);
} catch (Exception e) {
- resultVO.setResultCode(-1);
+ resultVO.setResultCode(ResponseCode.FAILED.getCode());
resultVO.setResultMessage(e.getMessage());
}
@@ -119,7 +119,47 @@ public class SchedulesApiController {
try {
resultVO = egovIndvdlSchdulManageService.updateSchedule(resultVO, request, updateScheduleVO);
} catch (Exception e) {
- resultVO.setResultCode(-1);
+ resultVO.setResultCode(ResponseCode.FAILED.getCode());
+ resultVO.setResultMessage(e.getMessage());
+ }
+
+
+ System.out.println(
+ "\n--------------------------------------------------------------\n" +
+ request.getRequestURI() + " OUT:" +
+ "\n--------------------------------------------------------------\n" +
+ "resultVO.toString():" + "\n" +
+ resultVO.toString() + "\n" +
+ "\n--------------------------------------------------------------\n"
+ );
+
+ return resultVO;
+ }
+
+
+ @Operation(
+ summary = "'위원회 일정 등록' 페이지에서 일정 삭제하는 API",
+ description = "관리자 단에서 '위원회 관리' > '위원회 일정 관리'에서 특정 일정을 삭제하는 API",
+ tags = {"SchedulesApiController"}
+ )
+ @ApiResponses(value = {
+ @ApiResponse(responseCode = "200", description = "등록 성공"),
+ @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
+ })
+ @DeleteMapping(value = "/schedule/{scheduleId}")
+ public ResultVO deleteSchedule
+ (
+ @AuthenticationPrincipal LoginVO user,
+ HttpServletRequest request,
+ @PathVariable("scheduleId") String schdulId
+ ) throws Exception {
+
+ ResultVO resultVO = new ResultVO();
+ Long test = Long.valueOf(schdulId);
+ try {
+ resultVO = egovIndvdlSchdulManageService.deleteSchedule(resultVO, request, test);
+ } catch (Exception e) {
+ resultVO.setResultCode(ResponseCode.FAILED.getCode());
resultVO.setResultMessage(e.getMessage());
}
@@ -158,7 +198,7 @@ public class SchedulesApiController {
try {
resultVO = egovIndvdlSchdulManageService.scheduleDetail(resultVO, request, user, scheduleId);
} catch (Exception e) {
- resultVO.setResultCode(-1);
+ resultVO.setResultCode(ResponseCode.FAILED.getCode());
resultVO.setResultMessage(e.getMessage());
}
@@ -204,7 +244,7 @@ public class SchedulesApiController {
try {
resultVO = egovIndvdlSchdulManageService.scheduleMonth(resultVO, request, user, commandMap);
} catch (Exception e) {
- resultVO.setResultCode(-1);
+ resultVO.setResultCode(ResponseCode.FAILED.getCode());
resultVO.setResultMessage(e.getMessage());
}
diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/EgovIndvdlSchdulManageService.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/EgovIndvdlSchdulManageService.java
index 62e6154..27fc70b 100644
--- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/EgovIndvdlSchdulManageService.java
+++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/EgovIndvdlSchdulManageService.java
@@ -36,6 +36,8 @@ public interface EgovIndvdlSchdulManageService {
public ResultVO createSchedule(ResultVO resultVO, HttpServletRequest request, CreateScheduleVO createScheduleVO) throws Exception;
public ResultVO updateSchedule(ResultVO resultVO, HttpServletRequest request, UpdateScheduleVO updateScheduleVO) throws Exception;
+ public ResultVO deleteSchedule(ResultVO resultVO, HttpServletRequest request, Long scheduleId) throws Exception;
+
public ResultVO scheduleDetail(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long scheduleId) throws Exception;
diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/impl/EgovIndvdlSchdulManageServiceImpl.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/impl/EgovIndvdlSchdulManageServiceImpl.java
index 6816849..6615139 100644
--- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/impl/EgovIndvdlSchdulManageServiceImpl.java
+++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/schedules/service/impl/EgovIndvdlSchdulManageServiceImpl.java
@@ -122,6 +122,11 @@ public class EgovIndvdlSchdulManageServiceImpl extends EgovAbstractServiceImpl i
"\n--------------------------------------------------------------\n"
);
+ // 유효성 검사 실시
+ if( Long.parseLong(createScheduleVO.getStartDate()) > Long.parseLong(createScheduleVO.getEndDate()) ) {
+ throw new Exception("종료일시는 시작일시보다 앞 설 수 없습니다.");
+ }
+
Map response = tnCmtEventRepository.spAddTnCmtEvent(
createScheduleVO.getDivMeet(), // 구분
@@ -162,12 +167,22 @@ public class EgovIndvdlSchdulManageServiceImpl extends EgovAbstractServiceImpl i
"\n--------------------------------------------------------------\n"
);
+ // 유효성 검사 실시
+ int isValid = tnCmtEventRepository.sp_is_valid_tn_cmt_event_id( updateScheduleVO.getEvtSeq() );
+
+ if( isValid == 0 ) {
+ throw new Exception("대상이 존재하지 않습니다.");
+ }
+
+ if( Long.parseLong(updateScheduleVO.getStartDate()) > Long.parseLong(updateScheduleVO.getEndDate()) ) {
+ throw new Exception("종료일시는 시작일시보다 앞 설 수 없습니다.");
+ }
Map response = tnCmtEventRepository.spUpdateTnCmtEvent(
- updateScheduleVO.getEvtSeq().intValue(),
+ updateScheduleVO.getEvtSeq(),
updateScheduleVO.getDivMeet(), // 구분
- updateScheduleVO.getUpCommittee().intValue(), // 심의위원회 상위 코드 번호
- updateScheduleVO.getCommittee().intValue(), // 심의위원회 하위 코드 번호
+ updateScheduleVO.getUpCommittee(), // 심의위원회 상위 코드 번호
+ updateScheduleVO.getCommittee(), // 심의위원회 하위 코드 번호
updateScheduleVO.getTitle(), // 제목
updateScheduleVO.getLocation(), // 장소
updateScheduleVO.getContents(), // 내용
@@ -190,6 +205,38 @@ public class EgovIndvdlSchdulManageServiceImpl extends EgovAbstractServiceImpl i
return resultVO;
}
+ @Override
+ public ResultVO deleteSchedule(ResultVO resultVO, HttpServletRequest request, Long scheduleId) throws Exception {
+
+ System.out.println(
+ "\n--------------------------------------------------------------\n" +
+ request.getRequestURI() + " IN:" +
+ "\n--------------------------------------------------------------\n" +
+ "scheduleId:" + "\n" +
+ scheduleId + "\n" +
+ "\n--------------------------------------------------------------\n"
+ );
+
+
+ Map response = tnCmtEventRepository.spDeleteTnCmtEvent(
+ scheduleId.intValue(),
+ "admin",
+ null,
+ null,
+ null
+ );
+
+ Map dto = new HashMap();
+ dto.put("errorMessage", response.get("_error_message") );
+ dto.put("schdulId", scheduleId );
+
+ resultVO.setResult(dto);
+ resultVO.setResultCode(ResponseCode.SUCCESS.getCode());
+ resultVO.setResultMessage(ResponseCode.SUCCESS.getMessage());
+
+ return resultVO;
+ }
+
diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/commonCode/repository/TnCmtEventRepository.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/commonCode/repository/TnCmtEventRepository.java
index 7b00a47..4c97345 100644
--- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/commonCode/repository/TnCmtEventRepository.java
+++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/commonCode/repository/TnCmtEventRepository.java
@@ -27,11 +27,11 @@ public interface TnCmtEventRepository extends JpaRepository spDeleteTnCmtEvent(
+ @Param("_evt_seq") Integer evtSeq,
+ @Param("_modi_id") String modiId,
+ @Param("_result_count") Integer resultCount,
+ @Param("_result_code") String resultCode,
+ @Param("_error_message") String errorMessage
+ );
+
+
//@Procedure
//Map sp_is_valid_tn_cmt_event_id( @Param("_evt_seq") Long evtSeq );
@@ -111,11 +128,13 @@ public interface TnCmtEventRepository extends JpaRepository