Files
wace_plm/WebContent/WEB-INF/view/projectConcept/Materialcost.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

225 lines
8.3 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>
<c:set var="oemObjId" value="${projectMap.oem_objid}" />
<c:set var="carObjId" value="${projectMap.car_objid}" />
<c:set var="factoryObjId" value="${projectMap.OEM_FACTORY}" />
</head>
<script>
$(document).ready(function(){
$("#btn_close").click(function(){
self.close(0);
});
if('${projectMap.CFT_TEAM_CD}'!=''){
optionJobGroup('${projectMap.CFT_TEAM_CD}');
$("#cft_userid").val('${projectMap.CFT_USERID}');
}
//취소
$("#btnCancel").click(function(){
var objId = $(this).attr("data-OBJID");
var params = "?objId="+objId;
document.form1.action ="/project/projectDetailPopUp.do"+params;
document.form1.submit();
});
//SR자료등록 팝업
$(".File1").click(function(){
var objId = $(this).attr("data-OBJID");
Swal.fire(objId);
/* var docType =$(this).attr("data-docType");
var docTypeName = $(this).attr("data-docTypeName");
var params = "?targetObjId="+objId+"&docType="+docType+"&docTypeName="+docTypeName;
window.open("/projectConcept/FileRegistPopup.do"+params, "", "width=800, height=335"); */
});
$("#part_weight").keyup(function(event) {
var scrap_loss = parseFloat($("#scrap_loss").val());
var resin_price = parseFloat($("#resin_price").val());
var part_weight = parseFloat($("#part_weight").val());
$.ajax({
url:"/project/getSrRate.do",
type:"POST",
data:{"part_weight":part_weight},
dataType:"json",
success:function(data){
/* Swal.fire(data.sr_rate); */
$("#sr_rate").val(data.sr_rate);
$("#sr_weight").val(($("#sr_rate").val() * $("#part_weight").val())/100);
var sr_weight = parseFloat($("#sr_weight").val());
if("" != scrap_loss && "" != resin_price && "" != sr_weight){
var sr_price = ((scrap_loss/100)+1) *resin_price*sr_weight/1000
$("#sr_price").val(sr_price);
}
},
error: function(jqxhr, status, error){
}
});
if("" != scrap_loss && "" != resin_price && "" != part_weight){
var part_price = (resin_price*(1+(scrap_loss/100))*part_weight)/1000
$("#part_price").val(part_price);
}
});
$("#scrap_loss").keyup(function(event) {
var scrap_loss = parseFloat($("#scrap_loss").val());
var resin_price = parseFloat($("#resin_price").val());
var part_weight = parseFloat($("#part_weight").val());
var sr_weight = parseFloat($("#sr_weight").val());
if("" != scrap_loss && "" != resin_price && "" != part_weight){
var part_price = (resin_price*(1+(scrap_loss/100))*part_weight)/1000
$("#part_price").val(part_price);
}
if("" != scrap_loss && "" != resin_price && "" != sr_weight){
var sr_price =((scrap_loss/100)+1) *resin_price*sr_weight/1000
$("#sr_price").val(sr_price);
}
});
$("#resin_price").keyup(function(event) {
var scrap_loss = parseFloat($("#scrap_loss").val());
var resin_price = parseFloat($("#resin_price").val());
var part_weight = parseFloat($("#part_weight").val());
var sr_weight = parseFloat($("#sr_weight").val());
if("" != scrap_loss && "" != resin_price && "" != part_weight){
var part_price = (resin_price*(1+(scrap_loss/100))*part_weight)/1000
$("#part_price").val(part_price);
}
if("" != scrap_loss && "" != resin_price && "" != sr_weight){
var sr_price =((scrap_loss/100)+1) *resin_price *sr_weight/1000
$("#sr_price").val(sr_price);
}
});
});
//수주활동 등록정보 수정
function fn_save(){
if(fnc_valitate("form1")){
if(confirm("저장하시겠습니까?")){
saveProcess();
}
}
}
function saveProcess(){
$.ajax({
url:"/project/saveMaterialcost.do",
type:"POST",
data:$("#form1").serialize(),
dataType:"json",
success:function(data){
Swal.fire(data.RESULT.msg);
opener.location.reload();
self.close();
},
error: function(jqxhr, status, error){
}
});
}
</script>
<body>
<form name="form1" id="form1" action="" method="post">
<input type="hidden" name="objId" id="objId" value="${info.objid}">
<input type="hidden" name="target_objid" id="target_objid" value="${param.objId}">
<section class="business_popup_min_width">
<div class="plm_menu_name">
<h2>
<span>재료비 등록</span>
</h2>
</div>
<div class="plm_table_wrap">
<div>
<!-- <div style="width:100%;">
<div style="overflow-y:scroll; height:500px;"> -->
<table class="plm_table">
<colgroup>
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
<col width="10%">
</colgroup>
<thead>
<tr class="plm_thead">
<td>PART NAME</td>
<td>photo</td>
<td>Process</td>
<td>Material</td>
<td>SCRAP/LOSS</td>
<td>Grade</td>
<td>Source</td>
<td>RESIN <br>Price(KRW/KG)</td>
<td>Part <br>Weight( gram )</td>
<td>SR RATE(%)</td>
<td>SR Weight<br>( gram )</td>
<td>제품중량 금액</td>
<td>SR 중량 금액</td>
</tr>
</thead>
<tbody>
<tr>
<td><input type="text" id="part_name" name="part_name" value="${info.PART_NAME}"></td>
<td><input type="text" id="photo" name="photo" value="${info.PHOTO}"></td>
<td><input type="text" id="process" name="process" value="${info.PROCESS}"></td>
<td><input type="text" id="material" name="material" value="${info.MATERIAL}" style="background-color: yellow;"></td>
<td><input type="text" id="scrap_loss" name="scrap_loss" value="${info.SCRAP_LOSS}" style="background-color: yellow;"></td>
<td><input type="text" id="grade" name="grade" value="${info.GRADE}"></td>
<td><input type="text" id="source" name="source" value="${info.SOURCE}"></td>
<td><input type="text" id="resin_price" name="resin_price" value="${info.RESIN_PRICE}" required reqTitle="resin_price" style="background-color: yellow;"></td>
<td><input type="text" id="part_weight" name="part_weight" value="${info.PART_WEIGHT}" required reqTitle="part_weight" style="background-color: yellow;"></td>
<td><input type="text" id="sr_rate" name="sr_rate" value="${info.SR_RATE}" required reqTitle="sr_rate" readonly="readonly" style="background-color: #26f926;"></td>
<td><input type="text" id="sr_weight" name="sr_weight" value="${info.SR_WEIGHT}" required reqTitle="sr_weight" readonly="readonly" style="background-color: #26f926;"></td>
<td><input type="text" id="part_price" name="part_price" value="${info.PART_PRICE}" required reqTitle="제품중량금액" readonly="readonly" style="background-color: #26f926;"></td>
<td><input type="text" id="sr_price" name="sr_price" value="${info.SR_PRICE}" required reqTitle="SR중량금액" readonly="readonly" style="background-color: #26f926;"></td>
</tr>
</tbody>
</table>
</div>
<div class="btn_wrap" style="clear:both;">
<div class="plm_btn_wrap_center">
<input type="button" value="저장" class="plm_btns" onclick="javascript:fn_save();">
<input type="button" value="닫기" class="plm_btns" onclick="javascript:self.close(0);">
</div>
</div>
</div>
</section>
</form>
</body>
</html>