크루메이트 코드 리뷰!!

식단 관리 - 회원 정보 조회, 등록, 수정, 삭제

행복하게사는게꿈 2020. 9. 18. 03:36

회원 정보 관리.js

function insertDietMemBTN(){
	$('#div_dietMem_right').empty();

	var insertDietMemForm = '<div id ="insertDietMemForm">';
		insertDietMemForm += '키 : <input type="text" id="height" placeholder="키를 입력해주세요"><br><br>';
		insertDietMemForm += '몸무게 : <input type="text" id="current_weight" placeholder="현재 몸무게를 입력해주세요"><br><br>';
		insertDietMemForm += '목표 몸무게 : <input type="text" id="purpose_weight" placeholder="목표 몸무게를 입력해주세요"><br><br>';
		insertDietMemForm += '<div class="form-check">';
		insertDietMemForm += '<div>';
		insertDietMemForm += '<input class="form-check-input" type="radio" name="activity" value="25" checked="">';
		insertDietMemForm += '<label class="form-check-label" >';			
		insertDietMemForm += '활동량 적음'; 				
		insertDietMemForm += '</label>';
		insertDietMemForm += '</div>';
		insertDietMemForm += '<div>';
		insertDietMemForm += '<input class="form-check-input" type="radio" name="activity" value="30" checked="">';
		insertDietMemForm += '<label class="form-check-label" >';			
		insertDietMemForm += '활동량 보통'; 				
		insertDietMemForm += '</label>';
		insertDietMemForm += '</div>';
		insertDietMemForm += '<div>';			
		insertDietMemForm += '<input class="form-check-input" type="radio" name="activity" value="40" checked="">';
		insertDietMemForm += '<label class="form-check-label" >';			
		insertDietMemForm += '활동량 많음'; 				
		insertDietMemForm += '</label>';
		insertDietMemForm += '</div>';									
		insertDietMemForm += '</div>';					
		insertDietMemForm += '<button type="button" onclick="insertDietMem();">등록</button><br>';
		insertDietMemForm += '<button type="button" onclick="cancelDietMem();">취소</button><br>';
	
		$('#div_dietMem_right').append(insertDietMemForm);
}

function insertDietMem(){
	$.ajax({
		url : 'insertDietMem',
		data : {
			height : $('#height').val(),
			current_weight : $('#current_weight').val(),
			purpose_weight : $('#purpose_weight').val(),
			activity : $('input[name="activity"]:checked').val()
		},
		success : function(result){
			$('#div_dietMem_right').empty();
			$('#div_dietMem_right').append('<button id="insertDietMem" class="btn btn-grad" onclick="insertDietMemBTN();">등록</button>');
			
		
		},
		complete : function() {
    		dietMemList();
                             
        },
		error : function(result){
			alert('insertDietMem 실패');
		}
	});
}

function cancelDietMem(){
	$('#div_dietMem_right').empty();
	$('#div_dietMem_right').append('<button id="insertDietMem" class="btn btn-grad" onclick="insertDietMemBTN();">등록</button>');
}



function dietMemList(){
	$.ajax({
		url : 'dietMemListAjax',
		success : function(result){
		
			$('#lastDietMem').empty();
			var lastDietMem = '<li class="list-group-item">내 키 : ' + result.dietMemLast.height + '</li>';
			lastDietMem +=	'<li class="list-group-item">몸무게 : ' + result.dietMemLast.current_weight + '</li>';
			lastDietMem +=	'<li class="list-group-item">목표 몸무게 : ' + result.dietMemLast.purpose_weight + '</li>';
			lastDietMem +=	'<li class="list-group-item">BMI : ' + result.dietMemLast.bmi + '</li>';
			lastDietMem +=  '<li class="list-group-item">일일 목표 열량 : ' + result.dietMemLast.day_kcal + '</li>';
			$('#lastDietMem').append(lastDietMem);
		
			$('#dietMemDetail').empty();
						
								
			var count = 1;
			$.each(result.dietMemList, function(index, item){
				count ++;
 				var dietMemDetail = '<div class="accordion-item">';
 				dietMemDetail += '<div class="accordion-title">';
 				dietMemDetail += '<a class="h6 mb-0 collapsed" data-toggle="collapse" href="#collapse-'+count+'" aria-expanded="false">'+item.dm_date.split(' ')[0]+'</a>'
 				dietMemDetail += '</div>';
 				dietMemDetail += '<div class="collapse" id="collapse-'+count+'" data-parent="#dietMemDetail" style="">';
 				dietMemDetail += '<div class="accordion-content">';
 				dietMemDetail += '키 : <a>'+item.height+'</a><br>';
 				dietMemDetail += '체중 : <a>'+item.current_weight+'</a><br>';
 				dietMemDetail += '목표 체중 : <a>'+item.purpose_weight+'</a><br>';
 				dietMemDetail += 'BMI : <a>'+item.bmi+'</a><br>';
 				dietMemDetail += '일일 목표 열량 : <a>'+item.day_kcal+'</a><br>';
 				dietMemDetail += '</div>';
 				dietMemDetail += '<div>';
 				dietMemDetail += '<button id="updateDietMem" class="btn btn-grad" onclick="updateDietMemForm(this);">수정</button>';
 				dietMemDetail += '<button id="deleteDietMem" class="btn btn-grad" onclick="deleteDietMem(this);">삭제</button>';
 				dietMemDetail += '</div>';
 				dietMemDetail += '</div>';
 				dietMemDetail += '</div>';
 				$('#dietMemDetail').append(dietMemDetail);
 			 });
		},
		error : function(result){
			alert('dietMemList 실패');
		}
	})
}




