Files
wace_plm/WebContent/WEB-INF/view/as/asList_CS.jsp
chpark da06c4684c Initial commit: WACE PLM with database initialization features
- 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
2025-08-29 15:46:08 +09:00

330 lines
12 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="connector" value="<%=connector %>" />
<c:set var="now" value="<%=new java.util.Date() %>"/>
<c:set var="sysYear"><fmt:formatDate value="${now}" pattern="yyyy" /></c:set>
<style>
.select2-selection__choice {
font-size: 11px;
background-color: #fff !important;
border: none !important;
margin-right: 0px !important;
}
.select2-selection__choice__remove {
display: contents !important;
}
.select2-container .select2-selection--multiple {
min-height: 20px !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
margin-top: 3.5px !important;
}
.select2-selection__rendered {
height: 18px !important;
}
.select2-container .select2-selection--multiple .select2-selection__rendered {
overflow: auto !important;
}
</style>
<script>
$(function(){
$("._table1").scroll(function () {
$("._table2").scrollLeft($("._table1").scrollLeft());
});
$("._table2").scroll(function () {
$("._table1").scrollTop($("._table2").scrollTop());
$("._table1").scrollLeft($("._table2").scrollLeft());
});
$("#btnSearch").click(function(){
$("#page").val("1");
fn_search();
});
//구조 등록
$("#btnReg").click(function(){
fn_investmentCostPopUp("");
});
//엔터 조회
$("input").keyup(function(e){
if(e.keyCode == 13){
$("#page").val("1");
fn_search();
}
});
$("#btnDelete").click(function(){
fn_delete();
});
$('.select2').select2();
fnc_datepick();
/* fnc_yearPick(); */
$("#SEARCH_OEM_OBJID").change(function(){
if("" != this.value){
fnc_getCarList("", this.value, "SEARCH_CAR_OBJID","");
}
});
$("#SEARCH_PRODUCT_GROUP_OBJID").change(function(){
$("#SEARCH_PRODUCT_OBJID").empty();
if("" != this.value){
fnc_getProductList(this.value, "SEARCH_PRODUCT_OBJID","");
}
});
if("${code_map.cs_category}"!=""){
fnc_getCodeListAppend("${code_map.cs_category}","category_h","${info.CATEGORY_H}");
}
$("#cs_category").change(function(){
if($(this).val()!=""){
fnc_getCodeListAppend($(this).val(),"category_h","");
}
});
var busArry = "${param.project_nos}".split(",");
if(busArry != '' && busArry != null){
for(var i=0;i<busArry.length;i++){
$("#project_no option[value="+busArry[i]+"]").attr("selected",true);
}
}
$("#project_no").select2({multiple: true});
});
function fn_searchLink(product_cd, project_no, warranty,category_h) {
//페이지이동 검색조건 param
var Year = $("#Year").val();
var url = "/as/asMngList.do?Year="+Year+"&product="+product_cd+"&product_cd="+product_cd+"&project_no_txt="+project_no+"&warranty="+warranty+"&category_h="+category_h+"&appr_status=complete";
document.form1.action = url;
document.form1.submit();
}
function fn_search(){
var selectedValues = $("#project_no").val();
$('<input>').attr({
type: 'hidden',
name: 'project_nos',
value: selectedValues
}).appendTo('#form1');
document.form1.action = "/as/asList.do";
document.form1.submit();
}
</script>
</head>
<body style="overflow-x: hidden;">
<form name="form1" id="form1" action="" method="post">
<div style="min-width:1680px;">
<div class="content-box">
<div class="plm_menu_name_gdnsi">
<h2>
<span>CS관리_현황</span>
</h2>
<div class="btnArea">
<input type="button" class="plm_btns" value="조회" id="btnSearch">
</div>
</div>
<div id="plmSearchZon">
<table>
<tr>
<td><label for="Year">년도</label></td>
<td>
<select name="Year" id="Year" class="select2" autocomplete="off">
<option value="">선택</option>
<c:forEach begin="${sysYear-4}" end="${sysYear}" var="req_year">
<option value="${req_year}"${param.Year eq req_year ? 'selected':'' }>${req_year}</option>
</c:forEach>
</select>
</td>
<td><label for="">제품구분</label></td>
<td><select name="product_cd" id="product_cd" class="select2" autocomplete="off"><option value="">선택</option>${code_map.product_cd}</select></td>
<td><label for="project_no">프로젝트번호</label></td>
<td>
<select name="project_no" id="project_no" style="width:300px;" class="select2" autocomplete="off" multiple="multiple">
<option value="">선택</option>
${code_map.project_no}
</select>
</td>
<td><label for="">유/무상</label></td>
<td><select name="warranty" id="warranty" class="select2" autocomplete="off"><option value="">선택</option>${code_map.warranty}</select></td>
<td><label for="">CS구분</label></td>
<td><select name="cs_category" id="cs_category" class="select2" autocomplete="off" ><option value="">선택</option>${code_map.cs_category}</select></td>
<td><label for="">유형</label></td>
<td><select name="category_h" id="category_h" class="select2" def-value="${info.CATEGORY_H}" reqTitle="유형" type="select"><option value="">선택</option></select></td>
</tr>
</table>
</div>
<section class="contents_page_basic_margin">
<div>
<font size="2px" class="total_count_text">총 ${(!empty LIST) ? fn:length(LIST):'0'} 건</font>
</div>
<div class="in_table_scroll_wrap _table1" style="height:79px;width:100%;">
<table class="plm_table">
<colgroup>
<col width="70px"><!-- 제품구분 -->
<col width="100px"><!-- 당사프로젝트 번호 -->
<col width="80px"><!-- 유상 -->
<col width="80px"><!-- 발생비용 -->
<col width="80px"><!-- 무상 -->
<col width="80px"><!-- 발생비용 -->
<c:choose>
<c:when test="${!empty columnList}">
<c:forEach var="header" items="${columnList}" varStatus="status">
<col width="80px">
</c:forEach>
</c:when>
<c:otherwise>
<col width="80px">
</c:otherwise>
</c:choose>
</colgroup>
<thead>
<tr class="plm_thead">
<td rowspan="3">제품구분(기계형식)</td>
<td rowspan="3">프로젝트번호</td>
<td rowspan="3">유상</td>
<td rowspan="3">발생비용</td>
<td rowspan="3">무상</td>
<td rowspan="3">발생비용</td>
<td colspan="${(!empty columnList) ? fn:length(columnList):'0'}">유형</td>
</tr>
<tr class="plm_sub_thead">
<c:choose>
<c:when test="${!empty columnList}">
<c:forEach var="colData" items="${columnList}" varStatus="status">
<c:set var="colName" value="${colData.COL_NAME}" />
<c:set var="headerTitle" value="${colData.NAME}" />
<c:set var="groupHeaderTitle" value="${colData.GROUP_NAME}" />
<c:set var="groupSeq" value="${colData.GROUP_SEQ}" />
<c:set var="groupCnt" value="${colData.GROUP_CNT}" />
<c:if test="${'1' eq groupSeq}">
<td colspan="${(!empty groupCnt) ? groupCnt:'0'}">${groupHeaderTitle}</td>
</c:if>
</c:forEach>
</c:when>
<c:otherwise>
<td></td>
</c:otherwise>
</c:choose>
</tr>
<tr class="plm_sub_thead">
<c:choose>
<c:when test="${!empty columnList}">
<c:forEach var="colData" items="${columnList}" varStatus="status">
<c:set var="colName" value="${colData.COL_NAME}" />
<c:set var="headerTitle" value="${colData.NAME}" />
<td>${headerTitle}</td>
</c:forEach>
</c:when>
<c:otherwise>
<td></td>
</c:otherwise>
</c:choose>
</tr>
</thead>
</table>
</div>
<div class="in_table_scroll_wrap _table2" style="height:600px; width:100%; overflow-y:auto;">
<table class="plm_table">
<colgroup>
<col width="70px"><!-- 제품구분 -->
<col width="100px"><!-- 당사프로젝트 번호 -->
<col width="80px"><!-- 유상 -->
<col width="80px"><!-- 발생비용 -->
<col width="80px"><!-- 무상 -->
<col width="80px"><!-- 발생비용 -->
<c:choose>
<c:when test="${!empty columnList}">
<c:forEach var="colData" items="${columnList}" varStatus="status">
<col width="80px"><!-- ES SPEC -->
</c:forEach>
</c:when>
<c:otherwise>
<col width="80px"><!-- ES SPEC -->
</c:otherwise>
</c:choose>
</colgroup>
<tbody>
<c:choose>
<c:when test="${!empty LIST}">
<c:forEach var="info" items="${LIST}" varStatus="status">
<tr>
<td title="${info.PRODUCT_NAME}">${info.PRODUCT_NAME}(${info.MECHANICAL_TYPE})</td>
<td title="${info.PROJECT_NO}">${info.PROJECT_NO}</td>
<td title="${info.WARRANTY1}"><a href="#" onclick="fn_searchLink('${info.PRODUCT}','${info.PROJECT_NO}','0000157','');">${info.WARRANTY1}</a></td>
<td title="${info.COST1}"><a href="#" onclick="fn_searchLink('${info.PRODUCT}','${info.PROJECT_NO}','0000157','');">${info.COST1}</a></td>
<td title="${info.WARRANTY2}"><a href="#" onclick="fn_searchLink('${info.PRODUCT}','${info.PROJECT_NO}','0000158','');">${info.WARRANTY2}</a></td>
<td title="${info.COST2}"><a href="#" onclick="fn_searchLink('${info.PRODUCT}','${info.PROJECT_NO}','0000158','');">${info.COST2}</a></td>
<c:choose>
<c:when test="${!empty columnList}">
<c:forEach var="colData" items="${columnList}" varStatus="status">
<c:set var="code" value="${colData.CODE_ID}" />
<c:set var="colName" value="${colData.COL_NAME}" />
<c:set var="headerTitle" value="${colData.NAME}" />
<td><a href="#" onclick="fn_searchLink('${info.PRODUCT}','${info.PROJECT_NO}','','${code}');">${info[colName]}</a></td>
</c:forEach>
</c:when>
<c:otherwise>
<td></td>
</c:otherwise>
</c:choose>
</tr>
</c:forEach>
</c:when>
<c:otherwise>
<tr>
<td colspan="33" align="center">조회된 데이터가 없습니다.</td>
</tr>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
</section>
</div>
</div>
</form>
</body>
</html>