462 lines
16 KiB
Plaintext
462 lines
16 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>
|
|
<script>
|
|
$(function(){
|
|
//차명 조회
|
|
$("#search_oemObjId").change(function(){
|
|
$(".carTypeDataOptions").remove();
|
|
|
|
if($(this).val() != ""){
|
|
$.ajax({
|
|
/* url:"/common/getCarTypetList_combo.do", */
|
|
url:"/admin/getOEMsCarList.do",
|
|
type:"POST",
|
|
data:{"oemObjId":$(this).val(), "status" : "active"},
|
|
dataType:"json",
|
|
async:true,
|
|
success:function(data){
|
|
//Swal.fire(data.length);
|
|
$.each(data, function(i){
|
|
$("#search_carObjId").append("<option value=\""+data[i].OBJID+"\" class=\"carTypeDataOptions\" "+(data[i].OBJID == '${param.search_carObjId}'?'selected':'')+">"+data[i].CAR_NAME+"("+data[i].CAR_CODE+")"+"</option>");
|
|
});
|
|
},
|
|
error: function(jqxhr, status, error){
|
|
/* Swal.fire(jqxhr.statusText + ", " + status + ", " + error);
|
|
Swal.fire(jqxhr.status);
|
|
Swal.fire(jqxhr.responseText); */
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
$("input[type=text]").keyup(function(e){
|
|
if(e.keyCode == 13){
|
|
$("#btnSearch").trigger("click");
|
|
}
|
|
});
|
|
$("#btnSearch").click(function(){
|
|
$("#search_partNo").val($.trim($("#search_partNo").val()));
|
|
$("#search_partName").val($.trim($("#search_partName").val()));
|
|
|
|
document.form1.actionType.value = "";
|
|
document.form1.action = "/part/structureAscendingList.do";
|
|
document.form1.submit();
|
|
});
|
|
$("#btnExcel").click(function(){
|
|
$("#search_partNo").val($.trim($("#search_partNo").val()));
|
|
$("#search_partName").val($.trim($("#search_partName").val()));
|
|
|
|
document.form1.actionType.value = "excel";
|
|
document.form1.action = "/part/structureAscendingList.do";
|
|
document.form1.submit();
|
|
});
|
|
|
|
//1level만 활성화 시킨다.
|
|
$(".dataTr").each(function(i){
|
|
var lev = $(this).attr("data-LEVEL");
|
|
|
|
if(lev == 1){
|
|
$(this).show();
|
|
}
|
|
});
|
|
|
|
/*
|
|
//클릭시 하위정보를 토글한다.
|
|
$(".dataTr").click(function(){
|
|
var choosedLev = $(this).attr("data-LEVEL");
|
|
var choosedBomObjId = $(this).attr("data-BOM_REPORT_OBJID");
|
|
|
|
$(".dataTr").each(function(i){
|
|
var bomReportObjId = $(this).attr("data-BOM_REPORT_OBJID");
|
|
var lev = $(this).attr("data-LEVEL");
|
|
|
|
if(bomReportObjId == choosedBomObjId){
|
|
//Swal.fire("bomReportObjId : "+bomReportObjId+", choosedBomObjId : "+choosedBomObjId);
|
|
if(lev != "1"){
|
|
$(this).toggle();
|
|
}
|
|
}
|
|
});
|
|
});
|
|
*/
|
|
|
|
$(".btnToggle").click(function() {
|
|
var src = $(this).attr("src");
|
|
if (src.indexOf("Plus") > -1) {
|
|
$(this).attr("src", "/images/btnMinus.png");
|
|
|
|
} else if (src.indexOf("Minus") > -1) {
|
|
$(this).attr("src", "/images/btnPlus.png");
|
|
}
|
|
|
|
var choosedBomObjId = $(this).attr("data-BOM_REPORT_OBJID");
|
|
var choosedObjId = $(this).attr("data-OBJID");
|
|
var choosedTopObjId = $(this).attr("data-TOP_OBJID");
|
|
var choosedSubTopObjId = $(this).attr("data-SUB_TOP_OBJID");
|
|
|
|
//Swal.fire("choosedBomObjId : "+choosedBomObjId+"\nchoosedObjId : "+choosedObjId+"\nchoosedTopObjId : "+choosedTopObjId+"\nchoosedSubTopObjId : "+choosedSubTopObjId);
|
|
|
|
$(".dataTr").each(function(i) {
|
|
var bomReportObjId = $(this).attr("data-BOM_REPORT_OBJID");
|
|
var objId = $(this).attr("data-OBJID");
|
|
var topObjId = $(this).attr("data-TOP_OBJID");
|
|
var subTopObjId = $(this).attr("data-SUB_TOP_OBJID");
|
|
|
|
//Swal.fire("bomReportObjId : "+bomReportObjId+"\nobjId : "+objId+"\ntopObjId : "+topObjId+"\nsubTopObjId : "+subTopObjId);
|
|
|
|
var lev = $(this).attr("data-LEVEL");
|
|
|
|
if (choosedTopObjId == topObjId) {
|
|
//Swal.fire("bomReportObjId : "+bomReportObjId+", choosedBomObjId : "+choosedBomObjId);
|
|
if (lev != "1") {
|
|
var topObjId = $(this).attr("data-TOP_OBJID");
|
|
var realLevel = $(this).attr("data-REAL_LEVEL");
|
|
//Swal.fire(realLevel);
|
|
//Swal.fire("11 choosedObjId : "+choosedObjId+", topObjId : "+topObjId);
|
|
if (realLevel != "1") {
|
|
topObjId = $(this).attr("data-SUB_TOP_OBJID");
|
|
}
|
|
//Swal.fire("22 choosedObjId : "+choosedObjId+", topObjId : "+topObjId);
|
|
if (choosedObjId == topObjId) {
|
|
$(this).toggle();
|
|
}
|
|
}
|
|
}
|
|
});
|
|
});
|
|
/* $(".btnToggle").click(function(){
|
|
var src = $(this).attr("src");
|
|
if(src.indexOf("Plus")>-1){
|
|
$(this).attr("src", "/images/btnMinus.png");
|
|
}else if(src.indexOf("Minus")>-1){
|
|
$(this).attr("src", "/images/btnPlus.png");
|
|
}
|
|
|
|
var choosedBomObjId = $(this).attr("data-BOM_REPORT_OBJID");
|
|
var choosedObjId = $(this).attr("data-OBJID");
|
|
|
|
$(".dataTr").each(function(i){
|
|
var bomReportObjId = $(this).attr("data-BOM_REPORT_OBJID");
|
|
var lev = $(this).attr("data-LEVEL");
|
|
|
|
if(bomReportObjId == choosedBomObjId){
|
|
//Swal.fire("bomReportObjId : "+bomReportObjId+", choosedBomObjId : "+choosedBomObjId);
|
|
if(lev != "1"){
|
|
var topObjId = $(this).attr("data-TOP_OBJID");
|
|
var realLevel = $(this).attr("data-REAL_LEVEL");
|
|
//Swal.fire(realLevel);
|
|
//Swal.fire("11 choosedObjId : "+choosedObjId+", topObjId : "+topObjId);
|
|
if(realLevel != "1"){
|
|
topObjId = $(this).attr("data-SUB_TOP_OBJID");
|
|
}
|
|
//Swal.fire("22 choosedObjId : "+choosedObjId+", topObjId : "+topObjId);
|
|
if(choosedObjId == topObjId){
|
|
$(this).toggle();
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}); */
|
|
|
|
//level별 색상
|
|
$(".dataTr").each(function(i) {
|
|
var lev = $(this).attr("data-REAL_LEVEL");
|
|
if (lev == 1) {
|
|
$(this).css("background-color", "#fde9d9");
|
|
} else if (lev == 2) {
|
|
$(this).css("background-color", "#daeef3");
|
|
} else if (lev == 3) {
|
|
$(this).css("background-color", "#e4dfec");
|
|
} else if (lev == 4) {
|
|
$(this).css("background-color", "#ebf1de");
|
|
} else if (lev == 5) {
|
|
$(this).css("background-color", "#f2f2f2");
|
|
} else if (lev == 6) {
|
|
$(this).css("background-color", "#f2dcdb");
|
|
} else if (lev == 7) {
|
|
$(this).css("background-color", "#eeece1");
|
|
} else if (lev == 8) {
|
|
$(this).css("background-color", "#dce6f1");
|
|
} else if (lev == 9) {
|
|
$(this).css("background-color", "#FFFFEB");
|
|
} else if (lev == 10) {
|
|
$(this).css("background-color", "#ffffff");
|
|
}
|
|
});
|
|
|
|
$(".btnEODetail").click(function() {
|
|
var objId = $(this).attr("data-EO_OBJID");
|
|
fn_openEOPopup(objId);
|
|
});
|
|
|
|
$(".btnPartDetail").click(function() {
|
|
var objId = $(this).attr("data-PART_OBJID");
|
|
fn_openPartPopup(objId);
|
|
});
|
|
|
|
$(document).ready(function() {
|
|
$("#search_oemObjId").trigger("change");
|
|
});
|
|
});
|
|
|
|
function fn_check() {
|
|
var carTypeObjId = fnc_checkNull($("#search_carObjId").val());
|
|
var productObjId = fnc_checkNull($("#search_productObjId").val());
|
|
var partNo = fnc_checkNull($("#search_partNo").val());
|
|
var partName = fnc_checkNull($("#search_partName").val());
|
|
|
|
if (carTypeObjId == "" && productObjId == "" && partNo == ""
|
|
&& partName == "") {
|
|
Swal.fire("조회조건을 설정해주시기 바랍니다.");
|
|
return false;
|
|
}
|
|
|
|
if (partName == "" && partNo.length < 5) {
|
|
Swal.fire("Part No는 최소 5자이상 입력하시기 바랍니다.");
|
|
return false;
|
|
}
|
|
|
|
if (partNo == "" && partName.length < 5) {
|
|
Swal.fire("Part Name은 최소 5자이상 입력하시기 바랍니다.");
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
function fn_openEOPopup(objId) {
|
|
window.open("/eo/eoDetailViewPopup.do?objId=" + objId,
|
|
"tempEoListPopup", "width=1500,height=700");
|
|
}
|
|
|
|
function fn_openPartPopup(objId) {
|
|
window
|
|
.open("/part/partDetailViewPopup.do?objid=" + objId,
|
|
"tempPartListPopup",
|
|
"width=720, height=800, menubars=no, scrollbars=yes, resizable=yes");
|
|
}
|
|
</script>
|
|
</head>
|
|
<body class="backcolor">
|
|
<form name="hiddenForm" id="hiddenForm" method="post">
|
|
<input type="hidden" name="actionType" id="actionType">
|
|
<input type="hidden" name="objId" id="objId">
|
|
<input type="hidden" name="objid" id="objid">
|
|
</form>
|
|
<form name="form1" action="" method="post">
|
|
<input type="hidden" name="actionType" value="" />
|
|
<section class="min_part_enroll" style="min-width:2550px;">
|
|
<div class="plm_menu_name">
|
|
<h2>
|
|
<span>BOM 조회(정전개)</span>
|
|
</h2>
|
|
</div>
|
|
<div id="plmSearchZon">
|
|
<table>
|
|
<tbody>
|
|
<tr>
|
|
<td class="align_r">
|
|
<label for="" class="">고객사</label>
|
|
</td>
|
|
<td>
|
|
<select name="search_oemObjId" id="search_oemObjId">
|
|
<option value="">선택</option>
|
|
<c:forEach var="item" items="${OEM_LIST}" varStatus="status">
|
|
<option value="${item.OBJID}" ${item.OBJID eq param.search_oemObjId?'selected':''}>${item.OEM_NAME}(${item.OEM_CODE})</option>
|
|
</c:forEach>
|
|
</select>
|
|
</td>
|
|
<td class="align_r">
|
|
<label for="" class="">차종</label>
|
|
</td>
|
|
<td>
|
|
<select name="search_carObjId" id="search_carObjId">
|
|
<option value="">선택</option>
|
|
</select>
|
|
</td>
|
|
<td class="align_r">
|
|
<label>제품</label>
|
|
</td>
|
|
<td>
|
|
<select name="search_productObjId" id="search_productObjId">
|
|
<option value="">선택</option>
|
|
<c:forEach var="item" items="${PRODUCT_LIST}" varStatus="status">
|
|
<option value="${item.OBJID}" ${item.OBJID eq param.search_productObjId?'selected':''}>${item.PRODUCT_NAME}</option>
|
|
</c:forEach>
|
|
</select>
|
|
</td>
|
|
<td class="align_r">
|
|
<label for="" class="">Part No</label>
|
|
</td>
|
|
<td>
|
|
<input type="text" name="search_partNo" id="search_partNo" value="${param.search_partNo}" class="text_area"/>
|
|
</td>
|
|
<td class="align_r">
|
|
<label for="" class="">Part Name</label>
|
|
</td>
|
|
<td>
|
|
<input type="text" name="search_partName" id="search_partName" value="${param.search_partName}" class="text_area" style="width:350px;"/>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="contents_page_basic_margin">
|
|
<div class="btn_wrap">
|
|
<div class="plm_btn_wrap">
|
|
<input type="button" value="Excel Download" class="plm_btns" id="btnExcel">
|
|
<input type="button" value="조회" class="plm_btns" id="btnSearch">
|
|
</div>
|
|
</div>
|
|
<div class="ascendig_text"><font size="1.5px" color="red">*PartNo 혹은 PartName 조회가 가능합니다.</font></div>
|
|
<div class="plm_table_wrap">
|
|
<div style="width:100%;">
|
|
<div style="height:600px;">
|
|
<table class="plm_table">
|
|
<colgroup>
|
|
<col width="20px"/>
|
|
<col width="40px"/>
|
|
<col width="150px"/>
|
|
<col width="250px"/>
|
|
<col width="40px"/>
|
|
<col width="40px"/>
|
|
<col width="80px"/>
|
|
<col width="100px"/>
|
|
<col width="50px"/>
|
|
<col width="40px"/>
|
|
<col width="55px"/>
|
|
<col width="250px"/> <!-- 재질 -->
|
|
<col width="80px"/>
|
|
|
|
<col width="50px"/>
|
|
<col width="80px"/>
|
|
<col width="80px"/> <!-- cavity -->
|
|
<col width="60px"/>
|
|
<col width="60px"/>
|
|
<col width="50px"/>
|
|
<col width="160px"/> <!-- 생산구분 -->
|
|
<col width="80px"/>
|
|
<col width="80px"/>
|
|
<col width="80px"/>
|
|
<col width="80px"/>
|
|
<col width="50px"/>
|
|
</colgroup>
|
|
<thead>
|
|
<tr class="plm_thead">
|
|
<td colspan="2">Level</td>
|
|
<td rowspan="2">품번</td>
|
|
<td rowspan="2">품명</td>
|
|
<td rowspan="2">수량</td>
|
|
<td rowspan="2">단위</td>
|
|
<td colspan="4">ECO</td>
|
|
<td rowspan="2">ERP</td>
|
|
<td rowspan="2">재질</td>
|
|
<td rowspan="2">원소재사이즈</td>
|
|
<!-- <td>차종</td>
|
|
<td>제품</td>
|
|
<td>사양</td> -->
|
|
|
|
<td rowspan="2">도금</td>
|
|
<td rowspan="2">도장</td>
|
|
<td rowspan="2">Cavity</td>
|
|
<td colspan="2">중량</td>
|
|
<td rowspan="2">금형구분</td>
|
|
<td rowspan="2">생산구분</td>
|
|
<td colspan="4">업체구분</td>
|
|
<td rowspan="2">비고</td>
|
|
</tr>
|
|
|
|
<tr class="plm_sub_thead">
|
|
<td></td>
|
|
<td>Lv</td>
|
|
<td>No</td>
|
|
<td>Date</td>
|
|
<td>REV</td>
|
|
<td>ECD</td>
|
|
<td>제품</td>
|
|
<td>스푸르</td>
|
|
<td>금형업체</td>
|
|
<td>부자재업체</td>
|
|
<td>도금/도장업체</td>
|
|
<td>원소재업체</td>
|
|
</tr>
|
|
</thead>
|
|
<c:choose>
|
|
<c:when test="${empty LIST}">
|
|
<tr>
|
|
<td colspan="24" align="center">조회된 정보가 없습니다.</td>
|
|
</tr>
|
|
</c:when>
|
|
<c:otherwise>
|
|
<c:forEach var="item" items="${LIST}" varStatus="status">
|
|
<tr class="dataTr" data-LEVEL="${item.LEVEL}" data-REAL_LEVEL="${item.LEV}" data-BOM_REPORT_OBJID="${item.BOM_REPORT_OBJID}" data-TOP_OBJID="${item.ROOT_OBJID}" data-SUB_TOP_OBJID="${item.SUB_ROOT_OBJID}" style="display:none;">
|
|
<td>
|
|
<c:if test="${item.LEVEL eq '1' and item.LEAF eq '0'}">
|
|
<img src="/images/btnPlus.png" width="13px" height="13px" class="btnToggle" style="${item.LEVEL eq '1' and item.LEAF eq '0'?'cursor:pointer;':''}" data-BOM_REPORT_OBJID="${item.BOM_REPORT_OBJID}" data-OBJID="${item.OBJID}" data-REAL_LEVEL="${item.LEV}" data-TOP_OBJID="${item.ROOT_OBJID}" data-SUB_TOP_OBJID="${item.SUB_ROOT_OBJID}">
|
|
</c:if>
|
|
</td>
|
|
<td title="${item.LEV}">${item.LEV}</td>
|
|
<td style="text-align:left !important;" title="${item.PART_NO}">
|
|
<c:forEach var="i" begin="0" end="${item.LEVEL}">
|
|
|
|
</c:forEach>
|
|
<a href="#" class="btnPartDetail" data-PART_OBJID="${item.PART_OBJID}">${item.PART_NO}</a>
|
|
</td>
|
|
<td style="text-align:left !important;" title="${item.PART_NAME}"> ${item.PART_NAME}</td>
|
|
<td title="${item.QTY}">${item.QTY}</td>
|
|
<td>EA</td>
|
|
<td title="${item.EO_NO}">${item.EO_NO}<%-- <a href="#" class="btnEODetail" data-EO_OBJID="${item.EO_OBJID}">${item.EO_NO}</a> --%></td>
|
|
<td title="${item.EO_ISSUE_DATE}">${item.EO_ISSUE_DATE}</td>
|
|
<td title="${item.REV}">${item.REV}</td>
|
|
<td>
|
|
<c:choose>
|
|
<c:when test="${empty item.ECD_OBJID}">N</c:when>
|
|
<c:otherwise>
|
|
<a href="javascript:fnc_downloadFile('${item.ECD_OBJID}')">Y</a>
|
|
</c:otherwise>
|
|
</c:choose>
|
|
</td>
|
|
<td title="${item.RH_PART_NO}">${item.RH_PART_NO}</td>
|
|
<td title="${item.MATERIAL_NAME}">${item.MATERIAL_NAME}</td>
|
|
<td title="${item.THICKNESS}">${item.THICKNESS}</td>
|
|
<td title="${item.PLATED}">${item.PLATED}</td>
|
|
<td title="${item.STAMP}">${item.STAMP}</td>
|
|
<td title="${item.CAVITY}">${item.CAVITY}</td>
|
|
<td title="${item.WEIGHT}">${item.WEIGHT}</td>
|
|
<td title="${item.SPRUE}">${item.SPRUE}</td>
|
|
<%-- <c:choose>
|
|
<c:when test="${item.LEVEL eq '1'}">
|
|
<td title="${item.REGION_NAME}">${item.REGION_NAME}</td>
|
|
</c:when>
|
|
<c:otherwise>
|
|
<td>-</td>
|
|
</c:otherwise>
|
|
</c:choose> --%>
|
|
<td title="${item.M_C_NAME}">${item.M_C_NAME}</td>
|
|
<td title="${item.COMM_NAME}">${item.COMM_NAME}</td>
|
|
<td title="${item.C_M_NAME}">${item.C_M_NAME}</td>
|
|
<td title="${item.C_S_M_NAME}">${item.C_S_M_NAME}</td>
|
|
<td title="${item.C_P_P_NAME}">${item.C_P_P_NAME}</td>
|
|
<td title="${item.C_E_NAME}">${item.C_E_NAME}</td>
|
|
<td title="${item.REMARKS}">${item.REMARKS}</td>
|
|
</tr>
|
|
</c:forEach>
|
|
</c:otherwise>
|
|
</c:choose>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</form>
|
|
</body>
|
|
</html> |