function deleteDietMem(e){
	var appendDiv = $(e).closest('div').prev();
	var dietMemInfoDmNo = $(e).prev().prev().val();

	$.ajax({
		url : 'deleteDietMemInfo',
		data : {
			dm_no : dietMemInfoDmNo
		},
		success : function(result){
			
		},
		error : function(result){

		},
		complete : function() {
    		dietMemList();
                             
        },
	})
}


function updateDietMemComplete(e){
	var appendDiv = $(e).closest('div').prev();
	var dietMemInfoDmNo = $(e).prev().val();


	var update_height = appendDiv.find('.update_height').val();
	var update_weight = appendDiv.find('.update_weight').val();
	var update_purpose_weight = appendDiv.find('.update_purpose_weight').val();
	var update_bmi = appendDiv.find('.update_bmi').val();
	var update_day_kcal = appendDiv.find('.update_day_kcal').val();

	$.ajax({
		url : 'updateDietMemInfo',
		data : { 
			dm_no : dietMemInfoDmNo,
			height : update_height,
			current_weight : update_weight,
			purpose_weight : update_purpose_weight,
			bmi : update_bmi,
			day_kcal : update_day_kcal	
		},
		success : function(result){
			appendDiv.empty();
			var dietMemInfo = '키 : <a class="height">'+update_height+'</a><br>';
			dietMemInfo += '체중 : <a class="weight">'+update_weight+'</a><br>';
			dietMemInfo += '목표 체중 : <a class="purpose_weight">'+update_purpose_weight+'</a><br>';
			dietMemInfo += 'BMI : <a class="bmi">'+update_bmi+'</a><br>';
			dietMemInfo += '일일 목표 열량 : <a class="day_kcal">'+update_day_kcal+'</a><br>';  
			appendDiv.append(dietMemInfo);

			$('#updateDietMemBTN').text('수정');
			$('#updateDietMemBTN').attr('onclick', 'updateDietMemForm(this)');
		},
		error : function(result){
			alert('회원 정보 수정 실패');
		}
	})
}


function updateDietMemForm(e){
	var appendDiv = $(e).closest('div').prev();
	var dietMemInfoDmNo = $(e).prev();

	var height = appendDiv.find('.height').text();
	var weight = appendDiv.find('.weight').text();
	var purpose_weight = appendDiv.find('.purpose_weight').text();
	var bmi = appendDiv.find('.bmi').text();
	var day_kcal = appendDiv.find('.day_kcal').text();

	appendDiv.empty();

	var dietMemInfo = '키 : <textarea class="update_height" style="background-color:transparent; height:19px;">'+height+'</textarea><br><br>';
	dietMemInfo += '체중 : <textarea class="update_weight" style="background-color:transparent; height:19px;">'+weight+'</textarea><br><br>';
	dietMemInfo += '목표체중 : <textarea class="update_purpose_weight" style="background-color:transparent; height:19px;">'+purpose_weight+'</textarea><br><br>';
	dietMemInfo += 'bmi : <textarea class="update_bmi" style="background-color:transparent; height:19px;">'+bmi+'</textarea><br><br>';
	dietMemInfo += '일일 목표 열량 : <textarea class="update_day_kcal" style="background-color:transparent; height:19px;">'+day_kcal+'</textarea><br><br>';
	appendDiv.append(dietMemInfo);	

	$('#updateDietMemBTN').text('완료');
	$('#updateDietMemBTN').attr('onclick', 'updateDietMemComplete(this)');
}