Files
vexplor/WebContent/WEB-INF/view/problem/problemRegistListPopup.jsp
2025-08-21 09:41:46 +09:00

399 lines
13 KiB
Plaintext

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="com.pms.common.utils.*"%>
<%@ page import="java.util.*" %>
<%@include file= "/init.jsp" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title><%=Constants.SYSTEM_NAME%></title>
<!-- JSTL 페이징변수선언 -->
<c:set var="totalCount" value="${empty TOTAL_COUNT?0:TOTAL_COUNT}" />
<c:set var="maxPage" value="${empty MAX_PAGE_SIZE?1:MAX_PAGE_SIZE}" />
<c:set var="nPage" value="${empty param.page?1:param.page}" />
<c:set var="pageIndex" value="${(nPage-1)/10}" />
<c:set var="nextPage" value="${empty NEXT_PAGE?1:NEXT_PAGE}" />
<c:set var="prevPage" value="${empty PREV_PAGE?1:PREV_PAGE}" />
<script>
$(function(){
//문제점등록 팝업
$(".btnRegist").click(function(){
var targetObjId = $("#targetObjId").val();
var params = "&actionType=regist"
window.open("/problem/problemFormPopup.do?targetObjId="+targetObjId+params, "", "width=1337, height=800" );
});
//문제점 상세 팝업
$(".btnDetail").click(function(){
var objId = $(this).attr("data-OBJID");
var targetObjId = $(this).attr("data-TARGET_OBJID");
var params = "";
params += "?objId="+objId;
params += "&targetObjId="+targetObjId;
window.open("/problem/problemDetailPopup.do"+params, "", "width=1337, height=800");
});
//확인결과 반영
$(".status").change(function(){
var objId = $(this).attr("data-OBJID");
var targetObjId = $(this).attr("data-TARGET_OBJID");
var status = $(this).val();
fn_changeStatus(status, objId, targetObjId);
});
//과거차 대상여부 변경
$(".continualMngType").change(function(){
var objId = $(this).attr("data-OBJID");
var type = $(this).val();
fn_changeContinualMngType(type, objId);
});
});
</script>
<script>
function fn_refresh(){
document.form1.action = "/problem/problemRegistListPopup.do";
document.form1.submit();
}
function fn_search(){
document.form1.action = "/problem/problemRegistListPopup.do";
document.form1.submit();
}
//상태변경
function fn_changeStatus(status, objId, targetObjId){
$.ajax({
url:"/problem/changeProblemStatusInfo.do",
type:"POST",
data:{"objId":objId, "status":status, "targetObjId":targetObjId},
dataType:"text",
success:function(data){
},
error: function(jqxhr, status, error){
}
});
}
//과거차 대상여부 변경
function fn_changeContinualMngType(type, objId){
$.ajax({
url:"/problem/changeProblemContinualMngTypeInfo.do",
type:"POST",
data:{"objId":objId, "type":type},
dataType:"text",
success:function(data){
},
error: function(jqxhr, status, error){
}
});
}
//첨부파일 미리보기
function openImagePopUp(url){
var img=new Image();
img.src=url;
var img_width=img.width;
var img_height=img.height;
var win_width=img.width+25;
var height=img.height+30;
window.open(url,"partListShapeImgPopUp","width="+img_width+",height="+height+", menubars=no, scrollbars=yes'");
}
</script>
</head>
<body onUnload="opener.fn_search()">
<form name="form1" action="" method="post">
<input type="hidden" name="targetObjId" id="targetObjId" value="${param.targetObjId}" />
<div id="pageMinWidth">
<div class="plm_menu_name">
<h2>
<span>문제점 조회</span>
</h2>
</div>
<section class="contents_page_basic_margin">
<div>
<table class="pmsPopupForm">
<colgroup>
<col width="10%"/>
<col width="*"/>
<col width="10%"/>
<col width="*"/>
<col width="10%"/>
<col width="*"/>
<col width="10%"/>
<col width="*"/>
</colgroup>
<tr>
<td class="input_title">
<label for="">지역</label>
</td>
<td class="tr_data_border_bottom">
<c:choose>
<c:when test="${info.REGION eq 'D'}">
국내
</c:when>
<c:when test="${info.REGION eq 'F'}">
해외
</c:when>
<c:otherwise>
${info.REGION}
</c:otherwise>
</c:choose>
</td>
<td class="input_title">
<label for="">고객사</label>
</td>
<td class="tr_data_border_bottom" title="${info.OEM_NAME}">${info.OEM_NAME}</td>
<td class="input_title">
<label for="">차종</label>
</td>
<td class="tr_data_border_bottom" title="${info.CAR_CODE} (${info.CAR_NAME})">${info.CAR_CODE} (${info.CAR_NAME})</td>
<td class="input_title">
<label for="">제품군</label>
</td>
<td class="tr_data_border_bottom" title="${info.PROD_GROUP_NAME}">${info.PROD_GROUP_NAME}</td>
</tr>
<tr>
<td class="input_title">
<label for="">제품</label>
</td>
<td class="tr_data_border_bottom" title="${info.PROD_NAME}">${info.PROD_NAME}</td>
<td class="input_title"><label for="">단계</label></td>
<td class="tr_data_border_bottom" title="${info.STEP1_TITLE} ${info.STEP2}">
${info.STEP1_TITLE} ${info.STEP2}
</td>
<td class="input_title">
<label for="">검사명</label>
</td>
<td class="tr_data_border_bottom" title="${info.TEST_TYPE_NAME}">${info.TEST_TYPE_NAME}</td>
<td class="input_title">
<label for="">조치담당자</label>
</td>
<td class="tr_data_border_bottom" title="${info.RES_PIC_DEPT_NAME} ${info.RES_PIC_USER_NAME}">${info.RES_PIC_DEPT_NAME} ${info.RES_PIC_USER_NAME}</td>
</tr>
<tr>
<td class="input_title">
<label for="">제목</label>
</td>
<td colspan="7" class="tr_data_border_bottom" title="${info.TITLE}">${info.TITLE}</td>
</tr>
</table>
</div>
<div class="btn_wrap">
<div class="plm_btn_wrap">
<c:if test="${info.STATUS eq 'create'}">
<c:if test="${empty info.DISTRIBUTE_DATE}">
<input type="button" value="문제점 등록" class="plm_btns btnRegist">
</c:if>
</c:if>
</div>
</div>
<div class="plm_table_wrap">
<table class="plm_table">
<colgroup>
<col width="2%">
<col width="6%">
<col width="5%">
<col width="5%">
<col width="*">
<col width="*">
<col width="100px;">
<col width="*">
<col width="5%">
<col width="5%">
<col width="5%">
<col width="5%">
<col width="5%">
<col width="5%">
</colgroup>
<thead>
<tr class="plm_thead">
<td rowspan="2">No</td>
<td rowspan="2">품번</td>
<td rowspan="2" colspan="2">유형</td>
<td rowspan="2">제목</td>
<td rowspan="2" colspan="2">문제점</td>
<td rowspan="2">개선대책</td>
<td colspan="2">제기</td>
<td colspan="2">반영</td>
<td rowspan="2">확인결과</td>
<td rowspan="2">과거차<br>대상여부</td>
</tr>
<tr class="plm_sub_thead">
<td>제기일</td>
<td>조치요청일</td>
<td>반영예정일</td>
<td>반영여부</td>
</tr>
</thead>
<tbody class="hover_tr">
<c:choose>
<c:when test="${!empty LIST}">
<c:forEach var="i" items="${LIST}" varStatus="status">
<tr>
<td>${i.RNUM}</td>
<td title="${i.PART_NO}">${i.PART_NO}</td>
<td title="${i.TYPE1_TITLE}">${i.TYPE1_TITLE}</td>
<td title="${i.TYPE2}">${i.TYPE2}</td>
<td class="align_l" title="${i.SUBJECT}"><a href="#" class="btnDetail ellipsis" data-OBJID="${i.OBJID}" data-TARGET_OBJID="${i.TARGET_OBJID}" title="${i.SUBJECT}">&nbsp;&nbsp;${i.SUBJECT}</a></td>
<td title="${i.PROBLEM_CONTENTS}"><span class="ellipsis align_l">&nbsp;&nbsp;${i.PROBLEM_CONTENTS}</span></td>
<td>
<c:choose>
<c:when test="${empty i.PROBLEM_ATTACH_REAL_FILE_NAME}">
<div class="no_img_icon"></div>
</c:when>
<c:otherwise>
<script>
var srcLocation = encodeURI("/common/viewImage.do?realFileName="+"${i.PROBLEM_ATTACH_REAL_FILE_NAME}"+"&savedFileName="+"${i.PROBLEM_ATTACH_SAVED_FILE_NAME}"+"&attDir="+"${i.PROBLEM_ATTACH_FILE_PATH}");
document.write("<img src='"+srcLocation+"' height='68px' width='auto' onclick='openImagePopUp(this.src)' style='cursor:pointer;'/>");
</script>
</c:otherwise>
</c:choose>
</td>
<td class="" title="${i.RESPONSE_CONTENTS}"><span class="ellipsis align_l">&nbsp;&nbsp;${i.RESPONSE_CONTENTS}</span></td>
<td title="${i.REQ_DATE}">${i.REQ_DATE}</td>
<td title="${i.RES_PLAN_DATE}">${i.RES_PLAN_DATE}</td>
<td>${empty i.REFLECT_PLAN_DATE?'미입력':i.REFLECT_PLAN_DATE}</td>
<td>
<c:choose>
<c:when test="${i.REFLECT_RESULT eq 'Y'}">
반영완료
</c:when>
<c:when test="${i.REFLECT_RESULT eq 'N'}">
미반영
</c:when>
<c:otherwise>
미입력
</c:otherwise>
</c:choose>
</td>
<td>
<c:choose>
<c:when test="${info.STATUS eq 'complete'}">
<c:choose>
<c:when test="${i.STATUS eq 'create'}">
미결
</c:when>
<c:when test="${i.STATUS eq 'complete'}">
조치완료
</c:when>
<c:otherwise>
${i.STATUS}
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<c:choose>
<c:when test="${isWriter}">
<select name="status" data-OBJID="${i.OBJID}" data-TARGET_OBJID="${i.TARGET_OBJID}" class="status">
<option value="create" ${i.STATUS eq 'create'?'selected':''}>미결</option>
<option value="complete" ${i.STATUS eq 'complete'?'selected':''}>조치완료</option>
</select>
</c:when>
<c:otherwise>
<c:choose>
<c:when test="${i.STATUS eq 'create'}">
미결
</c:when>
<c:when test="${i.STATUS eq 'complete'}">
조치완료
</c:when>
<c:otherwise>
${i.STATUS}
</c:otherwise>
</c:choose>
</c:otherwise>
</c:choose>
</c:otherwise>
</c:choose>
</td>
<td>
<c:choose>
<c:when test="${isWriter}">
<select name="continualMngType" class="continualMngType" data-OBJID="${i.OBJID}">
<option value="Y" ${i.CONTINUAL_MNG_TYPE eq 'Y'?'selected':''}>대상</option>
<option value="N" ${i.CONTINUAL_MNG_TYPE eq 'N'?'selected':''}>비대상</option>
</select>
</c:when>
<c:otherwise>
<c:choose>
<c:when test="${i.CONTINUAL_MNG_TYPE eq 'Y'}">
대상
</c:when>
<c:when test="${i.CONTINUAL_MNG_TYPE eq 'N'}">
비대상
</c:when>
<c:otherwise>
${i.CONTINUAL_MNG_TYPE}
</c:otherwise>
</c:choose>
</c:otherwise>
</c:choose>
</td>
</tr>
</c:forEach>
</c:when>
<c:otherwise>
<tr>
<td colspan="14" align="center">등록된 문제점이 없습니다.</td>
</tr>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
<div class="pdm_page">
<input type="hidden" name="page" id="page" value="${nPage}">
<c:if test="${!empty LIST}">
<div class="page_pro">
<table>
<tr>
<c:choose>
<c:when test="${nPage > 1}">
<td><a href="javascript:fnc_goPrev('${prevPage}');">prev</a></td>
</c:when>
<c:otherwise>
<td class="no_more_page">prev</td>
</c:otherwise>
</c:choose>
<c:forEach var="v" begin="${nPage>5?nPage-5:1}"
end="${nPage>5?nPage+4:10}" step="1" varStatus="status">
<c:if test="${status.index -1 < maxPage}">
<c:choose>
<c:when test="${status.index eq nPage}">
<td><a href="#" class="now_page">${nPage}</a></td>
</c:when>
<c:otherwise>
<td><a href="javascript:fnc_goPage('${status.index}');">${status.index}</a></td>
</c:otherwise>
</c:choose>
</c:if>
</c:forEach>
<c:choose>
<c:when test="${nPage < maxPage}">
<td><a href="javascript:fnc_goNext('${nextPage}');">next</a></td>
</c:when>
<c:otherwise>
<td class="no_more_page">next</td>
</c:otherwise>
</c:choose>
</tr>
</table>
<c:if test="${!empty LIST}">
<p id="adminPageCount">총 ${totalCount}건</p>
</c:if>
</div>
</c:if>
</div>
</section>
</div>
</form>
</body>
</html>