생산관리_M-BOM관리쪽 e-bom팝업완성

This commit is contained in:
Johngreen
2025-10-29 11:58:56 +09:00
parent 91b97be376
commit 8954ae559e
5 changed files with 134 additions and 0 deletions

View File

@@ -2985,6 +2985,14 @@
WHERE OBJID = #{projectMgmtObjid}
</update>
<!-- M-BOM에서 E-BOM 제거 -->
<update id="removeEbomFromProject" parameterType="map">
UPDATE PROJECT_MGMT
SET
PART_OBJID = NULL
WHERE OBJID = #{projectMgmtObjid}
</update>
<!-- E-BOM 정보 조회 -->
<select id="getEbomInfo" parameterType="map" resultType="com.pms.common.UpperKeyMap">
SELECT

View File

@@ -87,6 +87,21 @@ $(document).ready(function(){
// 날짜 선택기 초기화
fnc_datepick("search_fromDate", "search_toDate");
// 초기화 버튼과 Excel Download 버튼 숨기기 (계속 감시)
fnc_hideResetButton();
// Excel Download 버튼 완전히 제거 (반복 확인)
var hideExcelBtn = function() {
$('.excelBtn').remove();
$('.resetBtn').remove();
$('.btnArea input[value="Excel Download"]').remove();
$('.btnArea input[value="초기화"]').remove();
};
// 즉시 실행 및 반복 실행
hideExcelBtn();
setInterval(hideExcelBtn, 100);
// Enter 키로 검색
$("input").keyup(function(e) {
if (e.keyCode == 13) {
@@ -104,6 +119,11 @@ $(document).ready(function(){
fn_showEbomList();
});
// 제거 버튼
$("#btnRemove").click(function(){
fn_removeEbom();
});
// 초기 상태 설정
if(hasCurrentEbom) {
// 할당된 E-BOM이 있으면 상세보기만 표시
@@ -219,6 +239,36 @@ function fn_assignEbom() {
});
}
}
// E-BOM 제거
function fn_removeEbom() {
var projectMgmtObjid = "${param.projectMgmtObjid}";
if(confirm("할당된 E-BOM을 제거하시겠습니까?")) {
$.ajax({
url: "/productionplanning/removeEbomFromMbom.do",
type: "POST",
data: {
projectMgmtObjid: projectMgmtObjid
},
dataType: "json",
success: function(result) {
if(result.success) {
alert("E-BOM이 제거되었습니다.");
if(window.opener && window.opener.fn_search) {
window.opener.fn_search(); // 부모 창 새로고침
}
window.close();
} else {
alert(result.message || "제거에 실패했습니다.");
}
},
error: function(xhr, status, error) {
alert("오류가 발생했습니다: " + error);
}
});
}
}
</script>
</head>
<body>
@@ -232,6 +282,7 @@ function fn_assignEbom() {
<h3>E-BOM ${not empty currentEbom ? '상세 및 변경' : '선택'} - 품번: ${param.partNo} / 품명: ${param.partName}</h3>
<div>
<c:if test="${not empty currentEbom}">
<input type="button" value="E-BOM 제거" class="plm_btns" id="btnRemove" style="background-color: #F44336; color: white;">
<input type="button" value="E-BOM 변경" class="plm_btns" id="btnChange" style="background-color: #FF9800; color: white;">
</c:if>
<input type="button" value="닫기" class="plm_btns" onclick="window.close()">