- Add Docker Compose configurations for dev, prod, and standalone environments - Add database initialization scripts (init-db.sh, init-db-docker.sh) - Add enhanced start-docker-linux.sh with DB init support - Add comprehensive database initialization guide - Support for automatic dbexport.pgsql import on first run - Include safety checks for production environment
265 lines
13 KiB
Plaintext
265 lines
13 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 connector = person.getUserId();
|
|
%>
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<title><%=Constants.SYSTEM_NAME%></title>
|
|
<c:set var="now" value="<%=new java.util.Date() %>"/>
|
|
<c:set var="sysYear"><fmt:formatDate value="${now}" pattern="yyyy" /></c:set>
|
|
<c:set var="connector" value="<%=connector %>" />
|
|
<script>
|
|
$(document).ready(function(){
|
|
$("#btnSearch").click(function(){
|
|
fn_search();
|
|
});
|
|
|
|
$("#btnRegist").click(function(){
|
|
var checkedObj = $("input:radio[name='projectObjId']:checked");
|
|
var pageType = "";
|
|
document.hiddenForm.search_oemObjId.value=checkedObj.attr("data-OEM_OBJID");
|
|
document.hiddenForm.search_carObjId.value=checkedObj.attr("data-CAR_OBJID");
|
|
document.hiddenForm.search_productObjId.value=checkedObj.attr("data-PRODUCT_OBJID");
|
|
|
|
if(0 < checkedObj.attr("data-DATA_CNT")){
|
|
pageType = "detail"
|
|
}
|
|
|
|
fn_externalWorkReviewPopUp(pageType);
|
|
});
|
|
|
|
$(".detailExternalInfo").click(function(){
|
|
var checkedObj = $(this);
|
|
document.hiddenForm.search_oemObjId.value=checkedObj.attr("data-OEM_OBJID");
|
|
document.hiddenForm.search_carObjId.value=checkedObj.attr("data-CAR_OBJID");
|
|
document.hiddenForm.search_productObjId.value=checkedObj.attr("data-PRODUCT_OBJID");
|
|
|
|
fn_externalWorkReviewPopUp("detail");
|
|
});
|
|
|
|
$("#search_customer").change(function(){
|
|
$("#search_car_type").empty();
|
|
|
|
if("" != this.value){
|
|
fnc_getCarList("", this.value, "search_car_type","${param.search_car_type}");
|
|
}
|
|
});
|
|
|
|
$("#search_product_group").change(function(){
|
|
$("#search_product").empty();
|
|
|
|
if("" != this.value){
|
|
fnc_getCodeListAppend(this.value,"search_product","${param.search_product}");
|
|
}
|
|
});
|
|
|
|
fnc_getOEMList("search_customer", "${param.search_customer}");
|
|
|
|
if("" != "${param.search_customer}"){
|
|
fnc_getCarList("", "${param.search_customer}", "search_car_type","${param.search_car_type}");
|
|
}
|
|
|
|
fnc_getCodeListAppend("<%=Constants.PRODUCT_GROUP_CODE%>","search_product_group","${param.search_product_group}");
|
|
|
|
if("" != "${param.search_product_group}"){
|
|
fnc_getCodeListAppend("${param.search_product_group}","search_product","${param.search_product}");
|
|
}
|
|
|
|
});
|
|
</script>
|
|
<script>
|
|
|
|
function fn_search(){
|
|
document.form1.action = "/devMng/externalWorkReviewList.do";
|
|
document.form1.submit();
|
|
}
|
|
|
|
function fn_externalWorkReviewPopUp(pageType){
|
|
var hiddenForm = document.hiddenForm;
|
|
var target = "externalWorkReviewPopUp";
|
|
var url = "/devMng/externalWorkReviewPopUp.do";
|
|
window.open("",target,"width=1700, height=800, menubars=no, scrollbars=yes, resizable=yes");
|
|
|
|
if("detail" == pageType){
|
|
url = "/devMng/externalWorkReviewDetailPopUp.do";
|
|
}
|
|
|
|
hiddenForm.action = url;
|
|
hiddenForm.target = target;
|
|
hiddenForm.submit();
|
|
}
|
|
|
|
</script>
|
|
</head>
|
|
<body class="backcolor">
|
|
<form name="hiddenForm"id="hiddenForm" action="" method="post">
|
|
<input type="hidden" name="search_oemObjId" id="search_oemObjId">
|
|
<input type="hidden" name="search_carObjId" id="search_carObjId">
|
|
<input type="hidden" name="search_productObjId" id="search_productObjId">
|
|
<input type="hidden" name="popUpType" id="popUpType">
|
|
</form>
|
|
<form name="form1" id="form1" action="" method="post">
|
|
<div style="min-width:1680px;">
|
|
<div class="content-box">
|
|
<div class="content-box-s">
|
|
<div class="plm_menu_name">
|
|
<h2>
|
|
<span>개발관리_내외작검토</span>
|
|
</h2>
|
|
</div>
|
|
<div id="plmSearchZon">
|
|
<table>
|
|
<tr>
|
|
<td><label for="">고객사</label></td>
|
|
<td>
|
|
<select name="search_customer" id="search_customer" style="width:200px;" autocomplete="off" class="select2"></select>
|
|
</td>
|
|
<td><label for="">차종</label></td>
|
|
<td>
|
|
<select name="search_car_type" id="search_car_type" style="width:200px;" autocomplete="off" class="select2"></select>
|
|
</td>
|
|
<td><label for="">제품군</label></td>
|
|
<td>
|
|
<select name="search_product_group" id="search_product_group" style="width:200px;" autocomplete="off" class="select2"></select>
|
|
</td>
|
|
<td><label for="">제품</label></td>
|
|
<td>
|
|
<select name="search_product" id="search_product" style="width:200px;" autocomplete="off" class="select2"></select>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="contents_page_basic_margin">
|
|
<div class="btn_wrap">
|
|
<div class="plm_btn_wrap">
|
|
<input type="button" value="내외작등록" class="plm_btns" id="btnRegist">
|
|
<input type="button" value="조회" class="plm_btns" id="btnSearch">
|
|
</div>
|
|
</div>
|
|
<div class="ascendig_text">
|
|
<font size="3px">총 ${fn:length(LIST)}건</font>
|
|
</div>
|
|
<div class="plm_table_wrap">
|
|
<div style="overflow-y:scroll;">
|
|
<table class="plm_table">
|
|
<colgroup>
|
|
<col width="2%">
|
|
<col width="6%"> <!-- Project No -->
|
|
<col width="3.5%"> <!-- 지역 -->
|
|
<col width="5%"> <!-- 프로젝트 구분 -->
|
|
<col width="5%"> <!-- 고객사 -->
|
|
<col width="6%"> <!-- 차종 -->
|
|
<col width="8%"> <!-- 제품군 -->
|
|
<col width="*"> <!-- 제품 -->
|
|
<col width="5.5%"> <!-- 양산일 -->
|
|
<col width="5.5%"> <!-- 총생산수량 -->
|
|
<col width="5.5%"> <!-- 연평균 -->
|
|
<col width="8.5%"> <!-- 공장 -->
|
|
<col width="9%"> <!-- 개발담당자 -->
|
|
<col width="2.5%"> <!-- 신규 -->
|
|
<col width="2.5%"> <!-- C/O -->
|
|
<col width="2.5%"> <!-- 내작 -->
|
|
<col width="2.5%"> <!-- 외작 -->
|
|
</colgroup>
|
|
<thead>
|
|
<tr class="plm_thead">
|
|
<td rowspan="2">선택</td>
|
|
<td rowspan="2">Project No</td>
|
|
<td rowspan="2">지역</td>
|
|
<td rowspan="2">프로젝트 구분</td>
|
|
<td rowspan="2">고객사</td>
|
|
<td rowspan="2">차종</td>
|
|
<td colspan="2">수주품목</td>
|
|
<td colspan="4">생산</td>
|
|
<td rowspan="2">개발담당자</td>
|
|
<td colspan="2">금형개발</td>
|
|
<td colspan="2">부품개발</td>
|
|
|
|
</tr>
|
|
<tr class="plm_sub_thead">
|
|
<td>제품군</td>
|
|
<td>제품</td>
|
|
<td>양산일</td>
|
|
<td>총생산수량</td>
|
|
<td>연평균</td>
|
|
<td>공장</td>
|
|
<td>신규</td>
|
|
<td>C/O</td>
|
|
<td>내작</td>
|
|
<td>외작</td>
|
|
</tr>
|
|
</thead>
|
|
</table>
|
|
</div>
|
|
<div>
|
|
<div class="plm_scroll_table" style="height:500px;">
|
|
<table class="plm_table">
|
|
<colgroup>
|
|
<col width="2%">
|
|
<col width="6%"> <!-- Project No -->
|
|
<col width="3.5%"> <!-- 지역 -->
|
|
<col width="5%"> <!-- 프로젝트 구분 -->
|
|
<col width="5%"> <!-- 고객사 -->
|
|
<col width="6%"> <!-- 차종 -->
|
|
<col width="8%"> <!-- 제품군 -->
|
|
<col width="*"> <!-- 제품 -->
|
|
<col width="5.5%"> <!-- 양산일 -->
|
|
<col width="5.5%"> <!-- 총생산수량 -->
|
|
<col width="5.5%"> <!-- 연평균 -->
|
|
<col width="8.5%"> <!-- 공장 -->
|
|
<col width="9%"> <!-- 개발담당자 -->
|
|
<col width="2.5%"> <!-- 신규 -->
|
|
<col width="2.5%"> <!-- C/O -->
|
|
<col width="2.5%"> <!-- 내작 -->
|
|
<col width="2.5%"> <!-- 외작 -->
|
|
</colgroup>
|
|
<tbody>
|
|
<c:choose>
|
|
<c:when test="${!empty LIST}">
|
|
<c:forEach var="item" items="${LIST}" varStatus="status">
|
|
<tr style="background-color:${item.PROJECT_PARTITION_NUM % 2 == 1?'#E8FFFF':''};">
|
|
<td><input type="radio" name="projectObjId" value="${item.OBJID}" data-OEM_OBJID="${item.OEM_OBJID}" data-CAR_OBJID="${item.CAR_OBJID}" data-PRODUCT_OBJID="${item.PROD_CODE}" data-DATA_CNT="${item.DATA_CNT}"></td>
|
|
<td title="${item.ESTIMATE_NO}">${item.PROJECT_PRODUCT_PARTITION_NUM eq 1?item.ESTIMATE_NO:''}</td> <!-- Project No -->
|
|
<td title="${item.FOREIGN_TYPE}">${item.PROJECT_PRODUCT_PARTITION_NUM eq 1?item.FOREIGN_TYPE:''}</td> <!-- 지역 -->
|
|
<td title="${item.PJT_TYPE}">${item.PROJECT_PRODUCT_PARTITION_NUM eq 1?item.PJT_TYPE:''}</td> <!-- 프로젝트 구분 -->
|
|
<td title="${item.OEM_NAME}">${item.PROJECT_PRODUCT_PARTITION_NUM eq 1?item.OEM_NAME:''}</td> <!-- 고객사 -->
|
|
<td title="${item.CAR_NAME}">${item.PROJECT_PRODUCT_PARTITION_NUM eq 1?item.CAR_CODE:''}</td> <!-- 차종 -->
|
|
<td title="${item.PRODUCT_GROUP_NAME}">${item.PRODUCT_GROUP_NAME}</td> <!-- 제품군 -->
|
|
<td title="${item.PROD_NAME}">${item.PROD_NAME}</td> <!-- 제품 -->
|
|
<td title="${item.MILESTONE_DATE}">${item.MILESTONE_DATE}</td> <!-- 양산일 -->
|
|
<td title="<fmt:formatNumber value="${item.TOTAL_PRODUCTION_CNT}"/>"><fmt:formatNumber value="${item.TOTAL_PRODUCTION_CNT}"/></td> <!-- 총생산수량 -->
|
|
<td title="<fmt:formatNumber value="${item.YEARLY_AVG_PRODUCTION_CNT}"/>"><fmt:formatNumber value="${item.YEARLY_AVG_PRODUCTION_CNT}"/></td> <!-- 연평균 -->
|
|
<td title="${item.OEM_FACTORY_NAME}">${item.OEM_FACTORY_NAME}</td> <!-- 공장 -->
|
|
<td title="${item.PM_INFO}">${item.PM_INFO}</td> <!-- 개발담당자 -->
|
|
<td title="${item.MOLD_DEV_NEW_CNT}"><a href="#" class="detailExternalInfo" data-OEM_OBJID="${item.OEM_OBJID}" data-CAR_OBJID="${item.CAR_OBJID}" data-PRODUCT_OBJID="${item.PROD_CODE}">${item.MOLD_DEV_NEW_CNT}</a></td> <!-- 신규 -->
|
|
<td title="${item.MOLD_DEV_CO_CNT}"><a href="#" class="detailExternalInfo" data-OEM_OBJID="${item.OEM_OBJID}" data-CAR_OBJID="${item.CAR_OBJID}" data-PRODUCT_OBJID="${item.PROD_CODE}">${item.MOLD_DEV_CO_CNT}</a></td> <!-- C/O -->
|
|
<td title="${item.PART_DEV_IH_CNT}"><a href="#" class="detailExternalInfo" data-OEM_OBJID="${item.OEM_OBJID}" data-CAR_OBJID="${item.CAR_OBJID}" data-PRODUCT_OBJID="${item.PROD_CODE}">${item.PART_DEV_IH_CNT}</a></td> <!-- 내작 -->
|
|
<td title="${item.PART_DEV_EX_CNT}"><a href="#" class="detailExternalInfo" data-OEM_OBJID="${item.OEM_OBJID}" data-CAR_OBJID="${item.CAR_OBJID}" data-PRODUCT_OBJID="${item.PROD_CODE}">${item.PART_DEV_EX_CNT}</a></td> <!-- 외작 -->
|
|
</tr>
|
|
</c:forEach>
|
|
</c:when>
|
|
<c:otherwise>
|
|
<tr>
|
|
<td colspan="17" align="center">조회된 데이터가 없습니다.</td>
|
|
</tr>
|
|
</c:otherwise>
|
|
</c:choose>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</body>
|
|
</html> |