ERP-node/WebContent/WEB-INF/view/eoMng/eoMngDetailPopUp.jsp

697 lines
22 KiB
Plaintext

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="com.pms.common.utils.*"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ page import="java.util.*" %>
<%@include file= "/init.jsp" %>
<%
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
String userId = CommonUtils.checkNull(person.getUserId());
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title><%=Constants.SYSTEM_NAME%></title>
<style type="text/css">
::-webkit-scrollbar-thumb {
background: linear-gradient(to bottom, #f5d78e, #f5d78e);
}
</style>
</head>
<script>
$(document).ready(function(){
var arr_deploy_dept = "${resultMap.DEPLOY_DEPT}".split(",");
for(var i=0;i<arr_deploy_dept.length;i++){
$("#deploy_dept option[value="+arr_deploy_dept[i]+"]").attr("selected",true);
}
//체크박스 전체선택/전체해제
$("#allCheck").click(function() {
if ($("#allCheck").prop("checked")) {
$("input[type=checkbox]").prop("checked", true);
} else {
$("input[type=checkbox]").prop("checked", false);
}
});
$("#btnClose").click(function(){
self.close(0);
});
$("#btnSave").click(function(){
fn_save();
});
$("#btnAddPart").click(function(){
fn_openPartMngListPopUp();
});
$("#btnDeletePart").click(function(){
fn_deleteConnectPartMng();
});
$("#CUSTOMER").change(function(){
$("#CAR_TYPE").empty();
if("" != this.value){
fnc_getCarList("", this.value, "CAR_TYPE","${resultMap.CAR_TYPE}");
}
});
fnc_setFileDropZone("eoDropZone", "${resultMap.OBJID}", "EO_FILE", "EO 첨부파일", "fileAreaDraw",true,null,null,null);
fnc_setFileDropZone("eoimgDropZone", "${resultMap.OBJID}", "EO_ATTACH", "EO이미지", "fileAreaDraw",false,null,null);
fileAreaDraw();
fnc_datepick();
fnc_getOEMList("CUSTOMER", "${resultMap.CUSTOMER}");
if("" != "${resultMap.CUSTOMER}"){
fnc_getCarList("", "${resultMap.CUSTOMER}", "CAR_TYPE","${resultMap.CAR_TYPE}");
}
fnc_getCodeListAppend("<%=Constants.EO_TYPE_CODE%>","EO_TYPE","${resultMap.EO_TYPE}");
fnc_getCodeListAppend("<%=Constants.URGENCY_CODE%>","URGENCY","${resultMap.URGENCY}");
$('.select2').select2();
fn_getConnectPartMngList();
fn_getApprovalLine();
// window.resizeTo(600,750);
$("#btnEdit").click(function(){
fn_save();
});
$('input').prop('readonly', true);
$('input').prop('disabled', true);
$('select').prop('readonly', true);
$('select').prop('disabled', true);
$('textarea').prop('readonly', true);
$('textarea').prop('disabled', true);
$('#btnClose').prop('readonly', false);
$('#btnClose').prop('disabled', false);
$('#btnEdit').prop('readonly', false);
$('#btnEdit').prop('disabled', false);
$('#OBJID').prop('readonly', false);
$('#ACTION_TYPE').prop('readonly', false);
$('#OBJID').prop('disabled', false);
$('#ACTION_TYPE').prop('disabled', false);
$("#deploy_dept").select2({multiple: true});
});
</script>
<script>
//결재정보를 가져온다.
function fn_getApprovalLine(){
var scheduleList = new Array();
<c:forEach items="${approvalList}" var="approvalItem">
var seq = "${approvalItem.SEQ}";
var targetUserName = "${approvalItem.TARGET_USER_NAME}";
var procDate = "${approvalItem.PROC_DATE}";
if(1 == seq){
$("#reviewerName").append(targetUserName);
$("#reviewerDate").append(procDate);
}
if(2 == seq){
$("#confirmName").append(targetUserName);
$("#confirmDate").append(procDate);
}
</c:forEach>
}
function fileAreaDraw(){
fn_fileCallback2("eo","EO_FILE");
fn_Img_fileCallback("eoAttach","EO_ATTACH");
}
function fn_fileCallback2(areaId,fileType){
$.ajax({
url:"/common/getFileList.do",
type:"POST",
data:{"targetObjId":"${resultMap.OBJID}", "docType":fileType},
dataType:"json",
async:false,
success:function(data){
if(0 < data.length){
if(0 < $("#"+areaId+"DropZone").length){
$("#"+areaId+"DropZone").hide();
$("#"+areaId+"FileArea").show();
}
//첨부파일 목록 영역 show
$("#"+areaId+"FileArea").empty();
$.each(data, function(i){
var appendText = "";
var path = data[i].FILE_PATH;
var fileName = data[i].SAVED_FILE_NAME;
var fileExt = data[i].UPPER_FILE_EXT;
appendText+= "<a href='javascript:fnc_downloadFile(\""+data[i].OBJID+"\")'>&nbsp;&nbsp;"+data[i].REAL_FILE_NAME+"</a>";
<c:if test="${param.actionType eq 'regist' or info.WRITER eq connectUserId or 'plm_admin' eq connectUserId}">
appendText+= "<a href='javascript:fileDelete(\""+data[i].OBJID+"\",\""+areaId+"\")'><div class='delete_btn'></div></a>";
</c:if>
$("#"+areaId+"FileArea").append(appendText);
});
}else{
$("#"+areaId+"DropZone").show();
$("#"+areaId+"FileArea").empty();
$("#"+areaId+"FileArea").hide();
}
},
error: function(jqxhr, status, error){
}
});
}//파일 첨부 END
//첨부파일 목록을 가져온다.
function fn_Img_fileCallback(areaId,fileType){
$.ajax({
url:"/common/getFileList.do",
type:"POST",
data:{"targetObjId":"${resultMap.OBJID}", "docType":fileType},
dataType:"json",
async:false,
success:function(data){
if(0 < data.length){
//첨부파일 목록 영역 show
$("#"+areaId+"FileArea").empty();
if(0 < $("#"+areaId+"DefaultRow").length){
$("#"+areaId+"DefaultRow").hide();
}
$.each(data, function(i){
var appendText = "";
if("eoAttach" == areaId){
var path = data[i].FILE_PATH;
var fileName = data[i].SAVED_FILE_NAME;
var fileExt = data[i].UPPER_FILE_EXT;
var srcLocation = encodeURI("/common/viewImage.do?realFileName="+data[i].REAL_FILE_NAME+"&savedFileName="+data[i].SAVED_FILE_NAME+"&attDir="+data[i].FILE_PATH);
appendText+= "<img src='"+srcLocation+"' style='width:250px !important; height:250px; margin:0;padding:0;' onclick=\"openImagePopUp(this.src)\" style='cursor:pointer;' />";
appendText+= " <div class='align_l'><a href='javascript:fnc_downloadFile(\""+data[i].OBJID+"\")'>&nbsp;&nbsp;"+data[i].REAL_FILE_NAME+"</a>";
// <c:if test="${param.actionType eq 'regist' or info.WRITER eq connectUserId or 'plm_admin' eq connectUserId}">
// appendText+= "<a href='javascript:fileDelete(\""+data[i].OBJID+"\",\""+areaId+"\")'><div class='delete_btn'></div></a>";
// </c:if>
appendText+= "</div>";
$("#eoimgDropZone").hide();
}
$("#"+areaId+"FileArea").append(appendText);
});
}else{
$("#"+areaId+"DropZone").show();
$("#"+areaId+"AttachFileList").hide();
$("#"+areaId+"FileArea").empty();
/* var appendText = "";
appendText += "<tr>";
appendText += "<td>첨부 파일이 없습니다.</td>";
appendText +="</tr>";
$("#"+areaId+"FileArea").append(appendText); */
}
},
error: function(jqxhr, status, error){
}
});
}//파일 첨부 END
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,"problemImgPopUp","width="+img_width+",height="+height+", menubars=no, scrollbars=yes'");
}
/*첨부 파일 삭제 */
function fileDelete(fileObjId,areaId){
var type =areaId;
if(confirm("파일을 삭제하시겠습니까?")){
$.ajax({
url:"/common/deleteFileInfo.do",
type:"POST",
data:{"objId":fileObjId},
dataType:"json",
async:true,
success:function(data){
fileAreaDraw();
},
error: function(jqxhr, status, error){
}
});
}
}
function fn_save(){
if(confirm("수정하시겠습니까?")){
objid = $("#OBJID").val();
window.location.href = "/eoMng/eoMngFormPopUp.do?OBJID=" + objid;
// var form1 = document.form1;
// form1.action = "/eoMng/eoMngFormPopUp.do";
// form1.submit();
}
}
function fn_openPartMngListPopUp(){
var hiddenForm = document.hiddenForm;
var target = "partMngListPopUp";
var url = "/eoMng/partMngListPopUp.do?OBJID="+ ${resultMap.OBJID};
window.open("",target,"width=1400,height=800");
hiddenForm.OBJID.value = "${resultMap.OBJID}";
hiddenForm.action = url;
hiddenForm.target = target;
hiddenForm.submit();
}
function fn_deleteConnectPartMng(){
var partObjIdList = [];
$("input[name=CHILD_OBJID]:checked").each(function(i, e) {
partObjIdList.push($(this).val());
});
if(0 == partObjIdList.length){
Swal.fire("선택된 Part가 없습니다.");
}else{
if(confirm("선택된 Part를 삭제하시겠습니까?.")){
$.ajax({
url:"/eoMng/deleteConnectPartMng.do",
type:"POST",
data:{"OBJID":"${resultMap.OBJID}","CHILD_OBJID":partObjIdList.join()},
dataType:"json",
async:false,
success:function(data){
Swal.fire(data.msg);
fn_getConnectPartMngList();
},
error: function(jqxhr, status, error){
}
});
}
}
}
function openPartMngPopup(objId){
// var hiddenForm = document.hiddenForm;
var url = "/partMng/partMngFormPopUp.do";
if("" != objId){
url = "/partMng/partMngDetailPopUp.do?OBJID="+objId+"&ACTION_TYPE=view";
}
var target = "partMngPopUp";
window.open(url,"partMngPopUp","width=600,height=700");
// window.open(url,target,"width=600, height=700, menubars=no, scrollbars=yes, resizable=yes");
// hiddenForm.action = url;
// hiddenForm.OBJID.value = objId;
// hiddenForm.ACTION_TYPE.value = "view";
// hiddenForm.target = target;
// hiddenForm.submit();
}
function fn_getConnectPartMngList(){
var OBJID = $("#OBJID").val();
if("" == OBJID){
OBJID = $("#paramOBJID").val();
$("#OBJID").val(OBJID);
}
// Swal.fire("OBJID ?? = " + $("#OBJID").val());
$.ajax({
url:"/eoMng/getConnectPartMngList.do",
type:"POST",
data:$("#form1").serialize(),
dataType:"json",
async:false,
success:function(data){
$("#connectPartArea").empty();
var appendText = "";
appendText += " <colgroup>";
appendText += " <col width='4%' />";
appendText += " <col width='10%' />";
appendText += " <col width='23%' />";
appendText += " <col width='23%' />";
appendText += " <col width='23%' />";
appendText += " <col width='5%' />";
appendText += " </colgroup>";
if(0 < data.length){
//첨부파일 목록 영역 show
$.each(data, function(i){
var objId = data[i].OBJID;
var part_objid = data[i].PART_OBJID;
var rnum = data[i].RNUM;
var status = fnc_checkNull(data[i].STATUS);
var writer = fnc_checkNull(data[i].WRITER);
var partNo = fnc_checkNull(data[i].PART_NO);
var partName = fnc_checkNull(data[i].PART_NAME);
var partMemo = fnc_checkNull(data[i].MEMO);
var revision = fnc_checkNull(data[i].REVISION);
var managementItemTitle = fnc_checkNull(data[i].MANAGEMENT_ITEM_TITLE);
var designApplyPointTitle = fnc_checkNull(data[i].DESIGN_APPLY_POINT_TITLE);
var changeOptionTitle = fnc_checkNull(data[i].CHANGE_OPTION_TITLE);
var ecdFlag = fnc_checkNull(data[i].ECD_FLAG);
appendText+=" <tr>";
appendText+=" <td><input type='checkbox' name='CHILD_OBJID' value='"+objId+"' data-STATUS='"+status+"' data-WRITER='"+writer+"'></td>";
appendText+=" <td>"+rnum+"</td>";
appendText+=" <td title='"+partNo+"'><a href='#' onclick=\"openPartMngPopup('"+part_objid+"');\">"+partNo+"</a></td>";
appendText+=" <td title='"+partName+"'>"+partName+"</td>";
appendText+=" <td title='"+partMemo+"'>"+partMemo+"</td>";
appendText+=" <td title='"+revision+"'>"+revision+"</td>";
// appendText+=" <td title='"+changeOptionTitle+"'>"+changeOptionTitle+"</td>";
// appendText+=" <td title='"+revision+"'>"+revision+"</td>";
// appendText+=" <td title='"+ecdFlag+"'>"+ecdFlag+"</td>";
// appendText+=" <td title='"+managementItemTitle+"'>"+managementItemTitle+"</td>";
// appendText+=" <td title='"+designApplyPointTitle+"'>"+designApplyPointTitle+"</td>";
appendText+=" </tr>";
});
}else{
appendText+=" <tr style='text-align: center;'>";
appendText+=" <td align='center' colspan='9'>연결된 데이터가 없습니다.</td>";
appendText+=" </tr>";
}
$("#connectPartArea").append(appendText);
},
error: function(jqxhr, status, error){
}
});
}
function fn_refresh(){
window.location.href = "/eoMng/eoMngFormPopUp.do?OBJID=" + ${resultMap.OBJID};
}
</script>
<style>
.input_title {border-left:1px solid #ccc;}
.input_sub_title {border-left:1px solid #ccc;}
.pmsPopupForm tr:last-child td{border-bottom:1px solid #ccc;}
</style>
<body>
<form name="hiddenForm" id="hiddenForm" method="post">
<input type="hidden" name="OBJID" id="OBJID">
<input type="hidden" name="ACTION_TYPE" id="ACTION_TYPE">
</form>
<form name="form1" id="form1" action="" method="post">
<input type="hidden" name="paramOBJID" id="paramOBJID" value="${param.OBJID}">
<input type="hidden" name="OBJID" id="OBJID" value="${resultMap.OBJID}">
<input type="hidden" name="STATUS" id="STATUS" value="${resultMap.STATUS}">
<input type="hidden" name="request_codeArr" id="request_codeArr">
<input type="hidden" name="period_codeArr" id="period_codeArr">
<section>
<div class="plm_menu_name" style="display:flex;">
<h2 style="width:50%;text-align:center;margin-top:5px;">
<span style="font-size:25px;">설계변경통보서<BR></span>
<span style="font-size:15px;">(Engineering Order)</span>
</h2>
<table class="pmsPopupForm" style="width:50%;background:white;">
<colgroup>
<col width="20%">
<col width="20%">
<col width="20%">
<col width="20%">
</colgroup>
<tr style="border-spacing: 0;border-bottom:1px solid #ccc;border-left:1px solid #ccc;">
<td class="input_title" rowspan="3" style="text-align:center;">
<label>결재</label>
</td>
<td class="input_title" style="text-align:center;">
<label>작성자</label>
</td>
<td class="input_title" style="text-align:center;">
<label>검토</label>
</td>
<td class="input_title" style="text-align:center;">
<label>승인</label>
</td>
</tr>
<tr style="border-spacing: 0;border-bottom:1px solid #ccc;">
<td class="input_sub_title" style="text-align:center;">
${resultMap.WRITER_TITLE}<!-- 작성자이름 -->
</td>
<td class="input_sub_title" style="text-align:center;" id="reviewerName"></td>
<td class="input_sub_title" style="text-align:center;" id="confirmName"></td>
</tr>
<tr style="border-spacing: 0;border-bottom:1px solid #ccc;border-left:1px solid #ccc;">
<td class="input_sub_title" style="text-align:center;">
${resultMap.REG_DATE}<!-- 작성일자 -->
</td>
<td class="input_sub_title" style="text-align:center;" id="reviewerDate"></td>
<td class="input_sub_title" style="text-align:center;" id="confirmDate"></td>
</tr>
</table>
</div>
<div id="businessPopupFormWrap">
<table class="pmsPopupForm">
<colgroup>
<col width="10%">
<col width="15%">
<col width="10%">
<col width="15%">
<col width="10%">
<col width="15%">
<col width="10%">
<col width="*">
</colgroup>
<tr>
<td class="input_title">
<label for="">구분</label>
</td>
<td class="input_sub_title" >
<select name="eo_gubun" id="eo_gubun" required reqTitle="설변구분" type="select">
<option value="">선택</option>
${code_map.eo_gubun}
</select>
</td>
<td class="input_title">
<label for="">ECR NO</label>
</td>
<td class="input_sub_title" >
<select name="ecr_objid" id="ecr_objid" required reqTitle="기종(모델)" type="select" class="select2">
<option value="">전체</option>
${code_map.ecr_code}
</select>
</td>
<td class="input_title">
<label for="">설변대상</label>
</td>
<td class="input_sub_title" >
<select name="product_objid" id="product_objid" required reqTitle="기종(모델)" type="select" class="select2">
<option value="">전체</option>
${code_map.product_code1}
</select>
</td>
<td class="input_title">
<label for="">동시적용</label>
</td>
<td class="input_sub_title" >
<select name="same_product_objid" id="same_product_objid" required reqTitle="기종(모델)" type="select" class="select2">
<option value="">전체</option>
${code_map.product_code2}
</select>
</td>
</tr>
<tr>
<td class="input_title">
<label for="">EO 종류</label>
</td>
<td class="input_sub_title" >
<select name="eo_kind" id="eo_kind" required reqTitle="설변구분" type="select">
<option value="">선택</option>
${code_map.eo_kind}
</select>
</td>
<td class="input_title">
<label for="">제목</label>
</td>
<td class="input_sub_title" colspan="5" >
<input type="text" name="title" id="title" value="${resultMap.TITLE}">
</td>
<!-- <td class="input_title"> -->
<!-- <label for="">긴급도</label> -->
<!-- </td> -->
<!-- <td class="input_sub_title" > -->
<!-- <select name="URGENCY" id="URGENCY" class="select2"></select> -->
<!-- </td> -->
<!-- <td class="input_title"> -->
<!-- <label for="">구매배포일</label> -->
<!-- </td> -->
<!-- <td class="input_sub_title" > -->
<%-- <input type="text" name="PURCHASE_RELEASE_DATE" id="purchase_release_date" value="${resultMap.PURCHASE_RELEASE_DATE_TITLE}"> --%>
<!-- </td> -->
</tr>
<tr>
<td class="input_title">
<label for="">설변목적</label>
</td>
<td class="input_sub_title" colspan="7" style="text-align: left; word-spacing: 15px; padding-left:10px;">
${code_map.request_code}
</td>
</tr>
<tr>
<td class="input_title">
<label for="">적용시기</label>
</td>
<td class="input_sub_title" colspan="7" style="text-align: left; word-spacing: 15px; padding-left:10px;">
${code_map.period_code}
( <input type="text" name="unit" id="unit" value="${resultMap.UNIT}" style="width: 40px;"> ) 호기
</td>
</tr>
<tr>
<td class="input_title">
<label for="">배포처</label>
</td>
<td class="input_sub_title" colspan="7">
<select name="deploy_dept" id="deploy_dept" required reqTitle="배포처" type="select" multiple="multiple">
${code_map.deploy_dept}
</select>
</td>
<!-- <td class="input_sub_title" colspan="2"> -->
<%-- <input type="text" name="EO_NO" id="EO_NO" value="${resultMap.EO_NO}" readonly> --%>
<!-- </td> -->
</tr>
</table>
<table style="margin-top:8px;width:100%;">
<colgroup>
<col width="100%">
<!-- <col width="*%"> -->
<!-- <col width="22%"> -->
</colgroup>
<tr style="width:100%;">
<!-- <td style="text-align:right;"> -->
<!-- <label for="">첨부:</label> -->
<!-- </td> -->
<!-- <td style="text-align:left;"> -->
<!-- <div id="eoDropZone" class="dropzone"style="width:100% !important;">Drag & Drop Files Here</div> -->
<!-- <div id="eoFileArea" style="display:none;"></div> -->
<!-- </td> -->
<td class="plm_btn_wrap" style="text-align:right;">
<input type="button" value="부품 추가" id="btnAddPart" class="plm_btns create">
<input type="button" value="부품 삭제" id="btnDeletePart" class="plm_btns create">
</td>
</tr>
</table>
<table class="pmsPopupForm" style="margin-top:8px;width:100%; border:3px solid #000000;">
<colgroup>
<col width="30%">
<col width="30%">
<col width="40%">
</colgroup>
<tr style="width:100%;">
<td style="border-right:1px solid #000000;text-align:center;">[설변내용]</td>
<td style="border-right:1px solid #000000;text-align:center;">[이미지]</td>
<td style="border-right:1px solid #000000;text-align:center;">[적용부품]</td>
</tr>
<tr style="width:100%;">
<td style="border-right:1px solid #000000;text-align:center;" >
<textarea placeholder="입력" id="contents" name="contents" style="border:3px solid #ccc; width:100%; height:250px;">${resultMap.CONTENTS}</textarea>
</td>
<td style="border-right:1px solid #000000;text-align:center;">
<div id="eoimgDropZone" class="dropzone"style="width:250px !important; height:250px; margin:0 auto;padding:0; line-height: 250px;">Drag & Drop Files Here</div>
<div id="eoAttachFileArea"></div>
</td>
<td>
<div class="plm_table_wrap" style="margin-top:7px;">
<div style="overflow-y:scroll;">
<table class="plm_table">
<colgroup>
<col width='4%'/>
<col width='10%'/> <!-- 순 -->
<col width='23%'/> <!-- 품번 -->
<col width='23%'/> <!-- 품명 -->
<col width='23%'/> <!-- 설변사항 -->
<col width='5%'/> <!-- Rev -->
</colgroup>
<thead>
<tr class="plm_thead">
<td><input type="checkbox" id="allCheck" class="checkBox"></td>
<td>순</td>
<td>품번</td>
<td>품명</td>
<td>설변사항</td>
<td>Rev</td>
</tr>
</thead>
</table>
</div>
<div>
<div class="plm_scroll_table" style="height:250px;">
<table class="plm_table" id="connectPartArea"></table>
</div>
</div>
</div>
</td>
</tr>
</table>
</div>
<div class="btn_wrap">
<div class="plm_btn_wrap_center">
<c:choose>
<c:when test="${(resultMap.WRITER eq connectUserId or 'plm_admin' eq connectUserId) and ('view' ne paramMap.ACTION_TYPE or 'create' eq resultMap.STATUS)}">
<c:if test="${resultMap.lookup ne 'lookup'}">
<input type="button" value="수정" id="btnEdit" class="plm_btns create">
</c:if>
</c:when>
<c:otherwise></c:otherwise>
</c:choose>
<input type="button" value="닫기" id="btnClose" class="plm_btns">
</div>
</div>
</section>
</form>
</body>
</html>