반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Maven vs Gradle
- AWS회원가입
- var 와 let의 차이점
- Bandit Level 8 → Level 9
- ExecuteUpdate()
- wargame bandit7
- 톰캣 독립실행
- aws ec2 window
- The JAVA_HOME environment variable is not defined correctly
- SQL vs PL/SQL
- kakaomapapi kakaoapi kakaomap study
- EC2 인스턴스 생성하기
- linux'|'
- error JNI
- 프로그래머스 #코딩테스트 #입문 #lv.0 #나머지구하기
- linux uniq -u
- banditlevel8
- Springboot WebPage 배포
- commit 안찍힐 때
- Thymeleaf 오류#Thymeleaf Exception processing template ""
- linux grep
- 개발자 면접 질문
- 코딩일기
- gradle 배포
- executeUpdate() commit
- Bandit Level 7 → Level 8
- oracle commit
- aws ec2 putty 연결
- JNI error
- 톰캣 실행 에러
Archives
- Today
- Total
"코딩세끼"
2. 메뉴 삭제 관리 본문
반응형
1. 요구사항.
최초 설계 : DB에서 삭제하도록 했었음.
수정 : DB에서 삭제하면 DATA를 버리게 됨으로 soft 삭제하는 것으로 방향 수정.
+ 다른 주문 관련된 Data들과도 fk 로 연동되어 삭제불가.
+ 활성화 비활성화로 인해 구매자가 볼 수 있도록 전달.
요청 이벤트 | veiw | Js | controller | VO | service/imple | DB |
클릭 요청 | 비활성화 클릭(die 전달) 활성화 클릭 (live 전달) |
컨트롤러에 data 송신 |
data를 DB에 전달 | service에 두가지 조건을 작성 die / live 비활성화: die 활성화 :live |
menuLive column에 die 와 live 수신 default : live |
|
응답 | 활성화로 변환 (die 수신) 비활성화로 변환 (live 수신) |
컨트롤러에서 data를 'success'로 받아옴 |
JS로 전달 | DB에 있는 menuLive의 data를 vo에 싣고 컨트롤러 감 |
아래 영상으로 보시겠습니다.
● 작성 중 어려웠던 사항.
function menuDie(vsindex,menuIndex) {
if(confirm(" 통계자료를 확인해보세요.\n 비활성화 또는 활성화 하시겠습니까? ")){
$.ajax({
url:'menuDie',
type:'post',
data:{
menuIndex : menuIndex,
menuLive : $('#menulife-btn'+vsindex).text()=='비활성화'? 'die' : 'live'
},
success:function(data){ // 성공하면 아래 작업을 실행한다.
if(data.success == 'success'){
$('.a'+vsindex).val(data.success);
if($('#menulife-btn'+vsindex).text()=='비활성화'){
$('#menulife-btn'+vsindex).text('활성화');
console.log('activity success DB=menuLive : die');
$('#t_menuselect').load('menuList #t_menuselect');
}else{
console.log('activity success DB=menuLive : live');
$('#menulife-btn'+vsindex).text('비활성화');
$('.a'+vsindex).css('text-decoration','none');
$('#t_menuselect').load('menuList #t_menuselect');
}
}
},error:function(){
console.log("비활성화 받아오기 실패");
alert("비활성화 전송에 실패하였습니다.");
}
})//ajax
}//confirm
}//.click
기능 중 ajax를 사용하여 해당 행만 리로드 하는 기능이 있는데 이를 구현하기 위해
html의 <table> 기준으로 <c:foreach> 내의 <c:if>기능이 있었는데 어느 태그에 작동하라고 선언해야 할지 처음에는 많이 해매었다. 하지만, table의 특성상, 클래스나, 다른 ID에 적용하면 반복문으로 인해 그 행에 그만큼 반복된 다는 것을 느꼈고, table 전체를 어우르는 table tag에 선언해야 한다는 것을 알았다.
초보자 글 읽어주셔서 감사합니다.
보완해야 할 것이 있다면 감사히 듣겠습니다.
감사합니다.
반응형
'프로그래머로 전직하기 > 첫번째 프로젝트 : Federico' 카테고리의 다른 글
Kakao Map API 사용하기 (0) | 2022.02.12 |
---|---|
JNI 오류( A jni error) (0) | 2022.01.31 |
1. 본사-메뉴-삭제 (0) | 2022.01.22 |
오늘 공부한 내용. (0) | 2022.01.14 |