ERP-node/WebContent/WEB-INF/view/devInfoMng/devMaster/devMasterFormPopUp.jsp

369 lines
10 KiB
Plaintext
Raw Normal View History

2025-08-21 09:41:46 +09:00
<%@ 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>
</head>
<script>
$(document).ready(function(){
//고객사의 목록을 가져온다
fn_setOEMList("${devMasterMap.OEM_OBJID}");
//고객사에 해당하는 차종의 정보를 가져온다.
fn_setCarTypeList("${devMasterMap.OEM_OBJID}");
$("#carTypeObjId").val("${devMasterMap.CAR_OBJID}");
//제품군의 목록을 가져온다.
fn_setProductGroupList("${devMasterMap.PROD_GROUP_OBJID}");
//제품군에 해당하는 제품을 가져온다.
fn_setProductList("${devMasterMap.PROD_OBJID}");
fn_changePartMasterList();
//고객사 변경 시
$("#oemObjId").change(function(){
fn_setCarTypeList(this.value)
});
//제품군 변경 시
$("#productGroupObjId").change(function(){
fn_setProductList("${devMasterMap.PROD_OBJID}");
});
//닫기
$("#btnClose").click(function(){
self.close(0);
});
//저장
$("#btnSave").click(function(){
fn_save();
});
//취소
$("#btnCancel").click(function(){
var objId = $(this).attr("data-OBJID");
var params = "?objId="+objId;
document.form1.action ="/devInfoMng/devMaster/devMasterDetailPopUp.do"+params;
document.form1.submit();
});
$("input").keyup(function(e){
if(e.keyCode == 13){
fn_save();
}
});
});
</script>
<script>
//oem 목록 조회
function fn_setOEMList(oemObjId){
$.ajax({
url:"/common/getOEMList.do",
type:"POST",
data:{"isJson":true},
dataType:"json",
async:false,
success:function(data){
var appendCode = "";
$.each(data, function(i){
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].OEM_NAME+"("+data[i].OEM_CODE+")</option>";
});
$("#oemObjId").append(appendCode);
$("#oemObjId").trigger("change");
if("" != oemObjId){
$("#oemObjId").val(oemObjId);
}
},
error: function(jqxhr, status, error){
}
});
}
//car 목록 조회
function fn_setCarTypeList(oemObjId){
var appendCode = "";
$("#carTypeObjId").empty();
var appendCode = "";
appendCode += "<option value=''>선택</option>";
if(null != oemObjId && "" != oemObjId){
$.ajax({
url:"/common/getCarTypeList.do",
type:"POST",
data:{"isJson":true, "search_oemObjId":oemObjId},
dataType:"json",
async:false,
success:function(data){
$.each(data, function(i){
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].CAR_CODE+"("+data[i].CAR_NAME+")</option>";
});
$("#carTypeObjId").append(appendCode);
$("#carTypeObjId").trigger("change");
if("" != "${carTypeObjId}"){
$("#carTypeObjId").val("${carTypeObjId}");
}
},
error: function(jqxhr, status, error){
}
});
}else{
$("#carTypeObjId").append(appendCode);
}
}
//제품군 조회
function fn_setProductGroupList(prodGroupObjId){
$.ajax({
url:"/common/getProductGroupList.do",
type:"POST",
data:{"isJson":true},
dataType:"json",
async:false,
success:function(data){
var appendCode = "";
$.each(data, function(i){
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].PRODUCT_GROUP_NAME+"</option>";
});
$("#productGroupObjId").append(appendCode);
$("#productGroupObjId").trigger("change");
if("" != prodGroupObjId){
$("#productGroupObjId").val(prodGroupObjId);
}
},
error: function(jqxhr, status, error){
}
});
}
//제품 조회
function fn_setProductList(prodObjId){
var productGroupObjId = $("#productGroupObjId").val();
var appendCode = "";
$("#productObjId").empty();
appendCode += "<option value=''>선택</option>";
if(null != productGroupObjId && "" != productGroupObjId){
$.ajax({
url:"/common/getProductList.do",
type:"POST",
data:{"isJson":true, "search_productGroupObjId":productGroupObjId},
dataType:"json",
async:false,
success:function(data){
$.each(data, function(i){
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].PRODUCT_NAME+"</option>";
});
$("#productObjId").append(appendCode);
if("" != prodObjId){
$("#productObjId").val(prodObjId);
}
},
error: function(jqxhr, status, error){
}
});
}else{
$("#productObjId").append(appendCode);
}
}
//고객사, 차종, 제품군, 제품에 해당하는 Part Master 목록을 보여준다.
function fn_changePartMasterList(){
var oemObjId = $("#oemObjId").val();
var carObjId = $("#carTypeObjId").val();
var prodGroupObjId = $("#productGroupObjId").val();
var prodObjId = $("#productObjId").val();
if("" != oemObjId && "" != carObjId && "" != prodGroupObjId && "" != prodObjId){
$.ajax({
url:"/devInfoMng/devMaster/getPartMasterList.do",
type:"POST",
data:$("#form1").serialize(),
dataType:"json",
success:function(data){
var appendCode = "";
$("#partMasterObjId").empty();
appendCode += "<option value=''>선택</option>";
if(0 < data.length){
$.each(data, function(i){
appendCode += "<option value='"+data[i].OBJID+"' data-OEM_OBJID='"+data[i].OEM_OBJID+"' data-CAR_OBJID='"+data[i].CAR_OBJID+"' data-PROD_GROUP_OBJID='"+data[i].PROD_GROUP_OBJID+"' data-PROD_OBJID='"+data[i].PROD_OBJID+"'>"+data[i].OEM_NAME+"-"+data[i].CAR_NAME+"-"+data[i].PRODUCT_GROUP_NAME+"-"+data[i].PRODUCT_NAME+"</option>";
});
$("#partMasterObjId").append(appendCode);
$("#partMasterObjId").val("${devMasterMap.TARGET_OBJID}");
}
},
error: function(jqxhr, status, error){
}
});
}else{
var appendCode = "";
appendCode += "<option value=''>선택</option>";
$("#partMasterObjId").empty();
$("#partMasterObjId").append(appendCode);
}
}
//개발 Master 중복여부를 확인한다.
function fn_checkDuplicate(){
var resultFlag = false;
var form = $("#form1").serialize();
$.ajax({
url:"/devInfoMng/devMaster/checkDevMasterDuplicate.do",
type:"POST",
data:form,
dataType:"json",
async:false,
success:function(data){
if(0 == Number(data.CNT)){
resultFlag = true;
}
},
error: function(jqxhr, status, error){
}
});
return resultFlag;
}
//작성된 Part Master의 내용을 저장한다.
function fn_save(){
if(fn_checkDuplicate()){
if(fnc_valitate("form1")){
if(confirm("저장하시겠습니까?")){
var form = $("#form1").serialize();
$.ajax({
url:"/devInfoMng/devMaster/saveDevMasterInfo.do",
type:"POST",
data:form,
dataType:"json",
success:function(data){
if(data.result == "true" || data.result == true || data.result){
Swal.fire("저장되었습니다.");
opener.fn_search();
self.close();
}
},
error: function(jqxhr, status, error){
}
});
}
}
}else{
Swal.fire("해당 내용으로 이미 개발마스터가 존재 합니다.");
return false;
}
}
</script>
<body>
<form name="form1" id="form1" action="" method="post" onsubmit="return false">
<input type="hidden" name="objId" id="objId" value="${devMasterMap.OBJID}" />
<section style="min-width:380px;">
<div class="plm_menu_name">
<h2>
<span>개발 Master 등록</span>
</h2>
</div>
<div id="businessPopupFormWrap">
<div class="form_popup_title">&nbsp;&nbsp;&nbsp;개발 Master 정보입력</div>
<table class="pmsPopupForm">
<colgroup>
<col width="18%"/>
<col width="18%"/>
<col width="18%"/>
<col width="15%"/>
<col width="20%"/>
<col width="*"/>
</colgroup>
<tr>
<td class="input_title">
<label for="">고객사</label>
</td>
<td colspan="2">
<select name="oemObjId" id="oemObjId" type="select" required reqTitle="고객사" onchange="fn_changePartMasterList();">
<option value="">선택</option>
</select>
</td>
<td class="input_title">
<label for="">차종</label>
</td>
<td colspan="2">
<select name="carTypeObjId" id="carTypeObjId" type="select" required reqTitle="차종" onchange="fn_changePartMasterList();">
<option value="">선택</option>
</select>
</td>
</tr>
<tr>
<td class="input_title">
<label for="">제품군</label>
</td>
<td colspan="2">
<select name="productGroupObjId" id="productGroupObjId" type="select" required reqTitle="제품군" onchange="fn_changePartMasterList();">
<option value="">선택</option>
</select>
</td>
<td class="input_title">
<label for="">제품</label>
</td>
<td colspan="2">
<select name="productObjId" id="productObjId" type="select" required reqTitle="제품" onchange="fn_changePartMasterList();">
<option value="">선택</option>
</select>
</td>
</tr>
<tr>
<td class="input_title">
<label for="">Part Master</label>
</td>
<td colspan="5">
<select name="partMasterObjId" id="partMasterObjId" type="select" required reqTitle="Part Master" style="width:96%;"></select>
</td>
</tr>
<tr>
<td class="input_title">
<label for="">품번</label>
</td>
<td colspan="5">
<input type="text" name="assayPartNo" id="assayPartNo" value="${devMasterMap.ASSAY_PART_NO}" required reqTitle="ASSAY_PART_NO" maxlength="32" style="width:96%;">
</td>
</tr>
</table>
<div class="btn_wrap">
<div class="plm_btn_wrap_center">
<input type="button" value="저장" id="btnSave" class="plm_btns">
<c:choose>
<c:when test="${param.actionType eq 'regist'}">
</c:when>
<c:otherwise>
<input type="button" id="btnCancel" value="취소" class="plm_btns" data-OBJID="${devMasterMap.OBJID}">
</c:otherwise>
</c:choose>
<input type="button" value="닫기" id="btnClose" class="plm_btns">
</div>
</div>
</div>
</section>
</form>
</body>
</html>