2026-02-14 15:15:03 +09:00
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"
|
|
|
|
|
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout" layout:decorate="~{/web/layout/homeLayout}">
|
|
|
|
|
<th:block layout:fragment="layout_css">
|
2026-02-14 22:16:25 +09:00
|
|
|
<link rel="stylesheet" href="/css/web/hospital.css?v1.1">
|
2026-02-14 15:15:03 +09:00
|
|
|
<link rel="stylesheet" href="/css/web/hospital_info.css?v1.1">
|
|
|
|
|
<script src='https://cdn.jsdelivr.net/npm/fullcalendar@6.1.10/index.global.min.js'></script>
|
2026-02-14 22:16:25 +09:00
|
|
|
<style>
|
|
|
|
|
.project_wrap .content_section .hospital_wrap .center_box {
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
overflow: hidden !important;
|
|
|
|
|
padding-bottom: 0 !important;
|
|
|
|
|
/* Ensure padding doesn't add to scroll height */
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.project_wrap .content_section .hospital_wrap .center_box .tab_panel {
|
|
|
|
|
height: 100%;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.project_wrap .content_section .hospital_wrap .center_box .tab_panel .tab-content {
|
|
|
|
|
height: calc(100% - 42px);
|
|
|
|
|
/* 42px is typical nav-tabs height */
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.project_wrap .content_section .hospital_wrap .center_box .tab_panel .tab-content .tab-pane {
|
|
|
|
|
height: 100%;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
</style>
|
2026-02-14 15:15:03 +09:00
|
|
|
</th:block>
|
2025-10-18 11:06:19 +09:00
|
|
|
|
|
|
|
|
<th:block layout:fragment="layout_top_script">
|
2026-02-14 15:15:03 +09:00
|
|
|
<script>
|
|
|
|
|
let menuClass = "[[${param.menuClass}]]" == "" ? "" : "[[${param.menuClass}]]";
|
2025-10-18 11:06:19 +09:00
|
|
|
|
2026-02-14 15:15:03 +09:00
|
|
|
let selectUseYn = "[[${selectUseYn}]]" == "" ? "N" : "[[${selectUseYn}]]";
|
|
|
|
|
let insertUseYn = "[[${insertUseYn}]]" == "" ? "N" : "[[${insertUseYn}]]";
|
|
|
|
|
let updateUseYn = "[[${updateUseYn}]]" == "" ? "N" : "[[${updateUseYn}]]";
|
|
|
|
|
let deleteUseYn = "[[${deleteUseYn}]]" == "" ? "N" : "[[${deleteUseYn}]]";
|
|
|
|
|
let downloadUseYn = "[[${downloadUseYn}]]" == "" ? "N" : "[[${downloadUseYn}]]";
|
2025-10-18 11:06:19 +09:00
|
|
|
|
2026-02-14 15:15:03 +09:00
|
|
|
</script>
|
2025-10-18 11:06:19 +09:00
|
|
|
</th:block>
|
|
|
|
|
<th:block layout:fragment="layout_content">
|
2026-02-14 15:15:03 +09:00
|
|
|
<input type="hidden" id="muHospitalId">
|
|
|
|
|
<!-- 센터쪽 -->
|
|
|
|
|
<div class="center_box">
|
2026-02-14 22:16:25 +09:00
|
|
|
<!-- 탭 패널 추가 -->
|
|
|
|
|
<div class="tab_panel" role="tabpanel">
|
|
|
|
|
<!-- Nav tabs -->
|
|
|
|
|
<div class="nav_box">
|
|
|
|
|
<ul class="nav nav-tabs" role="tablist">
|
|
|
|
|
<li role="presentation" class="active">
|
|
|
|
|
<a href="#schedule" aria-controls="schedule" role="tab" data-toggle="tab">
|
|
|
|
|
<p>병원 운영스케쥴</p>
|
|
|
|
|
</a>
|
|
|
|
|
</li>
|
|
|
|
|
<li role="presentation">
|
|
|
|
|
<a href="#operatingHours" aria-controls="operatingHours" role="tab" data-toggle="tab">
|
|
|
|
|
<p>운영시간</p>
|
|
|
|
|
</a>
|
|
|
|
|
</li>
|
|
|
|
|
</ul>
|
2026-02-14 15:15:03 +09:00
|
|
|
</div>
|
|
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
<!-- Tab panes -->
|
|
|
|
|
<div class="tab-content">
|
|
|
|
|
<!-- 병원 운영스케쥴 탭 -->
|
|
|
|
|
<div role="tabpanel" class="tab-pane active" id="schedule">
|
|
|
|
|
<div class="info_box" style="display: flex; gap: 20px;">
|
|
|
|
|
|
|
|
|
|
<!-- 좌측: 달력 & 법정공휴일 -->
|
|
|
|
|
<div class="info_left" style="width: 50%; min-width: auto;">
|
|
|
|
|
<div class="form_box first">
|
|
|
|
|
<div class="hospital_box" style="margin-top: 0;">
|
|
|
|
|
<p class="title">병원 운영스케쥴</p>
|
|
|
|
|
<!-- 달력 영역 -->
|
|
|
|
|
<div id='calendar' style="margin-bottom: 20px;"></div>
|
|
|
|
|
|
|
|
|
|
<div class="calendar_guide"
|
|
|
|
|
style="padding: 15px; background: #f8f9fa; border-radius: 5px; font-size: 13px; color: #555;">
|
|
|
|
|
<p style="font-weight: bold; margin-bottom: 8px;">※ 달력 사용 가이드</p>
|
|
|
|
|
<ul style="list-style: disc; padding-left: 18px; line-height: 1.6;">
|
|
|
|
|
<li>날짜를 클릭하여 해당 일자의 운영/휴무 여부 및 시간을 개별 설정할 수 있습니다.</li>
|
|
|
|
|
<li>등록된 일정을 클릭하면 내용을 수정하거나 삭제할 수 있습니다.</li>
|
|
|
|
|
<li style="margin-top: 5px;">
|
|
|
|
|
<span style="margin-right: 10px;"><span style="color:#FF5252">●</span>
|
|
|
|
|
법정공휴일</span>
|
|
|
|
|
<span style="margin-right: 10px;"><span style="color:#2ECC71">●</span>
|
|
|
|
|
병원지정 휴일</span>
|
|
|
|
|
<span><span style="color:#f39c12">●</span> 별도 스케줄</span>
|
|
|
|
|
</li>
|
|
|
|
|
</ul>
|
2026-02-14 15:15:03 +09:00
|
|
|
</div>
|
2025-10-18 11:06:19 +09:00
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
|
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
<!-- 우측: 병원지정 휴일 -->
|
|
|
|
|
<div class="info_right" style="width: 50%; min-width: auto;">
|
|
|
|
|
<div class="form_box first">
|
|
|
|
|
<div class="hospital_box" style="margin-top: 0;">
|
|
|
|
|
<div class="hospital_title_box"
|
|
|
|
|
style="display: flex; justify-content: space-between; align-items: center;">
|
|
|
|
|
<p class="title" style="margin-bottom: 0; font-weight: bold; font-size: 16px;">
|
|
|
|
|
병원지정 휴일</p>
|
|
|
|
|
<div class="btn_group">
|
|
|
|
|
<button type="button" id="btnAddRow"
|
|
|
|
|
style="border: none; background: transparent; padding: 0; cursor: pointer; margin-right: 10px;">
|
|
|
|
|
<img src="/image/web/add.svg" alt="추가"
|
|
|
|
|
style="width: 24px; height: 24px; vertical-align: middle;">
|
|
|
|
|
</button>
|
|
|
|
|
<button type="button" id="btnRemoveRow"
|
|
|
|
|
style="border: none; background: transparent; padding: 0; cursor: pointer;">
|
|
|
|
|
<img src="/image/web/subtract.svg" alt="삭제"
|
|
|
|
|
style="width: 24px; height: 24px; vertical-align: middle;">
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<ul class="hospital_list" id="hospitalHolidayList"
|
|
|
|
|
style="width: 100% !important; float: none !important; box-sizing: border-box; height: 450px; overflow-y: auto;">
|
|
|
|
|
<li class="list_title_li"
|
|
|
|
|
style="display: flex !important; width: 100% !important; margin: 0 !important; padding: 10px 0 !important; background: #EDF5FF; border-radius: 5px; float: none !important; position: sticky; top: 0; z-index: 10;">
|
|
|
|
|
<span class="list_title"
|
|
|
|
|
style="width: 40px !important; display: flex; justify-content: center; align-items: center; float: none !important; border: none !important;">
|
|
|
|
|
<input type="checkbox" id="checkAllHolidays">
|
|
|
|
|
</span>
|
|
|
|
|
<span class="list_title"
|
|
|
|
|
style="flex: 1 !important; text-align: center; float: none !important; border: none !important; width: auto !important;">휴일명</span>
|
|
|
|
|
<span class="list_title"
|
|
|
|
|
style="width: 140px !important; text-align: center; float: none !important; border: none !important;">날짜</span>
|
|
|
|
|
<span class="list_title"
|
|
|
|
|
style="width: 100px !important; text-align: center; float: none !important; border: none !important;">일정반복</span>
|
|
|
|
|
<span class="list_title"
|
|
|
|
|
style="width: 70px !important; text-align: center; float: none !important; border: none !important;">저장</span>
|
|
|
|
|
</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<!-- 하단 일괄 저장 버튼은 row별 저장으로 대체되므로 제거하거나 숨김 처리, 일단 제거 -->
|
2025-10-18 11:06:19 +09:00
|
|
|
</div>
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
<!-- 운영시간 탭 -->
|
|
|
|
|
<div role="tabpanel" class="tab-pane" id="operatingHours">
|
|
|
|
|
<div class="info_box" style="display: flex; gap: 0;">
|
|
|
|
|
<div class="info_left"
|
|
|
|
|
style="width: 50%; min-width: auto; border-right: 1px solid #ddd; padding-right: 20px;">
|
|
|
|
|
<div class="form_box first">
|
|
|
|
|
<p class="title">운영시간</p>
|
|
|
|
|
|
|
|
|
|
<div class="time_box">
|
|
|
|
|
|
|
|
|
|
<ul class="time_list">
|
|
|
|
|
<li class="list_title_li">
|
|
|
|
|
<span class="list_title">요일</span>
|
|
|
|
|
<span class="list_title">운영시간</span>
|
|
|
|
|
<span class="list_title">휴게시간</span>
|
|
|
|
|
<span class="list_title">운영여부</span>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<div class="day_box">
|
|
|
|
|
<p class="day">월요일</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="monOpenStartTime">
|
|
|
|
|
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selMonOpenStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="monOpenEndTime">
|
|
|
|
|
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selMonOpenEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="monBreakStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selMonBreakStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="monBreakEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selMonBreakEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="wrapper_box">
|
|
|
|
|
<div class="wrapper">
|
|
|
|
|
<input type="checkbox" id="checkMonOpenYn" class="switch_input"
|
|
|
|
|
value="Y">
|
|
|
|
|
<label for="checkMonOpenYn" class="switch_label">
|
|
|
|
|
<span class="switch_btn"></span>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<div class="day_box">
|
|
|
|
|
<p class="day">화요일</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="tueOpenStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selTueOpenStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="tueOpenEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selTueOpenEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="tueBreakStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selTueBreakStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="tueBreakEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selTueBreakEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="wrapper_box">
|
|
|
|
|
<div class="wrapper">
|
|
|
|
|
<input type="checkbox" id="checkTueOpenYn" class="switch_input"
|
|
|
|
|
value="Y">
|
|
|
|
|
<label for="checkTueOpenYn" class="switch_label">
|
|
|
|
|
<span class="switch_btn"></span>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<div class="day_box">
|
|
|
|
|
<p class="day">수요일</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="wedOpenStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selWedOpenStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="wedOpenEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selWedOpenEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="wedBreakStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selWedBreakStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="wedBreakEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selWedBreakEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="wrapper_box">
|
|
|
|
|
<div class="wrapper">
|
|
|
|
|
<input type="checkbox" id="checkWedOpenYn" class="switch_input"
|
|
|
|
|
value="Y">
|
|
|
|
|
<label for="checkWedOpenYn" class="switch_label">
|
|
|
|
|
<span class="switch_btn"></span>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<div class="day_box">
|
|
|
|
|
<p class="day">목요일</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="thuOpenStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selThuOpenStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="thuOpenEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selThuOpenEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="thuBreakStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selThuBreakStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="thuBreakEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selThuBreakEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="wrapper_box">
|
|
|
|
|
<div class="wrapper">
|
|
|
|
|
<input type="checkbox" id="checkThuOpenYn" class="switch_input"
|
|
|
|
|
value="Y">
|
|
|
|
|
<label for="checkThuOpenYn" class="switch_label">
|
|
|
|
|
<span class="switch_btn"></span>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<div class="day_box">
|
|
|
|
|
<p class="day">금요일</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="friOpenStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selFriOpenStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="friOpenEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selFriOpenEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="friBreakStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selFriBreakStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="friBreakEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selFriBreakEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="wrapper_box">
|
|
|
|
|
<div class="wrapper">
|
|
|
|
|
<input type="checkbox" id="checkFriOpenYn" class="switch_input"
|
|
|
|
|
value="Y">
|
|
|
|
|
<label for="checkFriOpenYn" class="switch_label">
|
|
|
|
|
<span class="switch_btn"></span>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<div class="day_box">
|
|
|
|
|
<p class="day">토요일</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="satOpenStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSatOpenStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="satOpenEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSatOpenEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="satBreakStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSatBreakStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="satBreakEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSatBreakEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="wrapper_box">
|
|
|
|
|
<div class="wrapper">
|
|
|
|
|
<input type="checkbox" id="checkSatOpenYn" class="switch_input"
|
|
|
|
|
value="Y">
|
|
|
|
|
<label for="checkSatOpenYn" class="switch_label">
|
|
|
|
|
<span class="switch_btn"></span>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<div class="day_box">
|
|
|
|
|
<p class="day">일요일</p>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="sunOpenStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSunOpenStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="sunOpenEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSunOpenEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="select_time_list_box">
|
|
|
|
|
<div class="select_list first">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="sunBreakStartTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSunBreakStartTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<span class="slash">~</span>
|
|
|
|
|
|
|
|
|
|
<div class="select_list">
|
|
|
|
|
<div class="select_box dropdown">
|
|
|
|
|
<button type="button" class="label" data-toggle="dropdown"
|
|
|
|
|
aria-haspopup="true" aria-expanded="false"
|
|
|
|
|
disabled>00:00</button>
|
|
|
|
|
<input type="hidden" id="sunBreakEndTime">
|
|
|
|
|
<ul class="select_option_list dropdown-menu"
|
|
|
|
|
id="selSunBreakEndTime"></ul>
|
|
|
|
|
</div><!--select_box-->
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="wrapper_box">
|
|
|
|
|
<div class="wrapper">
|
|
|
|
|
<input type="checkbox" id="checkSunOpenYn" class="switch_input"
|
|
|
|
|
value="Y">
|
|
|
|
|
<label for="checkSunOpenYn" class="switch_label">
|
|
|
|
|
<span class="switch_btn"></span>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
|
</ul>
|
2025-10-18 11:06:19 +09:00
|
|
|
</div>
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
|
|
|
|
<div class="button_box"
|
|
|
|
|
style="display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px;">
|
|
|
|
|
<button id="btnUpdateHospital" class="btn_blue"
|
|
|
|
|
style="width: 100px; height: 36px; background: #3985EA; color: #fff; border: none; border-radius: 5px; font-size: 14px; font-weight: bold; cursor: pointer;">저장</button>
|
|
|
|
|
<button id="btnCancelHospital" class="btn_gray"
|
|
|
|
|
style="width: 100px; height: 36px; background: #666; color: #fff; border: none; border-radius: 5px; font-size: 14px; font-weight: bold; cursor: pointer;">취소</button>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
|
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
<div class="info_right" style="width: 50%; min-width: auto; padding-left: 20px;">
|
|
|
|
|
<div class="form_box first">
|
|
|
|
|
<div class="holiday_box" style="margin-top: 0; border-top: none; padding-top: 0;">
|
|
|
|
|
<p class="title" style="margin-bottom: 10px;">법정 공휴일</p>
|
|
|
|
|
|
|
|
|
|
<div class="check_holiday_box">
|
|
|
|
|
<div class="check_box">
|
|
|
|
|
<label for="checkPublicHolidayUseYn">
|
|
|
|
|
<input class="select_check_hide" type="checkbox"
|
|
|
|
|
id="checkPublicHolidayUseYn" name="checkPublicHolidayUseYn"
|
|
|
|
|
value="Y">
|
|
|
|
|
<div class="select_check_show"></div>
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
<span>법정 공휴일 반영</span>
|
2026-02-14 15:15:03 +09:00
|
|
|
</div>
|
2025-10-18 11:06:19 +09:00
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
2025-10-18 11:06:19 +09:00
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
</div>
|
2026-02-14 22:16:25 +09:00
|
|
|
</div>
|
|
|
|
|
<!-- <div class="form_box">
|
2025-10-18 11:06:19 +09:00
|
|
|
<p class="title">최고관리자 설정</p>
|
|
|
|
|
|
|
|
|
|
<div class="admset_box">
|
|
|
|
|
<p class="admset_title">아이디</p>
|
|
|
|
|
|
|
|
|
|
<div class="input_box">
|
|
|
|
|
<input type="hidden" id="txt_muMemberId">
|
|
|
|
|
<input type="text" id="txt_memberName" placeholder="" disabled>
|
|
|
|
|
<a href="#">최고관리자 이관</a>
|
|
|
|
|
|
|
|
|
|
<p class="comment">*관리자 권한 계정에게만 이관이 가능합니다.</p>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div> -->
|
2026-02-14 15:15:03 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
2025-10-18 11:06:19 +09:00
|
|
|
</div>
|
2026-02-14 15:15:03 +09:00
|
|
|
</div>
|
|
|
|
|
<form id="hospitalUpdateForm" onsubmit="return false;"></form>
|
2025-10-18 11:06:19 +09:00
|
|
|
</th:block>
|
|
|
|
|
<th:block layout:fragment="layout_popup">
|
2026-02-14 22:16:25 +09:00
|
|
|
<div id="schedulePopup" class="modal_layer"
|
|
|
|
|
style="display:none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999;">
|
|
|
|
|
<div class="modal_bg"
|
|
|
|
|
style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5);"></div>
|
|
|
|
|
<div class="modal_content"
|
|
|
|
|
style="position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #fff; padding: 30px; border-radius: 10px; width: 500px;">
|
|
|
|
|
<div class="modal_title"
|
|
|
|
|
style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; border-bottom: 1px solid #ddd; padding-bottom: 15px;">
|
|
|
|
|
<h3 style="font-size: 20px; font-weight: bold;">운영 스케줄 설정</h3>
|
|
|
|
|
<button type="button" onclick="fn_closeSchedulePopup();"
|
|
|
|
|
style="border: none; background: none; font-size: 20px; cursor: pointer;">X</button>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="modal_body">
|
|
|
|
|
<input type="hidden" id="popMuHospitalScheduleId">
|
|
|
|
|
|
|
|
|
|
<div class="input_row" style="margin-bottom: 15px;">
|
|
|
|
|
<label style="display: block; margin-bottom: 5px; font-weight: bold;">날짜</label>
|
|
|
|
|
<input type="text" id="popScheduleDate" readonly
|
|
|
|
|
style="width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 5px; background: #f5f5f5;">
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="input_row" style="margin-bottom: 15px;">
|
|
|
|
|
<label style="display: block; margin-bottom: 5px; font-weight: bold;">운영여부</label>
|
|
|
|
|
<div style="display: flex; gap: 20px;">
|
|
|
|
|
<label style="display: flex; align-items: center; gap: 5px; cursor: pointer;">
|
|
|
|
|
<input type="radio" name="popOpenYn" value="Y" onchange="fn_changePopOpenYn(this)"> 운영
|
|
|
|
|
</label>
|
|
|
|
|
<label style="display: flex; align-items: center; gap: 5px; cursor: pointer;">
|
|
|
|
|
<input type="radio" name="popOpenYn" value="N" onchange="fn_changePopOpenYn(this)"> 휴무
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div id="popTimeArea">
|
|
|
|
|
<div class="input_row" style="margin-bottom: 15px;">
|
|
|
|
|
<label style="display: block; margin-bottom: 5px; font-weight: bold;">운영시간</label>
|
|
|
|
|
<div style="display: flex; align-items: center; gap: 10px;">
|
|
|
|
|
<select id="popOpenStartTime"
|
|
|
|
|
style="width: 140px; padding: 10px; border: 1px solid #ddd; border-radius: 5px;"></select>
|
|
|
|
|
<span>~</span>
|
|
|
|
|
<select id="popOpenEndTime"
|
|
|
|
|
style="width: 140px; padding: 10px; border: 1px solid #ddd; border-radius: 5px;"></select>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="input_row" style="margin-bottom: 15px;">
|
|
|
|
|
<label style="display: block; margin-bottom: 5px; font-weight: bold;">휴게시간</label>
|
|
|
|
|
<div style="display: flex; align-items: center; gap: 10px;">
|
|
|
|
|
<select id="popBreakStartTime"
|
|
|
|
|
style="width: 140px; padding: 10px; border: 1px solid #ddd; border-radius: 5px;"></select>
|
|
|
|
|
<span>~</span>
|
|
|
|
|
<select id="popBreakEndTime"
|
|
|
|
|
style="width: 140px; padding: 10px; border: 1px solid #ddd; border-radius: 5px;"></select>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="modal_footer"
|
|
|
|
|
style="display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; border-top: 1px solid #ddd; padding-top: 20px;">
|
|
|
|
|
<button type="button" onclick="fn_deleteSchedule();" id="btnDeleteSchedule"
|
|
|
|
|
style="padding: 5px 20px; background: #FF5252; color: #fff; border: none; border-radius: 5px; cursor: pointer; display: none;">삭제</button>
|
|
|
|
|
<button type="button" onclick="fn_closeSchedulePopup();"
|
|
|
|
|
style="padding: 5px 20px; background: #ddd; border: none; border-radius: 5px; cursor: pointer;">취소</button>
|
|
|
|
|
<button type="button" onclick="fn_saveSchedule();"
|
|
|
|
|
style="padding: 5px 20px; background: #3985EA; color: #fff; border: none; border-radius: 5px; cursor: pointer;">저장</button>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2025-10-18 11:06:19 +09:00
|
|
|
</th:block>
|
|
|
|
|
<th:block layout:fragment="layout_script">
|
2026-02-14 15:15:03 +09:00
|
|
|
<script src="/js/web/hospital/hospitalUpdate.js"></script>
|
2025-10-18 11:06:19 +09:00
|
|
|
</th:block>
|
2026-02-14 15:15:03 +09:00
|
|
|
|
|
|
|
|
</html>
|