ERP-node/WebContent/WEB-INF/view/partMng/partMngFormPopUp.jsp

708 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(){
$("#btnClose").click(function(){
self.close(0);
});
$("#btnSave").click(function(){
/* if($("#PRODUCT_MGMT_OBJID").val()==""){
Swal.fire('기종을 선택해주세요');
return;
}
*/
fn_save();
});
$("#PRODUCT_MGMT_OBJID").change(function(){
fnc_productUPGNEWList(this.value,"","UPG_NO", "");
});
//fnc_setFileDropZone("shapeDropZone", "${resultMap.OBJID}", "PART_SHAPE_IMG", "Part 형상", "fileAreaDraw",true,null,null,"jpg,png,jpeg");
//fnc_setFileDropZone("ecdDropZone", "${resultMap.OBJID}", "ECD_DOC", "ECD 첨부파일", "fileAreaDraw",true,null,null,null);
fnc_setFileDropZone("3dCadDropZone", "${resultMap.OBJID}", "3D_CAD", "3D CAD 첨부파일", "fileAreaDraw",false,null,null,null);
fnc_setFileDropZone("2dDrawingCadDropZone", "${resultMap.OBJID}", "2D_DRAWING_CAD", "2D(Drawing) CAD 첨부파일", "fileAreaDraw",false,null,null,null);
fnc_setFileDropZone("2dPDFCadDropZone", "${resultMap.OBJID}", "2D_PDF_CAD", "2D(PDF) CAD 첨부파일", "fileAreaDraw",false,null,null,null);
fileAreaDraw();
fnc_getCodeListAppend("<%=Constants.UNIT_CODE%>","UNIT","${resultMap.UNIT}");
fnc_getCodeListAppend("<%=Constants.PART_TYPE_CODE%>","PART_TYPE","${resultMap.PART_TYPE}");
fnc_getCodeListAppend("<%=Constants.MATERIAL_CODE%>","MATERIAL","${resultMap.MATERIAL}");
fnc_getCodeListAppend("<%=Constants.SPEC_NO_CODE%>","SPEC_NO","${resultMap.SPEC_NO}");
fnc_getCodeListAppend("<%=Constants.DESIGN_APPLY_POINT_CODE%>","DESIGN_APPLY_POINT","${resultMap.DESIGN_APPLY_POINT}");
fnc_getProductMgmtList("PRODUCT_MGMT_OBJID", "${resultMap.PRODUCT_MGMT_OBJID}");
fnc_productUPGNEWList("${resultMap.PRODUCT_MGMT_OBJID}","","UPG_NO", "${resultMap.UPG_NO}");
// $("input:radio[name='CHANGE_OPTION']:radio[value='${resultMap.CHANGE_OPTION}']").prop('checked', true);
$("input:radio[name='MANAGEMENT_FLAG']:radio[value='${resultMap.MANAGEMENT_FLAG}']").prop('checked', true);
//$('.select2').select2();
if('changeDesign' == '${param.ACTION_TYPE}'){
//alert('c');
window.resizeTo(800,750);
//fnc_datepick();
}else if(fnc_isEmpty('${param.ACTION_TYPE}')){
window.resizeTo(800,720);
//alert('r');
}else{//수정
window.resizeTo(800,760);
//alert('e');
}
});
</script>
<script>
function fileAreaDraw(){
//fn_fileCallback("shape","PART_SHAPE_IMG");
//fn_fileCallback2("ecd","ECD_DOC");
fn_fileCallback2("3dCad","3D_CAD");
fn_fileCallback2("2dDrawingCad","2D_DRAWING_CAD");
fn_fileCallback2("2dPDFCad","2D_PDF_CAD");
}
//첨부파일 목록을 가져온다.
function fn_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+"DropZone").length){
$("#"+areaId+"DropZone").hide();
$("#"+areaId+"FileArea").show();
}
$.each(data, function(i){
var realFileName = data[i].REAL_FILE_NAME;
var srcLocation = encodeURI("/common/viewImage.do?realFileName="+realFileName+"&savedFileName="+data[i].SAVED_FILE_NAME+"&attDir="+data[i].FILE_PATH);
var appendText = "";
var appendImgText = ""
appendText+= "<a href='javascript:fnc_downloadFile(\""+data[i].OBJID+"\")'>&nbsp;"+data[i].REAL_FILE_NAME+"</a>";
appendText+= "<a href='javascript:fileDelete(\""+data[i].OBJID+"\",\""+areaId+"\")'><div class='delete_btn'></div></a>";
appendImgText = "<img src='"+srcLocation+"' height='85px' width='99%' onclick='openImagePopUp(this.src)' style='cursor:pointer;' />"
$("#"+areaId+"FileArea").append(appendImgText+appendText);
});
}else{
$("#"+areaId+"DropZone").show();
$("#"+areaId+"FileArea").empty();
$("#"+areaId+"FileArea").hide();
}
},
error: function(jqxhr, status, error){
}
});
}//파일 첨부 END
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){
if(areaId == "ecd"){
$("#"+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+= "<div style='float:left;width:95%;white-space: nowrap; overflow: hidden; text-overflow: ellipsis;'>";
appendText+= " <a href='javascript:fnc_downloadFile(\""+data[i].OBJID+"\")' title='"+data[i].REAL_FILE_NAME+"'>"+data[i].REAL_FILE_NAME+"</a>";
appendText+= "</div>";
appendText+= "<div>";
appendText+= "<a href='javascript:fileDelete(\""+data[i].OBJID+"\",\""+areaId+"\")'><div class='delete_btn'></div></a>";
appendText+= "</div>";
$("#"+areaId+"FileArea").append(appendText);
});
}else{
$("#"+areaId+"DropZone").show();
$("#"+areaId+"FileArea").empty();
$("#"+areaId+"FileArea").hide();
}
},
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(){
//var CHANGE_OPTION_Arr = new Array();
// $('input:checkbox[name="CHANGE_OPTION"]').each(function() {
// if(this.checked){//checked 처리된 항목의 값
// CHANGE_OPTION_Arr.push(this.value);
// }
// });
// $("#CHANGE_OPTION_Arr").val(CHANGE_OPTION_Arr);
if(fnc_validate('form1')){
if(fn_overlapPartMng()){
if(confirm("저장하시겠습니까?")){
$.ajax({
url:"/partMng/savePartMng.do",
type:"POST",
data:$("#form1").serialize(),
dataType:"json",
async:false,
success:function(data){
if(data.result == "DUPLICATE"){
alert(data.msg);
$("#PART_NO").focus();
}else{
alert(data.msg);
if(typeof(opener.fn_search) == "function"){
opener.fn_search();
}else{
}
self.close();
}
},
error: function(jqxhr, status, error){
}
});
}
}
}
}
//저장 시 중복여부를 확인한다.
function fn_overlapPartMng(){
var returnFlag = false;
$.ajax({
url:"/partMng/overlapPartMng.do",
type:"POST",
data:$("#form1").serialize(),
dataType:"json",
async:false,
success:function(data){
if(0 < data.length){
Swal.fire("중복되는 품목이 존재합니다.\n품번 및 Revision을 확인하시기 바랍니다.");
returnFlag = false;
}else{
returnFlag = true;
}
},
error: function(jqxhr, status, error){
}
});
return returnFlag;
}
</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="form1" id="form1" action="" method="post">
<input type="hidden" name="OBJID" id="OBJID" value="${resultMap.OBJID}">
<input type="hidden" name="CHILD_OBJID" id="CHILD_OBJID" value="${resultMap.CHILD_OBJID}">
<input type="hidden" name="STATUS" id="STATUS" value="${resultMap.STATUS}">
<input type="hidden" name="IS_LAST" id="IS_LAST" value="${resultMap.IS_LAST}">
<input type="hidden" name="ACTION_TYPE" id="ACTION_TYPE" value="${param.ACTION_TYPE}">
<input type="hidden" name="CONTRACT_OBJID" id="CONTRACT_OBJID" value="${resultMap.CONTRACT_OBJID}">
<section>
<div class="plm_menu_name" style="display:flex;">
<h2>
<span>
<c:if test="${ 'changeDesign' ne param.ACTION_TYPE}">
품목 등록
</c:if>
<c:if test="${ 'changeDesign' eq param.ACTION_TYPE}">
품목 설계변경
</c:if>
</span>
</h2>
</div>
<div id="businessPopupFormWrap">
<!-- <div class="form_popup_title">&nbsp;&nbsp;&nbsp;영업활동 등록</div> -->
<table class="pmsPopupForm">
<colgroup>
<col width="12%">
<col width="12%">
<col width="25%">
<col width="12%">
<col width="*">
</colgroup>
<%--
<tr>
<!-- <td class="input_title">
<label for="">기종(모델)명</label>
</td>
<td class="input_sub_title" colspan="3">
<select name="PRODUCT_MGMT_OBJID" id="PRODUCT_MGMT_OBJID" class="select2"></select>
</td> -->
<!-- <td class="input_title"> -->
<!-- <label for="">UPG No</label> -->
<!-- </td> -->
<!-- <td class="input_sub_title" > -->
<!-- <select name="UPG_NO" id="UPG_NO" class="select2"></select> -->
<!-- </td> -->
<td class="input_title">
<label for="">부품 유형</label>
</td>
<td class="input_sub_title">
<select name="PART_TYPE" id="PART_TYPE" class="select2"></select>
</td>
</tr>
--%>
<tr>
<td class="input_title">
<label for="">품번</label>
</td>
<td class="input_sub_title" colspan="4">
<input type="text" name="PART_NO" id="PART_NO" value="${resultMap.PART_NO}" required ${'changeDesign' eq param.ACTION_TYPE ? 'readonly' : ''}>
</td>
<%-- <td class="input_title">
<label for="">Revision</label>
</td>
<td class="input_sub_title" >
<input type="text" name="REVISION" id="REVISION" value="${resultMap.REVISION}" >
</td> --%>
</tr>
<%-- <tr>
<td class="input_title">
<label for="">모품번</label>
</td>
<td class="input_sub_title" colspan="3" >
<select name="PARENT_PART_NO" id="PARENT_PART_NO" reqTitle="모품번" type="select" class="select2">
<option value="">선택</option>
${code_map.PARENT_PART_NO}
</select>
</td>
</tr> --%>
<tr>
<td class="input_title">
<label for="">품명</label>
</td>
<td class="input_sub_title" colspan="4">
<input type="text" name="PART_NAME" id="PART_NAME" value="<c:out value='${resultMap.PART_NAME}' escapeXml='true'/>" required>
</td>
</tr>
<tr>
<td class="input_title">
<label for="">QTY</label>
</td>
<td class="input_sub_title" colspan="2">
<%--
<input type="text" name="QTY" id="QTY" value="${resultMap.QTY}">
--%>
<input type="text" name="QTY" id="QTY" value="1" readonly>
</td>
<td class="input_title">
<label for="">재질</label>
</td>
<td class="input_sub_title">
<input type="text" name="MATERIAL" id="MATERIAL" value="${resultMap.MATERIAL}">
</td>
</tr>
<tr>
<td class="input_title" >
<label for="">사양(규격)</label>
</td>
<td class="input_sub_title" colspan="4" title="${resultMap.SPEC}">
<input type="text" name="SPEC" id="SPEC" value="${resultMap.SPEC}">
</td>
</tr>
<tr>
<td class="input_title">
<label for="">후처리</label>
</td>
<td class="input_sub_title" colspan="2" >
<input type="text" name="POST_PROCESSING" id="POST_PROCESSING" value="${resultMap.POST_PROCESSING}">
</td>
<td class="input_title" colspan="">
<label for="">MAKER</label>
</td>
<td class="input_sub_title" colspan="">
<input type="text" name="MAKER" id="MAKER" value="${resultMap.MAKER}">
</td>
</tr>
<tr>
<td class="input_title">
<label for="">PART구분</label>
</td>
<td class="input_sub_title" colspan="2">
<select name="PART_TYPE" id="PART_TYPE" class="" type="select" required ></select>
</td>
</tr>
<%--
<tr>
<td class="input_title">
<label for="">단위</label>
</td>
<td class="input_sub_title" >
<select name="UNIT" id="UNIT" class="select2"></select>
</td>
<td class="input_title">
<label for="">수량</label>
</td>
<td class="input_sub_title">
<input type="text" name="QTY" id="QTY" value="${resultMap.QTY}">
</td>
<!-- <td class="input_title" rowspan="4">
<label for="">형상</label>
</td>
<td class="input_sub_title" rowspan="4">
<div id="shapeDropZone" class="dropzone" style="width:99%;height:130px;border: 2px dotted rgb(130, 150, 194);">Drag & Drop Image Files Here</div>
<div id="shapeFileArea" style="display:none;"></div>
</td> -->
</tr>
--%>
<%--
<tr>
<td class="input_title">
<label for="">공급처</label>
</td>
<td class="input_sub_title">
<select name="SUPPLY_CODE" id="SUPPLY_CODE" class="select2">
${code_map.SUPPLY_CODE}
</select>
</td>
</tr>
--%>
<%--
<tr>
<td class="input_title">
<label for="">두께</label>
</td>
<td class="input_sub_title" >
<input type="text" name="THICKNESS" id="THICKNESS" value="${resultMap.THICKNESS}">
</td>
<td class="input_title">
<label for="">가로</label>
</td>
<td class="input_sub_title">
<input type="text" name="WIDTH" id="WIDTH" value="${resultMap.WIDTH}">
</td>
</tr>
<tr>
<td class="input_title">
<label for="">세로</label>
</td>
<td class="input_sub_title" >
<input type="text" name="HEIGHT" id="HEIGHT" value="${resultMap.HEIGHT}">
</td>
<td class="input_title">
<label for="">외경</label>
</td>
<td class="input_sub_title">
<input type="text" name="OUT_DIAMETER" id="OUT_DIAMETER" value="${resultMap.OUT_DIAMETER}">
</td>
</tr>
<tr>
<td class="input_title">
<label for="">내경</label>
</td>
<td class="input_sub_title" >
<input type="text" name="IN_DIAMETER" id="IN_DIAMETER" value="${resultMap.IN_DIAMETER}">
</td>
<td class="input_title">
<label for="">길이</label>
</td>
<td class="input_sub_title">
<input type="text" name="LENGTH" id="LENGTH" value="${resultMap.LENGTH}">
</td>
</tr>
--%>
<%-- <tr>
<td class="input_title">
<label for="">대체 재질</label>
</td>
<td class="input_sub_title">
<input type="text" name="SUB_MATERIAL" id="SUB_MATERIAL" value="${resultMap.SUB_MATERIAL}">
</td>
</tr> --%>
<%-- <tr>
<td class="input_title">
<label for="">중량</label>
</td>
<td class="input_sub_title" >
<input type="text" name="WEIGHT" id="WEIGHT" value="${resultMap.WEIGHT}">
</td>
</tr>
<tr>
<td class="input_title">
<label for="">설계적용시점</label>
</td>
<td class="input_sub_title">
<select name="DESIGN_APPLY_POINT" id="DESIGN_APPLY_POINT"></select>
</td>
</tr> --%>
<%-- <td class="input_title">
<label for="">최초설계일</label>
</td>
<td class="input_sub_title" >
<input type="text" class="date_icon" name="DESIGN_DATE" id="DESIGN_DATE" value="${resultMap.DESIGN_DATE}" />
</td> --%>
<c:if test="${ !empty param.ACTION_TYPE}">
<tr>
<td class="input_title" >
<label for="">Revision</label>
</td>
<td class="input_sub_title" colspan="2">
<input type="text" name="REVISION" id="REVISION" value="${resultMap.REVISION}" readonly>
</td>
</tr>
<tr>
<td class="input_title">
<label for="">EO No</label>
</td>
<td class="input_sub_title" colspan="2">
<input type="text" name="EO_NO" id="EO_NO" value="${resultMap.EO_NO}" readonly/>
</td>
<td class="input_title">
<label for="">EO Date</label>
</td>
<td class="input_sub_title">
<input type="text" class="" name="EO_DATE" id="EO_DATE" value="${resultMap.EO_DATE}" readonly/>
</td>
</tr>
</c:if>
<%--
<tr>
<td class="input_title">
<label for="">비고</label>
</td>
<td class="input_sub_title" colspan="3">
<input type="text" name="REMARK" id="REMARK" value="${resultMap.REMARK}">
</td>
</tr>
--%>
<!-- <tr> -->
<!-- <td class="input_title" rowspan="2"> -->
<!-- <label for="">사양 번호</label> -->
<!-- </td> -->
<!-- <td class="input_sub_title" >ES</td> -->
<!-- <td colspan="2"> -->
<!-- <select name="ES_SPEC" id="ES_SPEC"></select> -->
<!-- </td> -->
<!-- </tr> -->
<!-- <tr> -->
<!-- <td class="input_sub_title" >MS</td> -->
<!-- <td colspan="2"> -->
<!-- <select name="MS_SPEC" id="MS_SPEC"></select> -->
<!-- </td> -->
<!-- </tr> -->
<%--
<tr>
<td class="input_title">
<label for="">설변항목</label>
</td>
<td class="input_sub_title" colspan="3">
<!-- <input type="radio" name="CHANGE_OPTION" value="changeShape">&nbsp;형상변경&nbsp;&nbsp; -->
<!-- <input type="radio" name="CHANGE_OPTION" value="changeMaterial">&nbsp;재질변경&nbsp;&nbsp; -->
<!-- <input type="radio" name="CHANGE_OPTION" value="addChange">&nbsp;추가변경&nbsp;&nbsp; -->
<!-- <input type="radio" name="CHANGE_OPTION" value="changeConfig">&nbsp;구성변경&nbsp;&nbsp; -->
<!-- <input type="radio" name="CHANGE_OPTION" value="firstDrawing">&nbsp;초도&nbsp;&nbsp; -->
<!-- <input type="radio" name="CHANGE_OPTION" value="etc">&nbsp;기타&nbsp;&nbsp; -->
${code_map.CHANGE_OPTION}
</td>
<input type="hidden" name="CHANGE_OPTION_Arr" id="CHANGE_OPTION_Arr">
</tr>
--%>
<c:if test="${ 'changeDesign' eq param.ACTION_TYPE}">
<tr>
<td class="input_title" >
<label for="">EO구분</label>
</td>
<td class="input_sub_title" colspan="2">
<select name="CHANGE_TYPE" id="CHANGE_TYPE" class="select2" type="select" required reqTitle="EO구분"><option value="">선택</option>${code_map.CHANGE_TYPE}</select>
</td>
<td class="input_title">
<label for="">EO사유</label>
</td>
<td class="input_sub_title">
<select name="CHANGE_OPTION" id="CHANGE_OPTION" class="select2" type="select" required reqTitle="EO구분"><option value="">선택</option>${code_map.CHANGE_OPTION}</select>
</td>
</tr>
</c:if>
<tr>
<td class="input_title">
<label for="">비고</label>
</td>
<td class="input_sub_title" colspan="4">
<input type="text" name="REMARK" id="REMARK" value="${resultMap.REMARK}">
</td>
</tr>
<!-- <tr> -->
<!-- <td class="input_title"> -->
<!-- <label for="">ECD</label> -->
<!-- </td> -->
<!-- <td class="input_sub_title" colspan="3"> -->
<!-- <div id="ecdDropZone" class="dropzone" style="width:99%;height:90%;border: 2px dotted rgb(130, 150, 194);">Drag & Drop Files Here</div> -->
<!-- <div id="ecdFileArea" style="display:none;"></div> -->
<!-- </td> -->
<!-- </tr> -->
<!-- <tr> -->
<!-- <td class="input_title"> -->
<!-- <label for="">관리항목</label> -->
<!-- </td> -->
<!-- <td class="input_sub_title" colspan="3"> -->
<!-- <input type="radio" name="MANAGEMENT_FLAG" value="Y">유 -->
<!-- <input type="radio" name="MANAGEMENT_FLAG" value="N">무 -->
<!-- </td> -->
<!-- </tr> -->
<!--
</table>
<table class="pmsPopupForm" style="margin-top:0px;">
<colgroup>
<col width="15%">
<col width="20%">
<col width="15%">
<col width="*">
</colgroup>
-->
<tr>
<td class="input_title" rowspan="3">
<label for="">CAD Data</label>
</td>
<td class="input_title" >
3D
</td>
<td colspan="3" class="border1">
<div id="3dCadDropZone" class="dropzone"style="width:99% !important;">Drag & Drop Files Here</div>
<div class="plm_scroll_table" style="height:50px;">
<div id="3dCadFileArea" style="display:none;"></div>
</div>
</td>
</tr>
<tr>
<td class="input_title" >
2D(Drawing)
</td>
<td colspan="3" class="border1">
<div id="2dDrawingCadDropZone" class="dropzone"style="width:99% !important;">Drag & Drop Files Here</div>
<div class="plm_scroll_table" style="height:50px;">
<div id="2dDrawingCadFileArea" style="display:none;"></div>
</div>
</td>
</tr>
<tr>
<td class="input_title" >
2D(PDF)
</td>
<td colspan="3" class="border1">
<div id="2dPDFCadDropZone" class="dropzone"style="width:99% !important;">Drag & Drop Files Here</div>
<div class="plm_scroll_table" style="height:50px;">
<div id="2dPDFCadFileArea" style="display:none;"></div>
</div>
</td>
</tr>
</table>
</div>
<div class="btn_wrap">
<div class="plm_btn_wrap_center">
<input type="button" value="저장" id="btnSave" class="plm_btns create">
<input type="button" value="닫기" id="btnClose" class="plm_btns">
</div>
</div>
</section>
</form>
</body>
</html>