399 lines
13 KiB
Plaintext
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}"> ${i.SUBJECT}</a></td>
|
|
<td title="${i.PROBLEM_CONTENTS}"><span class="ellipsis align_l"> ${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"> ${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> |