프로젝트 코드리뷰/Travel Maker

Travel Maker - 글 조회 제한 기능

SooHw 2023. 8. 25. 10:22
<% 
InfoDAO idao = new InfoDAO();
HisDTO show_his = idao.searchHis(new InfoDTO(user_id, info_num));

boolean hasShowHis = show_his != null;
%>



<button id="purchaseButton" 
<% if (hasShowHis) { %>
    class="blue-button"
<% } else { %>
    class="gray-button" disabled<% } %>>
상세정보 보러가기
</button>


<script>
    document.addEventListener('DOMContentLoaded', function() {
        const purchaseButton = document.getElementById('purchaseButton');

        <% if (hasShowHis) { %>
        purchaseButton.addEventListener('click', function() {
            window.location.href = '정보거래구매후테스트본.jsp?info_num=<%=info_num%>';
        });
        <% } else { %>
        purchaseButton.addEventListener('click', function() {
            alert('구매해주세요');
        });
        <% } %>
    });
</script>

 

 

boolean hasShowHis = show_his != null

-> show_his가 null이 아니면 hasShowHis에 true 할당,

show_his가 null이면 hasShowHis에 false 할당

 

DAO, Mapper

public HisDTO searchHis(InfoDTO dto) {
	SqlSession session = sqlSessionFactory.openSession(true);
	HisDTO show_his = session.selectOne("searchHis", dto);
	session.close();
	return show_his;
}


<select id="searchHis" parameterType="InfoDTO" resultType="HisDTO">
	select * from trade_his where user_id=#{user_id} and info_num=#{info_num}
</select>