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 |
Tags
- 메소드오버로딩
- 사용자예외클래스생성
- 예외미루기
- 어윈 사용법
- GRANT VIEW
- 집합_SET
- 오라클
- 정수형타입
- 객체 비교
- EnhancedFor
- 컬렉션 타입
- 다형성
- exception
- NestedFor
- 제네릭
- cursor문
- 자동차수리시스템
- Java
- 대덕인재개발원
- 환경설정
- oracle
- 인터페이스
- 추상메서드
- 한국건설관리시스템
- 예외처리
- 자바
- abstract
- 컬렉션프레임워크
- 참조형변수
- 생성자오버로드
Archives
- Today
- Total
거니의 velog
(5) 회원 삭제 페이지 본문
[empResign.jsp]
<%@page import="kr.or.ddit.vo.EmployeeVO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
EmployeeVO loginSession = (EmployeeVO) session.getAttribute("loginSession");
System.out.println("loginSession : " + loginSession.toString());
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta charset="UTF-8" />
<meta name="author" content="four guys" />
<meta name="copyright" content="대덕인재개발원_306호" />
<meta name="description" content="전사적 자원 관리 시스템, ERP 입니다." />
<meta name="keywords" content="StockERP, Stock, ERP, 전사적자원관리시스템" />
<meta name="viewport" content="initial-scale=1.0, width=device-width" />
<title>StockERP 사원 탈퇴 화면</title>
<link href="<%= request.getContextPath() %>/css/common.css" rel="stylesheet" />
<link href="<%= request.getContextPath() %>/images/favicon.ico" rel="shortcut icon" />
<script src="<%= request.getContextPath() %>/js/jquery-3.7.1.min.js"></script>
<script defer src="<%= request.getContextPath() %>/js/script.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.9.0/css/all.min.css" rel="stylesheet" />
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<script>
$(function(){
// 사원 이미지 종횡비
var mainEmpBox = $(".empWel>div:first-of-type");
var mainEmpImg = $(".empWel img")
$.ratioBoxH(mainEmpBox, mainEmpImg);
// 이미지가 변경될 때 실행
$(mainEmpImg).on("load", function() {
// 이미지가 로드될 때마다 함수 실행
$.ratioBoxH(mainEmpBox, mainEmpImg);
});
// mainIcon 클릭 이벤트
var slideMenuClickToken = 0; // 처음에는 서브 메뉴가 숨겨진 상태
var slideMenuIdx = 0;
$(".slideMenu").click(function(){
var thisIs = $(this);
slideMenuIdx = thisIs.index();
var subNav = thisIs.parents("#mainPageContainerBox").find(".subNav");
subNav.stop().animate({
"left" : "-140px"
}, 200);
if(slideMenuClickToken == 0){ // 서브 메뉴가 숨겨진 상태
subNav.eq(slideMenuIdx-3).stop().animate({
"left" : "60px"
}, 200, function(){
slideMenuClickToken = 1; // 서브 메뉴가 보여진다고 표시
});
}else if(slideMenuClickToken == 1){ // 서브 메뉴가 보여진 상태
subNav.eq(slideMenuIdx-3).stop().animate({
"left" : "-140px"
}, 200, function(){
slideMenuClickToken = 0; // 서브 메뉴가 안보여진다고 표시
});
}
console.log("slideMenuClickToken : " + slideMenuClickToken);
console.log("slideMenuIdx : " + slideMenuIdx);
});
$(".mainIcon:first-of-type").click(function(){
location.href = "<%= request.getContextPath() %>/main/mainPage.jsp";
});
$("#logoutBtn").click(function(){
location.href = "<%= request.getContextPath() %>/LogoutServlet.do";
});
$(".empAdd").click(function(){
location.href = "<%= request.getContextPath() %>/main/empRegister.jsp";
});
// 회원 탈퇴 추가 스크립트
$("#empExit").click(function(){
var empExitChkVal = $("#empRemove").prop("checked");;
if(empExitChkVal){
alert("회원 탈퇴가 성공적으로 끝났습니다.");
location.href = "<%= request.getContextPath() %>/empDelete.do?empno=<%= loginSession.getEmpno() %>&fileno=<%= loginSession.getEmpphoto() %>&completedel=true";
}else {
alert("회원 탈퇴에 동의해 주셔야 합니다.");
return false;
}
});
$("#goToHome").click(function(){
location.href = "<%= request.getContextPath() %>/main/mainPage.jsp";
});
});
</script>
</head>
<body>
<div id="mainPageContainerBox">
<!-- gnb -->
<header>
<a href="<%= request.getContextPath() %>/main/mainPage.jsp">
<img src="<%= request.getContextPath() %>/images/logo.png" alt="로고 이미지" />
</a>
<div>
<div class="empWel">
<div>
<%-- <img src="<%= request.getContextPath() %>/images/<%= loginSession.getEmpno() %>/emp_<%= loginSession.getEmpno() %>.jpg" alt="사원 이미지" /> --%>
<img src="<%= request.getContextPath() %>/images/imgView.do?fileno=<%= loginSession.getEmpphoto() %>" alt="사원 이미지" />
</div>
<p>
[<%= loginSession.getEmpname() %>] 님 환영합니다!
</p>
</div>
<div class="logoutCont">
<button id="logoutBtn" class="btn btn-info btn-sm" type="button">LOGOUT</button>
</div>
</div>
</header>
<!-- lnb -->
<nav class="mainNav">
<ul class="mainIcon">
<li class="main">
<i class="fas fa-home"></i>
<span>HOME</span>
</li>
</ul>
<ul class="mainIcon empAdd">
<li class="main">
<i class="material-icons" style="font-size: 2.2em;">person_add</i>
<span>ADD</span>
</li>
</ul>
<ul class="mainIcon">
<li class="main">
<i class="fa fa-volume-up"></i>
<span>NOTI</span>
</li>
</ul>
<ul class="mainIcon slideMenu">
<li class="main">
<i class="fa fa-id-card"></i>
<span>INFO</span>
</li>
</ul>
<ul class="mainIcon slideMenu">
<li class="main">
<i class="fas fa-clipboard"></i>
<span>SIGN</span>
</li>
</ul>
<ul class="mainIcon slideMenu">
<li class="main">
<i class="fa fa-list-alt"></i>
<span>DOCU</span>
</li>
</ul>
</nav>
<nav class="subNav">
<ul>
<li>사원정보 확인</li>
<li><a href="<%= request.getContextPath() %>/empList.do">사원 리스트</a></li>
<li><a href="<%= request.getContextPath() %>/main/empUpdate.jsp">사원 정보 수정</a></li>
<li><a href="<%= request.getContextPath() %>/main/empResign.jsp">회원 탈퇴</a></li>
</ul>
</nav>
<nav class="subNav">
<ul>
<li>전자결재</li>
<li><a href="javascript:void(0)">소메뉴 1</a></li>
<li><a href="javascript:void(0)">소메뉴 2</a></li>
<li><a href="javascript:void(0)">소메뉴 3</a></li>
<li><a href="javascript:void(0)">소메뉴 4</a></li>
</ul>
</nav>
<nav class="subNav">
<ul>
<li>결재서류 확인</li>
<li><a href="javascript:void(0)">소메뉴 1</a></li>
<li><a href="javascript:void(0)">소메뉴 2</a></li>
<li><a href="javascript:void(0)">소메뉴 3</a></li>
<li><a href="javascript:void(0)">소메뉴 4</a></li>
</ul>
</nav>
<!-- mainPage -->
<section class="empResign">
<div>
<div>
<h1>회원탈퇴</h1>
</div>
<div>
<h2>회원을 탈퇴하시겠습니까?</h2>
<p>
회원탈퇴 시 개인정보 및 StockERP에서 만들어진 모든 데이터는 삭제됩니다.
<br />
(단, 아래 항목은 표기된 법률에 따라 특정 기간 동안 보관됩니다.)
</p>
<article>
<ol>
<li>
계약 또는 청약철회 등에 관한 기록 보존 이유 : 전자상거래 등에서의 소비자보호에 관한 법률 / 보존 기간 : 5년
</li>
<li>
대금결제 및 재화 등의 공급에 관한 기록 보존 이유 : 전자상거래 등에서의 소비자보호에 관한 법률 / 보존 기간 : 5년
</li>
<li>
전자금융 거래에 관한 기록 보존 이유 : 전자금융거래법 보존 기간 / 보존 기간 : 5년
</li>
<li>
소비자의 불만 또는 분쟁처리에 관한 기록 보존 이유 : 전자상거래 등에서의 소비자보호에 관한 법률 보존 기간 / 보존 기간 : 3년
</li>
<li>
신용정보의 수집/처리 및 이용 등에 관한 기록 보존 이유 : 신용정보의 이용 및 보호에 관한 법률 보존 기간 / 보존 기간 : 3년
</li>
<li>
전자(세금)계산서 시스템 구축 운영하는 사업가가 지켜야 할 사항 고시(국세청 고시 제 2016-3호)(전자세금계산서 사용자에 한함) / 보존 기간 5년
<br />
(단, (세금)계산서 내 개인식별번호는 3년 경과 후 파기)
</li>
</ol>
</article>
</div>
<div>
<h2>유의사항</h2>
<article>
<ul>
<li>
회원탈퇴 처리 후에는 회원님의 개인정보를 복원할 수 없으며, 회원탈퇴 진행 시 해당 아이디는 영구적으로 삭제되어 재가입이 불가능합니다.
</li>
<li>
소속된 회사가 존재할 경우, "탈퇴" 회원으로 조회됩니다.
</li>
<li>
회사가 StockERP 내에 존재하는 경우, 회사에 귀속된 데이터에 대해서는 보관됩니다.
</li>
</ul>
</article>
<div>
<input id="empRemove" name="empRemove" type="checkbox" />
<label for="empRemove">해당 내용을 모두 확인했으며, 회원 탈퇴에 동의합니다.</label>
</div>
</div>
<div>
<button id="goToHome" type="button">홈으로</button>
<button id="empExit" type="button">탈퇴하기</button>
</div>
</div>
</section>
</div>
</body>
</html>
[EmpDelete.java]
package kr.or.ddit.controller;
import java.io.File;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import kr.or.ddit.service.CommonServiceImpl;
import kr.or.ddit.service.ICommonService;
import kr.or.ddit.vo.FileInfoVO;
@WebServlet("/empDelete.do")
public class EmpDelete extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
String empno = request.getParameter("empno");
System.out.println("empno : " + empno);
String strfileno = request.getParameter("fileno");
System.out.println("strfileno : " + strfileno);
String completedel = request.getParameter("completedel");
System.out.println("completedel : " + completedel);
if(!("null".equals(strfileno))) {
//System.out.println("null이 스트링타입이에용");
int fileNo = Integer.parseInt(strfileno);
ICommonService fileService = CommonServiceImpl.getInstance();
FileInfoVO fvo = fileService.getFileInfo(fileNo);
int delFile = fileService.deleteFile(fileNo);
if(delFile > 0) {
System.out.println("파일이 삭제되었습니다.");
}else {
System.out.println("파일을 찾을 수 없어 삭제하지 못했습니다.");
}
String uploadPath = "c:/erpCommonImg/images/";
String uploadimg = String.valueOf(fvo.getSavefilename());
File f = new File(uploadPath + uploadimg);
if(f.exists()) { // 파일 존재 여부 확인
f.delete();
System.out.println("진짜 물리적 파일도 삭제되었습니다.");
}
}
ICommonService empService = CommonServiceImpl.getInstance();
int delEmp = empService.deleteEmp(empno);
if(delEmp > 0) {
System.out.println("사원 정보가 삭제되었습니다.");
}else {
System.out.println("사원 정보를 삭제하지 못했습니다.");
}
if(completedel != null) { // 로그인한 사원을 확실하게 삭제
//System.out.println("로그인한 사원을 삭제합니다.");
HttpSession session = request.getSession();
session.invalidate(); // 세션 삭제
response.sendRedirect(request.getContextPath() + "/index.jsp");
}else { // 회원 등록 페이지에서 처리하는 경우
//System.out.println("회원등록 페이지에서 회원을 삭제합니다.");
response.sendRedirect(request.getContextPath() + "/main/empRegister.jsp");
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
'대덕인재개발원_2nd project' 카테고리의 다른 글
(7) MyBatis 세팅 (0) | 2023.10.20 |
---|---|
(6) common.css (0) | 2023.10.20 |
(4) 회원 수정 페이지 (0) | 2023.10.20 |
(3) 회원 조회 페이지 (0) | 2023.10.20 |
(2) 회원 가입 페이지 (0) | 2023.10.20 |