2026-02-14 홈페이지 컨텐츠 등록/수정/목록 수정

This commit is contained in:
pjs
2026-02-14 10:37:33 +09:00
parent d50f35c676
commit 3899fc47fd
10 changed files with 984 additions and 901 deletions

View File

@@ -49,7 +49,6 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
@Autowired
private AttachFileService afs;
@Value("${url.cdn}")
String CDN_URL;
@@ -91,8 +90,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -104,7 +102,8 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
int authMenuRelationlistMapSize = authMenuRelationlistMap.size();
if (1 == authMenuRelationlistMapSize) {
@@ -116,14 +115,12 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
map.put("updateUseYn", authMenuRelationlistMap.get(0).get("updateUseYn"));
map.put("deleteUseYn", authMenuRelationlistMap.get(0).get("deleteUseYn"));
map.put("downloadUseYn", authMenuRelationlistMap.get(0).get("downloadUseYn"));
}
else {
} else {
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
}
}
}
catch(Exception e){
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -172,8 +169,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -185,20 +181,19 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
if (1 == authMenuRelationlistMap.size()) {
if (("Y").equals(authMenuRelationlistMap.get(0).get("selectUseYn"))) {
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "조회 권한 정보가 없습니다.");
}
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
@@ -209,23 +204,21 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
// 정렬
if (null == paramMap.get("webTreatmentPetitDir") || ("").equals(paramMap.get("webTreatmentPetitDir"))) {
}
else{
} else {
String dir = String.valueOf(paramMap.get("webTreatmentPetitDir"));
if (("A").equals(dir)) {
paramMap.put("webTreatmentPetitDir", "DESC");
}
else if(("B").equals(dir)){
} else if (("B").equals(dir)) {
paramMap.put("webTreatmentPetitDir", "ASC");
}
else {
} else {
paramMap.put("webTreatmentPetitDir", "DESC");
}
}
paramMap.put("useYn", "Y");
//List<Map<String, Object>> totalCountListMap = webTreatmentPetitSqlMapDAO.selectTotalWebTreatmentPetitCount(paramMap);
// List<Map<String, Object>> totalCountListMap =
// webTreatmentPetitSqlMapDAO.selectTotalWebTreatmentPetitCount(paramMap);
int totalCount = cmmnDAO.selectCount("ContentsBbsSql.getContentsBbsCnt", paramMap);
if (0 < totalCount) {
@@ -239,8 +232,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
map.put("totalCount", totalCount);
map.put("rows", listMap);
}
}
catch(Exception e){
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -280,8 +272,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -293,20 +284,19 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
if (1 == authMenuRelationlistMap.size()) {
if (("Y").equals(authMenuRelationlistMap.get(0).get("selectUseYn"))) {
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "조회 권한 정보가 없습니다.");
}
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
@@ -320,8 +310,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
map.put("detail", cmmnDAO.select("ContentsBbsSql.getContentsBbs", paramMap));
map.put("treatmentList", cmmnDAO.selectList("ContentsBbsSql.getProcedureList", paramMap));
}
}
catch(Exception e){
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -367,8 +356,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -380,7 +368,8 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
int authMenuRelationlistMapSize = authMenuRelationlistMap.size();
if (1 == authMenuRelationlistMapSize) {
@@ -392,17 +381,16 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
map.put("updateUseYn", authMenuRelationlistMap.get(0).get("updateUseYn"));
map.put("deleteUseYn", authMenuRelationlistMap.get(0).get("deleteUseYn"));
map.put("downloadUseYn", authMenuRelationlistMap.get(0).get("downloadUseYn"));
}
else {
} else {
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
}
}
//List<Map<String, Object>> listMap = webTreatmentPetitSqlMapDAO.selectWebTreatmentPetitCategory(paramMap);
// List<Map<String, Object>> listMap =
// webTreatmentPetitSqlMapDAO.selectWebTreatmentPetitCategory(paramMap);
List<Map<String, Object>> listMap = cmmnDAO.selectList("ContentsBbsSql.getCategoryList", paramMap);
map.put("categorylist", listMap);
}
catch(Exception e){
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -452,6 +440,20 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
String[] treatmentlist = String.valueOf(paramMap.get("treatmentlist")).split(",");
String[] treatmentprocedurelist = String.valueOf(paramMap.get("treatmentprocedurelist")).split(",");
String eventStartDt = String.valueOf(paramMap.get("eventStartDt"));
String eventEndDt = String.valueOf(paramMap.get("eventEndDt"));
if (eventStartDt != null)
eventStartDt = eventStartDt.replaceAll("-", "");
if (eventEndDt != null)
eventEndDt = eventEndDt.replaceAll("-", "");
paramMap.put("eventStartDt", eventStartDt);
paramMap.put("eventEndDt", eventEndDt);
log.debug("eventStartDt : " + eventStartDt);
log.debug("eventEndDt : " + eventEndDt);
if (true != ValidationCheckUtil.emptyCheck(title)) {
check = false;
map.put("msgCode", Constants.FAIL);
@@ -492,8 +494,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -505,21 +506,20 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
int authMenuRelationlistMapSize = authMenuRelationlistMap.size();
if (1 == authMenuRelationlistMapSize) {
if (("Y").equals(authMenuRelationlistMap.get(0).get("insertUseYn"))) {
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "등록 권한 정보가 없습니다.");
}
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
@@ -544,7 +544,6 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
// 게시글 등록
cmmnDAO.insert("ContentsBbsSql.putContentsBbs", paramMap);
for (int i = 0; i < treatmentlist.length; i++) {
if (StringUtils.isNotEmpty(treatmentlist[i]) &&
StringUtils.isNotEmpty(treatmentprocedurelist[i])) {
@@ -555,12 +554,10 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
}
}
map.put("msgCode", Constants.OK);
map.put("msgDesc", "등록되었습니다.");
}
}
catch (Exception e) {
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -606,8 +603,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -619,7 +615,8 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
int authMenuRelationlistMapSize = authMenuRelationlistMap.size();
if (1 == authMenuRelationlistMapSize) {
@@ -631,8 +628,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
map.put("updateUseYn", authMenuRelationlistMap.get(0).get("updateUseYn"));
map.put("deleteUseYn", authMenuRelationlistMap.get(0).get("deleteUseYn"));
map.put("downloadUseYn", authMenuRelationlistMap.get(0).get("downloadUseYn"));
}
else {
} else {
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
}
@@ -640,8 +636,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
map.put("category", cmmnDAO.selectList("ContentsBbsSql.getCategoryList", paramMap));
}
catch(Exception e){
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -673,8 +668,16 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
String[] treatmentlist = String.valueOf(paramMap.get("treatmentlist")).split(",");
String[] treatmentprocedurelist = String.valueOf(paramMap.get("treatmentprocedurelist")).split(",");
// String treatmentpetitStartDate = String.valueOf(paramMap.get("treatmentpetitStartDate"));
// String treatmentpetitEndDate = String.valueOf(paramMap.get("treatmentpetitEndDate"));
String eventStartDt = String.valueOf(paramMap.get("eventStartDt"));
String eventEndDt = String.valueOf(paramMap.get("eventEndDt"));
if (eventStartDt != null)
eventStartDt = eventStartDt.replaceAll("-", "");
if (eventEndDt != null)
eventEndDt = eventEndDt.replaceAll("-", "");
paramMap.put("eventStartDt", eventStartDt);
paramMap.put("eventEndDt", eventEndDt);
if (true != ValidationCheckUtil.emptyCheck(title)) {
check = false;
@@ -682,21 +685,21 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
map.put("msgDesc", "제목 정보가 없습니다.");
}
/*
if(true != ValidationCheckUtil.emptyCheck(content)){
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc","시술예약(쁘띠) 상세 정보가 없습니다.");
}
if(true != ValidationCheckUtil.emptyCheck(hashtag)){
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc","시술예약(쁘띠) 해시태그 정보가 없습니다.");
}
if(true != ValidationCheckUtil.emptyCheck(thumbnailBottomTxt)){
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc","시술예약(쁘띠) 썸네일 하단 정보가 없습니다.");
}
* if(true != ValidationCheckUtil.emptyCheck(content)){
* check = false;
* map.put("msgCode", Constants.FAIL);
* map.put("msgDesc","시술예약(쁘띠) 상세 정보가 없습니다.");
* }
* if(true != ValidationCheckUtil.emptyCheck(hashtag)){
* check = false;
* map.put("msgCode", Constants.FAIL);
* map.put("msgDesc","시술예약(쁘띠) 해시태그 정보가 없습니다.");
* }
* if(true != ValidationCheckUtil.emptyCheck(thumbnailBottomTxt)){
* check = false;
* map.put("msgCode", Constants.FAIL);
* map.put("msgDesc","시술예약(쁘띠) 썸네일 하단 정보가 없습니다.");
* }
*/
if (true == check) {
// 사용자 확인
@@ -705,8 +708,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -718,21 +720,20 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
int authMenuRelationlistMapSize = authMenuRelationlistMap.size();
if (1 == authMenuRelationlistMapSize) {
if (("Y").equals(authMenuRelationlistMap.get(0).get("updateUseYn"))) {
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "수정 권한 정보가 없습니다.");
}
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
@@ -751,12 +752,9 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
}
paramMap.put("muMemberId", paramMap.get("loginMemberId"));
cmmnDAO.update("ContentsBbsSql.modContentsBbs", paramMap);
// webTreatmentPetitSqlMapDAO.updateWebTreatmentPetit(paramMap);
map.put("postNo", paramMap.get("postNo"));
cmmnDAO.delete("ContentsBbsSql.delContentsBbsProcedure", paramMap);
// webTreatmentPetitSqlMapDAO..updateWebTreatmentListDiet(paramMap);
@@ -770,12 +768,10 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
}
map.put("msgCode", Constants.OK);
map.put("msgDesc", "수정되었습니다.");
}
}
catch (Exception e) {
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -807,8 +803,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -820,21 +815,20 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
HashMap<String, Object> authCheckParamMap = new HashMap<String, Object>();
authCheckParamMap.put("menuClass", paramMap.get("menuClass"));
authCheckParamMap.put("muAuthId", paramMap.get("menuClassAuthId"));
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO.selectAuthMenuRelation(authCheckParamMap);
List<Map<String, Object>> authMenuRelationlistMap = webAuthMenuRelationSqlMapDAO
.selectAuthMenuRelation(authCheckParamMap);
int authMenuRelationlistMapSize = authMenuRelationlistMap.size();
if (1 == authMenuRelationlistMapSize) {
if (("Y").equals(authMenuRelationlistMap.get(0).get("deleteUseYn"))) {
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "삭제 권한 정보가 없습니다.");
}
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "권한 정보가 없습니다.");
@@ -843,14 +837,12 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
int delCnt = 0;
if (true == check) {
delCnt = cmmnDAO.update("ContentsBbsSql.delContentsBbs", paramMap);
map.put("msgCode", Constants.OK);
map.put("msgDesc", delCnt + "건 삭제 되었습니다.");
}
}
catch (Exception e) {
} catch (Exception e) {
e.printStackTrace();
throw e;
}
@@ -895,8 +887,7 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
if (1 == userListMapSize) {
paramMap.put("menuClassAuthId", userListMap.get(0).get("muAuthId"));
}
else {
} else {
check = false;
map.put("msgCode", Constants.FAIL);
map.put("msgDesc", "사용자 정보가 올바르지 않습니다.");
@@ -907,16 +898,13 @@ public class ContentsBbsServiceImpl implements ContentsBbsService {
// 정렬
if (null == paramMap.get("userDir") || ("").equals(paramMap.get("userDir"))) {
}
else{
} else {
String dir = String.valueOf(paramMap.get("userDir"));
if (("A").equals(dir)) {
paramMap.put("userDir", "DESC");
}
else if(("B").equals(dir)){
} else if (("B").equals(dir)) {
paramMap.put("userDir", "ASC");
}
else {
} else {
paramMap.put("userDir", "DESC");
}
}

View File

@@ -40,6 +40,8 @@
,HCB.HASHTAG
,DATE_FORMAT(HCB.REG_DATE, '%Y-%m-%d') as REG_DT
,MM.NAME as REG_NM
,DATE_FORMAT(HCB.EVENT_START_DT, '%Y-%m-%d') as START_DT
,DATE_FORMAT(HCB.EVENT_END_DT, '%Y-%m-%d') as END_DT
FROM HP_CATEGORY HC,
HP_CONTENTS_BBS HCB,
(SELECT * FROM MU_MEMBER WHERE USE_YN = 'Y') MM
@@ -86,6 +88,8 @@
,HAF.FILE_PATH as CONTENT_IMG_PATH
,HCB.OLD_CRM_ITEM_ID
,HCB.ORD_NO
,DATE_FORMAT(HCB.EVENT_START_DT, '%Y-%m-%d') as START_DT
,DATE_FORMAT(HCB.EVENT_END_DT, '%Y-%m-%d') as END_DT
FROM HP_CONTENTS_BBS AS HCB
LEFT OUTER JOIN HP_ATTACH_FILE HAF ON HAF.ATTACHFILE_ID = HCB.CONTENTS_ATTACHFILE_ID
LEFT OUTER JOIN HP_ATTACH_FILE HAF2 ON HAF2.ATTACHFILE_ID = HCB.THUMBNAIL_ATTACHFILE_ID
@@ -141,6 +145,8 @@
,MOD_DATE
,OLD_CRM_ITEM_ID
,ORD_NO
,EVENT_START_DT
,EVENT_END_DT
)VALUES(
#{categoryDivCd}
,#{categoryNo}
@@ -160,6 +166,8 @@
,(SELECT MAX(ORD_NO) + 1
FROM HP_CONTENTS_BBS as TEMP
WHERE CATEGORY_DIV_CD = #{categoryDivCd} AND CATEGORY_NO = #{categoryNo})
,NULLIF(#{eventStartDt}, '')
,NULLIF(#{eventEndDt}, '')
)
</insert>
@@ -264,6 +272,8 @@
,CONTENT = #{content}
,THUMBNAIL_BOTTOM_TXT = #{thumbnailBottomTxt}
,HASHTAG = #{hashtag}
,EVENT_START_DT = NULLIF(#{eventStartDt}, '')
,EVENT_END_DT = NULLIF(#{eventEndDt}, '')
<if test="@org.springframework.util.StringUtils@hasLength(thumbnailAttachfileId)">
,THUMBNAIL_ATTACHFILE_ID = #{thumbnailAttachfileId}
</if>

View File

@@ -0,0 +1,4 @@
/* Fix datepicker z-index issue */
.ui-datepicker {
z-index: 9999 !important;
}

View File

@@ -57,8 +57,8 @@ function fn_insertWebEvent() {
treatmentProcedureIdList.push(item.muTreatmentProcedureId);
});
//let eventStartDate = $("#eventStartDate").val();
//let eventEndDate = $("#eventEndDate").val();
let eventStartDt = $("#eventStartDt").val();
let eventEndDt = $("#eventEndDt").val();
let file = $("#file")[0].files[0];
let content_file = $("#content_file")[0].files[0];
@@ -126,6 +126,8 @@ function fn_insertWebEvent() {
formData.append("treatmentprocedurelist", treatmentProcedureIdList);
formData.append("oldCrmItemId", $("#oldCrmItemId").val());
formData.append("ordNo", $("#ordNo").val());
formData.append("eventStartDt", eventStartDt);
formData.append("eventEndDt", eventEndDt);
$.ajax({
url: encodeURI('/contentsBbs/putContentsBbs.do'),
@@ -225,10 +227,28 @@ function fn_selectListWebTreatmentPetitIntro() {
* 페이지 init
****************************************************************************/
function fn_pageInit() {
// 날짜 datepicker
fn_searchDatePicker("#eventStartDate", "#eventEndDate");
// 날짜 datepicker (jQuery UI)
$("#eventStartDt, #eventEndDt").datepicker({
dateFormat: 'yy-mm-dd',
prevText: '이전 달',
nextText: '다음 달',
monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
monthNamesShort: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
dayNames: ['일', '월', '화', '수', '목', '금', '토'],
dayNamesShort: ['일', '월', '화', '수', '목', '금', '토'],
dayNamesMin: ['일', '월', '화', '수', '목', '금', '토'],
showMonthAfterYear: true,
yearSuffix: '년',
changeMonth: true,
changeYear: true
});
// 시작일 오늘 날짜 세팅
$("#eventStartDt").datepicker("setDate", new Date());
if (categoryDivCd === '02' || categoryDivCd === '04') {
$("#dateSelectionRow").show();
}
}
/****************************************************************************

View File

@@ -506,14 +506,30 @@ function fn_updateWebTreatmentPetitIntro(postNo, categoryNo){
let webTreatmentPetitColumnDefs = [
{ field: "checkbox", headerName: "", minWidth: 55, maxWidth: 55, headerCheckboxSelection: true, checkboxSelection: true },
{ field: "rowNum", headerName: "번호", minWidth: 60, maxWidth: 60, sortable: false, cellStyle: { textAlign: 'center' } },
{field: "categoryNm", headerName:"카테고리", minWidth:60},
{ field: "categoryNm", headerName: "카테고리", minWidth: 120, maxWidth: 130, cellStyle: { textAlign: 'center' } },
{ field: "title", headerName: "제목", minWidth: 150, cellStyle: { cursor: 'pointer', color: '#3985EA' } },
{ field: "content", headerName: "내용요약", minWidth: 150 },
{ field: "hashtag", headerName: "해시태그", minWidth: 150 },
{field: "regDt", headerName:"등록일",minWidth:100, maxWidth:150},
{field: "regNm", headerName:"작성자",minWidth:100, maxWidth:150},
{ field: "regDt", headerName: "등록일", minWidth: 100, maxWidth: 120, cellStyle: { textAlign: 'center' } },
{ field: "regNm", headerName: "작성자", minWidth: 100, maxWidth: 120, cellStyle: { textAlign: 'center' } },
];
console.log('Current categoryDivCd:', categoryDivCd);
if (categoryDivCd === '02' || categoryDivCd === '04') {
webTreatmentPetitColumnDefs = [
{ field: "checkbox", headerName: "", minWidth: 55, maxWidth: 55, headerCheckboxSelection: true, checkboxSelection: true },
{ field: "rowNum", headerName: "번호", minWidth: 60, maxWidth: 60, sortable: false, cellStyle: { textAlign: 'center' } },
{ field: "categoryNm", headerName: "카테고리", minWidth: 120, maxWidth: 130, cellStyle: { textAlign: 'center' } },
{ field: "title", headerName: "제목", minWidth: 150, cellStyle: { cursor: 'pointer', color: '#3985EA' } },
{ field: "content", headerName: "내용요약", minWidth: 150 },
{ field: "startDt", headerName: "시작일", minWidth: 100, maxWidth: 120, cellStyle: { textAlign: 'center' } },
{ field: "endDt", headerName: "종료일", minWidth: 100, maxWidth: 120, cellStyle: { textAlign: 'center' } },
{ field: "hashtag", headerName: "해시태그", minWidth: 150 },
{ field: "regDt", headerName: "등록일", minWidth: 100, maxWidth: 120, cellStyle: { textAlign: 'center' } },
{ field: "regNm", headerName: "작성자", minWidth: 100, maxWidth: 120, cellStyle: { textAlign: 'center' } },
];
}
// let the grid know which columns and what data to use
let webTreatmentPetitGridOptions = {
suppressRowTransform: true,
@@ -632,19 +648,19 @@ function fn_pageInit(){
****************************************************************************/
function fn_pageTreatmentPetit() {
// 검색 input
$(document).on('keypress', '#webTreatmentPetitSearchKeyword0', function(e) {
$(document).on('keypress', '#webTreatmentPetitSearchKeyword0', function (e) {
fn_webTreatmentPetitEnter(e);
});
// 검색 input
$(document).on('keypress', '#webTreatmentPetitSearchKeyword1', function(e) {
$(document).on('keypress', '#webTreatmentPetitSearchKeyword1', function (e) {
fn_webTreatmentPetitEnter(e);
});
// 검색 input
$(document).on('keypress', '#webTreatmentPetitSearchKeyword2', function(e) {
$(document).on('keypress', '#webTreatmentPetitSearchKeyword2', function (e) {
fn_webTreatmentPetitEnter(e);
});
// 검색 input
$(document).on('keypress', '#webTreatmentPetitSearchKeyword3', function(e) {
$(document).on('keypress', '#webTreatmentPetitSearchKeyword3', function (e) {
fn_webTreatmentPetitEnter(e);
});

View File

@@ -60,6 +60,9 @@ function fn_selectWebTreatmentPetit() {
$("#oldCrmItemId").val(data.oldCrmItemId);
$("#ordNo").val(data.ordNo);
if (data.startDt) $("#eventStartDt").val(data.startDt);
if (data.endDt) $("#eventEndDt").val(data.endDt);
treatmentList = [];
rst.treatmentList.forEach((item, i) => {
treatmentList.push({
@@ -117,8 +120,8 @@ function fn_updateWebTreatmentPetit() {
treatmentProcedureIdList.push(item.muTreatmentProcedureId);
});
//let eventStartDate = $("#eventStartDate").val();
//let eventEndDate = $("#eventEndDate").val();
let eventStartDt = $("#eventStartDt").val();
let eventEndDt = $("#eventEndDt").val();
let file = $("#file")[0].files[0];
let content_file = $("#content_file")[0].files[0];
@@ -143,8 +146,8 @@ function fn_updateWebTreatmentPetit() {
formData.append("thumbnailBottomTxt", thumbnailBottomTxt);
formData.append("treatmentlist", treatmentIdList);
formData.append("treatmentprocedurelist", treatmentProcedureIdList);
//formData.append("eventStartDate", eventStartDate);
//formData.append("eventEndDate", eventEndDate);
formData.append("eventStartDt", eventStartDt);
formData.append("eventEndDt", eventEndDt);
formData.append("file", file);
formData.append("content_file", content_file);
formData.append("oldCrmItemId", $("#oldCrmItemId").val());
@@ -255,9 +258,25 @@ function fn_selectListWebTreatmentPetitIntro() {
* 페이지 init
****************************************************************************/
function fn_pageInit() {
// 날짜 datepicker
fn_searchDatePicker("#eventStartDate", "#eventEndDate");
// 날짜 datepicker (jQuery UI)
$("#eventStartDt, #eventEndDt").datepicker({
dateFormat: 'yy-mm-dd',
prevText: '이전 달',
nextText: '다음 달',
monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
monthNamesShort: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
dayNames: ['일', '월', '화', '수', '목', '금', '토'],
dayNamesShort: ['일', '월', '화', '수', '목', '금', '토'],
dayNamesMin: ['일', '월', '화', '수', '목', '금', '토'],
showMonthAfterYear: true,
yearSuffix: '년',
changeMonth: true,
changeYear: true
});
if (categoryDivCd === '02' || categoryDivCd === '04') {
$("#dateSelectionRow").show();
}
fn_selectWebTreatmentPetit();
}

View File

@@ -4,6 +4,7 @@
<th:block layout:fragment="layout_css">
<link rel="stylesheet" href="/css/web/ContentsBbsUpd.css">
<link rel="stylesheet" href="/css/web/grid.css?v1.1">
<link rel="stylesheet" href="/css/web/datepicker-fix.css">
</th:block>
<th:block layout:fragment="layout_top_script">
<!-- Pagination usage removed -->
@@ -73,6 +74,18 @@
</div>
</div>
<!-- Date Selection (Event Only) -->
<div class="form-grid-row" id="dateSelectionRow" style="display:none;">
<div class="form-group">
<label>시작일</label>
<input type="text" id="eventStartDt" placeholder="YYYY-MM-DD" readonly />
</div>
<div class="form-group">
<label>종료일</label>
<input type="text" id="eventEndDt" placeholder="YYYY-MM-DD" readonly />
</div>
</div>
<!-- Row 4: Procedure Selection (Grid) -->
<div class="grid-section">
<div class="grid-header">

View File

@@ -1,8 +1,6 @@
<!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}">
<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">
<link rel="stylesheet" href="/css/web/webTreatmentPetitSelectList.css">
<link rel="stylesheet" href="/css/web/grid.css?v1.1">
@@ -70,7 +68,8 @@
<div class="search_list"></div><!-- 검색내역 나오는곳 -->
</div>
<button id="btnSearchWebTreatmentPetit" class="search_btn" data-toggle="modal" data-target=".work_closed_modal" style="transition: all 0.2s ease-in-out 0s;">조회</button>
<button id="btnSearchWebTreatmentPetit" class="search_btn" data-toggle="modal"
data-target=".work_closed_modal" style="transition: all 0.2s ease-in-out 0s;">조회</button>
</div>
<div class="right_btn_box">
@@ -99,6 +98,7 @@
</th:block>
<th:block layout:fragment="layout_script">
<script src="/js/web/ag-grid-community-29.3.5.min.js"></script>
<script src="/js/web/contentsBbs/ContentsBbsSelectList.js"></script>
<script src="/js/web/contentsBbs/ContentsBbsSelectList.js?v=3"></script>
</th:block>
</html>

View File

@@ -4,6 +4,7 @@
<th:block layout:fragment="layout_css">
<link rel="stylesheet" href="/css/web/ContentsBbsUpd.css">
<link rel="stylesheet" href="/css/web/grid.css?v1.1">
<link rel="stylesheet" href="/css/web/datepicker-fix.css">
</th:block>
<th:block layout:fragment="layout_top_script">
<!-- Pagination usage removed -->
@@ -76,6 +77,18 @@
</div>
</div>
<!-- Date Selection (Event Only) -->
<div class="form-grid-row" id="dateSelectionRow" style="display:none;">
<div class="form-group">
<label>시작일</label>
<input type="text" id="eventStartDt" placeholder="YYYY-MM-DD" readonly />
</div>
<div class="form-group">
<label>종료일</label>
<input type="text" id="eventEndDt" placeholder="YYYY-MM-DD" readonly />
</div>
</div>
<!-- Row 4: Treatment Grid -->
<div class="grid-section">
<div class="grid-header">